提交 7abf49d2 创建 作者: kaashoek's avatar kaashoek

remove duplication

don't use the same name for two different pieces of code
上级 801affcd
...@@ -2,10 +2,10 @@ ...@@ -2,10 +2,10 @@
// macros to create x86 segments from assembler // macros to create x86 segments from assembler
// //
#define SEG_NULL \ #define SEG_NULLASM \
.word 0, 0; \ .word 0, 0; \
.byte 0, 0, 0, 0 .byte 0, 0, 0, 0
#define SEG(type,base,lim) \ #define SEG_ASM(type,base,lim) \
.word (((lim) >> 12) & 0xffff), ((base) & 0xffff); \ .word (((lim) >> 12) & 0xffff), ((base) & 0xffff); \
.byte (((base) >> 16) & 0xff), (0x90 | (type)), \ .byte (((base) >> 16) & 0xff), (0x90 | (type)), \
(0xC0 | (((lim) >> 28) & 0xf)), (((base) >> 24) & 0xff) (0xC0 | (((lim) >> 28) & 0xf)), (((base) >> 24) & 0xff)
......
...@@ -87,9 +87,9 @@ spin: jmp spin # ..but in case it does, spin ...@@ -87,9 +87,9 @@ spin: jmp spin # ..but in case it does, spin
.p2align 2 # force 4 byte alignment .p2align 2 # force 4 byte alignment
gdt: gdt:
SEG_NULL # null seg SEG_NULLASM # null seg
SEG(STA_X|STA_R, 0x0, 0xffffffff) # code seg SEG_ASM(STA_X|STA_R, 0x0, 0xffffffff) # code seg
SEG(STA_W, 0x0, 0xffffffff) # data seg SEG_ASM(STA_W, 0x0, 0xffffffff) # data seg
gdtdesc: gdtdesc:
.word 0x17 # sizeof(gdt) - 1 .word 0x17 # sizeof(gdt) - 1
......
...@@ -70,9 +70,9 @@ protcseg: ...@@ -70,9 +70,9 @@ protcseg:
.p2align 2 # force 4 byte alignment .p2align 2 # force 4 byte alignment
gdt: gdt:
SEG_NULL # null seg SEG_NULLASM # null seg
SEG(STA_X|STA_R, 0x0, 0xffffffff) # code seg SEG_ASM(STA_X|STA_R, 0x0, 0xffffffff) # code seg
SEG(STA_W, 0x0, 0xffffffff) # data seg SEG_ASM(STA_W, 0x0, 0xffffffff) # data seg
gdtdesc: gdtdesc:
.word 0x17 # sizeof(gdt) - 1 .word 0x17 # sizeof(gdt) - 1
......
#include "types.h" #include "types.h"
#include "x86.h" #include "x86.h"
#include "traps.h"
#include "defs.h" #include "defs.h"
#include "spinlock.h" #include "spinlock.h"
#include "dev.h" #include "dev.h"
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include "proc.h" #include "proc.h"
#include "defs.h" #include "defs.h"
#include "x86.h" #include "x86.h"
#include "traps.h"
#include "spinlock.h" #include "spinlock.h"
#define IDE_BSY 0x80 #define IDE_BSY 0x80
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
#include "types.h" #include "types.h"
#include "x86.h" #include "x86.h"
#include "traps.h"
#include "defs.h" #include "defs.h"
// I/O Addresses of the two 8259A programmable interrupt controllers // I/O Addresses of the two 8259A programmable interrupt controllers
......
...@@ -27,6 +27,8 @@ ...@@ -27,6 +27,8 @@
#define IRQ_OFFSET 32 // IRQ 0 corresponds to int IRQ_OFFSET #define IRQ_OFFSET 32 // IRQ 0 corresponds to int IRQ_OFFSET
#define IRQ_KBD 1
#define IRQ_IDE 14
#define IRQ_TIMER 18 #define IRQ_TIMER 18
#define IRQ_ERROR 19 #define IRQ_ERROR 19
#define IRQ_SPURIOUS 31 #define IRQ_SPURIOUS 31
...@@ -151,12 +151,3 @@ struct trapframe { ...@@ -151,12 +151,3 @@ struct trapframe {
ushort ss; ushort ss;
ushort padding4; ushort padding4;
}; };
#define MAX_IRQS 16 // Number of IRQs
#define IRQ_OFFSET 32 // IRQ 0 corresponds to int IRQ_OFFSET
#define IRQ_KBD 1
#define IRQ_IDE 14
#define IRQ_ERROR 19
#define IRQ_SPURIOUS 31
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论