summaryrefslogtreecommitdiff
path: root/kc/core
diff options
context:
space:
mode:
authorAda Christine <adachristine18@gmail.com>2022-02-17 13:54:46 +0000
committerAda Christine <adachristine18@gmail.com>2022-02-17 13:54:46 +0000
commit0d1bf5ee926d74b66b6e891fb65816621c51824a (patch)
treec5ccbd9d65f07e80bc6d14c3107e797d28799428 /kc/core
parent9b63c0000b2e0d9d0a306e56dbc7bc28403e5549 (diff)
force 8253 timer to minimum frequency, log timesource delta at task management start
Diffstat (limited to 'kc/core')
-rw-r--r--kc/core/kc_main.c1
-rw-r--r--kc/core/task.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/kc/core/kc_main.c b/kc/core/kc_main.c
index 1136e0a..de5f3fe 100644
--- a/kc/core/kc_main.c
+++ b/kc/core/kc_main.c
@@ -29,6 +29,7 @@ unsigned long kc_main(struct kc_boot_data *data)
memory_init();
pic8259_init();
pit8253_timer_source.init();
+ pit8253_timer_source.set_frequency(1);
task_init();
return 0;
diff --git a/kc/core/task.c b/kc/core/task.c
index 13263d8..f24850c 100644
--- a/kc/core/task.c
+++ b/kc/core/task.c
@@ -130,6 +130,9 @@ noreturn void task_init(void)
lock_scheduler();
timesource = &pit8253_timer_source;
timesource->start();
+ kprintf(
+ "starting task management, timesource delta %luns\n",
+ timesource->nanoseconds_delta());
char *kernel_rsp0 = vm_alloc(4096);
// TODO: make it so this isn't demand-allocated.
// TODO: decouple the task management code from cpu-dependent task code