From b99a1b58d63dfefb319eecb564c07a4029e02233 Mon Sep 17 00:00:00 2001 From: Jake Mannens Date: Sun, 8 Jul 2018 01:55:48 +1000 Subject: Moved the 'ticks' variable from kmain.c to timer.s. Added the prototype for userspace_init() to sched.h removing the need to the extern declaration in kmain.c. --- include/kernel/sched.h | 2 ++ kernel/kmain.c | 5 +---- kernel/timer.s | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/include/kernel/sched.h b/include/kernel/sched.h index fa8e036..afced68 100644 --- a/include/kernel/sched.h +++ b/include/kernel/sched.h @@ -23,4 +23,6 @@ struct task_struct { struct task_state state; } __attribute__((packed)); +void userspace_init(void); + #endif diff --git a/kernel/kmain.c b/kernel/kmain.c index 1828ad2..5b2fe91 100644 --- a/kernel/kmain.c +++ b/kernel/kmain.c @@ -1,13 +1,10 @@ #include #include +#include #include #include #include -extern void userspace_init(void); - -uint32_t ticks = 0; - void kmain(void) { con_init(); diff --git a/kernel/timer.s b/kernel/timer.s index 53c81ed..3723782 100644 --- a/kernel/timer.s +++ b/kernel/timer.s @@ -1,8 +1,8 @@ +global ticks global timer_init extern register_isr -; TODO: move this someplace safe (not kmain.c) -extern ticks +ticks: dd 0 tick_handler: push ax -- cgit v1.3