Files
my-kern/kernel/libk/libk.c

35 lines
632 B
C

//
// Created by rick on 02-02-21.
//
#include <attributes.h>
#include <myke/libk/kprint.h>
#include <myke/libk/libk.h>
bool k_addr_in_kspace(void *addr) {
return addr > kernel_start && addr < kernel_end;
}
void k_wait_for_interrupt() {
__asm__ __volatile__("hlt;");
}
void att_noreturn k_panics(const char *msg) {
// todo this is not printed
kprint_sync(msg);
k_panic();
}
void att_noreturn k_not_implemented() {
k_panics("Not Implemented");
}
void att_noreturn k_panic() {
kprint_sync("PANIC!");
while (1) {
__asm__ __volatile__("cli;"
"hlt;");
}
}