compiled newlib, need to hook up the system calls

This commit is contained in:
2026-06-28 17:58:58 -05:00
parent 43bc0df81a
commit 97357f3170
337 changed files with 47955 additions and 114 deletions

View File

@@ -1,8 +1,8 @@
#include "multiboot.h"
#include "interrupts.h"
#include "elf.h"
#include "gdt.h"
#include "scheduler.h"
#include "common.h"
#include <lib/print.h>
#include <lib/stream.h>
@@ -20,21 +20,22 @@
#include <stddef.h>
#include <stdint.h>
extern void enable_interrupts();
extern void disable_interrupts();
extern uint32_t fetch_cr3();
extern char __kernel_start;
extern char __kernel_end;
void kernel_test_task() {
while (1) {
kprintf("task sleeping...\n");
sleep(10000000);
void first_task() {
kprintf("task started\n");
int i = 5;
while (i--) {
sleep(1000);
kprintf("task awake [%d]\n", i);
}
kprintf("exiting\n");
exit();
}
void kmain(uint32_t magic, multiboot_info* mbi) {
disable_interrupts();
if (!(mbi->flags & (1 << 6))) {
return;
}
@@ -54,9 +55,14 @@ void kmain(uint32_t magic, multiboot_info* mbi) {
kprintf("basic initializations complete\n");
disable_interrupts();
disable_interrupts(); // just paranoid... do it again
init_scheduler();
enable_interrupts();
while(1) yield();
create_task((uint32_t)first_task, fetch_cr3());
while(1) {
sleep(5000);
kprintf("kernel awake\n");
}
}