マイクロカーネル、プリエンプティブマルチタスクを目指しているOSです。
Revision | 165de6142cfd648a1c77b544a0b722728fad8a5d (tree) |
---|---|
Zeit | 2014-10-18 22:28:43 |
Autor | vosystems <doradora.motochan@gmai...> |
Commiter | vosystems |
Add Task Switch
@@ -37,9 +37,10 @@ GRAPHIC_C=Graphical.c | ||
37 | 37 | SYSTEM_C=System.c |
38 | 38 | MESSAGE_C=Message.c |
39 | 39 | TIMER_C=timer.c |
40 | +TASK_C=task.c | |
40 | 41 | |
41 | 42 | #オブジェクト |
42 | -BOOT_OBJ=${BOOT_S:.S=.o} ${BOOT_C:.c=.o} ${VANE_S:.S=.o} ${KEYBOARD_C:.c=.o} ${STDIO_C:.c=.o} ${GDT_IDT_C:.c=.o} ${INTERRUPT_C:.c=.o} ${STRING_C:.c=.o} ${ASM_INTERRUPT_S:.S=.o} ${SCANCODE_C:.c=.o} ${MEMMAN_C:.c=.o} ${FAT_C:.c=.o} ${GRAPHIC_C:.c=.o} ${SYSTEM_C:.c=.o} ${MESSAGE_C:.c=.o} ${TIMER_C:.c=.o} | |
43 | +BOOT_OBJ=${BOOT_S:.S=.o} ${BOOT_C:.c=.o} ${VANE_S:.S=.o} ${KEYBOARD_C:.c=.o} ${STDIO_C:.c=.o} ${GDT_IDT_C:.c=.o} ${INTERRUPT_C:.c=.o} ${STRING_C:.c=.o} ${ASM_INTERRUPT_S:.S=.o} ${SCANCODE_C:.c=.o} ${MEMMAN_C:.c=.o} ${FAT_C:.c=.o} ${GRAPHIC_C:.c=.o} ${SYSTEM_C:.c=.o} ${MESSAGE_C:.c=.o} ${TIMER_C:.c=.o} ${TASK_C:.c=.o} | |
43 | 44 | |
44 | 45 | kernel: ${BOOT_OBJ} |
45 | 46 | ${LD} ${TARGET} ${BOOT_OBJ} |
@@ -99,23 +99,4 @@ typedef struct | ||
99 | 99 | char fs_type[8]; |
100 | 100 | }bpb_data_t; |
101 | 101 | |
102 | -/* fifo.c *//* | |
103 | -struct TSS32 { | |
104 | - int backlink, esp0, ss0, esp1, ss1, esp2, ss2, cr3; | |
105 | - int eip, eflags, eax, ecx, edx, ebx, esp, ebp, esi, edi; | |
106 | - int es, cs, ss, ds, fs, gs; | |
107 | - int ldtr, iomap; | |
108 | -}; | |
109 | -struct TASK { | |
110 | - int sel, flags; | |
111 | - int level, priority; | |
112 | - struct FIFO32 fifo; | |
113 | - struct TSS32 tss; | |
114 | -}; | |
115 | - | |
116 | -void fifo32_init(struct FIFO32 *fifo, int size, int *buf, struct TASK *task); | |
117 | -int fifo32_put(struct FIFO32 *fifo, int data); | |
118 | -int fifo32_get(struct FIFO32 *fifo); | |
119 | -int fifo32_status(struct FIFO32 *fifo); | |
120 | -*/ | |
121 | 102 | #endif |
@@ -10,9 +10,8 @@ | ||
10 | 10 | |
11 | 11 | #define local static |
12 | 12 | #define DEBUG while(getchar()!='\n') |
13 | -void vane_io_cli(void); | |
14 | -void vane_io_sti(void); | |
15 | 13 | void write_mem_8(int,int); |
14 | +void farjmp(int eip,int cs); | |
16 | 15 | |
17 | 16 | void io_hlt(void); |
18 | 17 | void io_cli(void); |