Handle IRQs inside the kernel
All checks were successful
Build documentation / build-and-deploy (push) Successful in 2m42s

This commit is contained in:
2026-03-13 20:33:27 +01:00
parent 4760818118
commit 217179c9a0
84 changed files with 14517 additions and 1297 deletions

View File

@@ -1,7 +1,5 @@
include ../make/ufuncs.mk
$(eval $(call add_include,liballoc))
libname := libsystem
include ../make/lib.mk

View File

@@ -1,4 +1,3 @@
#include <liballoc.h>
#include <stdint.h>
#include <system.h>
@@ -7,21 +6,22 @@ extern volatile uint8_t __bss_end[];
extern void app_main (void);
static size_t premain_memset (void* dst, uint8_t b, size_t n) {
uint8_t* dst1 = dst;
size_t i;
for (i = 0; i < n; i++)
dst1[i] = b;
return i;
}
static void clear_bss (void) {
uint8_t* p = (uint8_t*)__bss_start;
while (p < __bss_end) {
*p++ = 0;
}
premain_memset ((void*)__bss_start, 0, (uintptr_t)__bss_end - (uintptr_t)__bss_end);
}
void __premain (void) {
clear_bss ();
liballoc_init ();
app_main ();
liballoc_deinit ();
quit ();
}