os/kernel/kernel.c

55 lines
873 B
C
Raw Normal View History

2024-07-11 08:56:52 +02:00
#include <kernel/tty.h>
#include <kernel/idt.h>
#include <debugging.h>
#include <kernel/elf.h>
2024-08-09 23:16:20 +02:00
#include <kernel/pic.h>
/* Check if the compiler thinks you are targeting the wrong operating system. */
#if defined(__linux__)
#error "You are not using a cross-compiler, you will most certainly run into trouble"
#endif
2024-07-11 08:56:52 +02:00
uint8_t program[] = {
2024-08-09 23:16:20 +02:00
0xba, 0x09, 0x00, 0x80, 0x00, // mov $string, %edx
0xcd, 0x80, // int 0x80
0xeb, 0xfe, // jmp .
'H',
'e',
'l',
'l',
'o',
' ',
'W',
'o',
'r',
'l',
'd',
' ',
'f',
'r',
'o',
'm',
' ',
'r',
'i',
'n',
'g',
' ',
'3',
'!',
0x00,
};
2024-07-11 08:56:52 +02:00
void kernel_main(void)
{
/* Initialize terminal interface */
2024-08-09 23:16:20 +02:00
terminal_initialize();
2024-08-09 23:16:20 +02:00
init_pic();
idt_init();
2024-08-09 23:16:20 +02:00
// run_program(program, sizeof(program));
while (true) {
2024-08-09 23:16:20 +02:00
}
2024-07-11 08:56:52 +02:00
}