From adccdaa096506319be60879767a5a973d012e758 Mon Sep 17 00:00:00 2001 From: Michal Idziorek Date: Wed, 3 Sep 2014 17:20:39 +0200 Subject: Improved Multiprocessing / Multitasking code --- kernel/kernel.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'kernel/kernel.c') diff --git a/kernel/kernel.c b/kernel/kernel.c index 6931ad1..a582563 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -14,16 +14,17 @@ void int_kb_handler(); //void int_floppy_handler(); uint32_t read_eip(); +uint32_t c1,c2,c3; volatile uint8_t proc; +uint32_t cpu_counter[SMP_MAX_PROC]; + void kernel_ap() { - uint32_t cpu_counter=0; proc++; uint8_t p=proc; - - while(1)PutString("%d", p*100,580,0b1111100000000000, (cpu_counter++)); + while(1)cpu_counter[p]++; } // // KERNEL MAIN @@ -44,7 +45,8 @@ void kernel_main(uint32_t initial_stack, int mp) asm volatile("jmp kernel_ap"); } - proc=0; + proc=c1=c2=c3=0; + for(int i=0;i