Bananymous
|
284a012509
|
Kernel: Add framebuffer information to kernel image
|
2023-12-09 17:33:58 +02:00 |
Bananymous
|
84040e64b8
|
Kernel: Don't use multiboot2 explicitly. Parse it to common structure
This allows support of multiple different bootloaders
|
2023-11-17 18:54:59 +02:00 |
Bananymous
|
c17cdb39d5
|
Kernel: Map multiboot2 memory in PageTable initialization
It cannot be assumed that multiboot data lies between kernel_end
and 2 GiB mark, so I properly allocate virtual address space for it.
|
2023-10-17 01:15:08 +03:00 |
Bananymous
|
69a39b7077
|
Kernel: Start using multiboot2 instead of multiboot
This allows better compatibility with (U)EFI and gives RSDP location
instead of me having to scan ram to find it.
|
2023-10-17 01:06:24 +03:00 |
Bananymous
|
921d95d18f
|
All: Clear lines with only whitspace in them
|
2023-09-10 00:31:42 +03:00 |
Bananymous
|
f75adab9d8
|
Kernel: Move structures in boot.S to .data section
|
2023-08-11 00:26:12 +03:00 |
Bananymous
|
68691faca1
|
Kernel: boot.S is back to 2 MiB pages
bochs doesn't seem to support 1 GiB pages
|
2023-06-03 18:53:36 +03:00 |
Bananymous
|
dcb23f686f
|
Kernel: boot.S maps GiB as single pdpte
|
2023-05-31 00:51:15 +03:00 |
Bananymous
|
81cf389754
|
Kernel: Booting with higher half kernel gets to Heap initialization
|
2023-05-30 22:21:12 +03:00 |
Bananymous
|
0907965dc5
|
Kernel: start work on higher half kernel
|
2023-05-30 08:00:17 +03:00 |
Bananymous
|
210d90ec79
|
Kernel: We now identity map full GiB in boot.S
The paging structure is pre-built so no unnecessary calculations are done
|
2023-05-30 00:08:52 +03:00 |
Bananymous
|
6a3b3213cf
|
Kernel: Kmalloc now has its memory statically allocated
We don't use the memory map given by bootloader since this automatically
maps the memory to a available space.
|
2023-04-18 10:18:15 +03:00 |
Bananymous
|
df8811fc1a
|
Kernel: Remove "a" from .section .text
|
2023-03-07 01:57:09 +02:00 |
Bananymous
|
06db890d49
|
Kernel: Add ubsan
My brain has been melting since I'm getting very random bugs.
I hope I can debug them better with ubsan :)
|
2023-03-06 23:38:05 +02:00 |
Bananymous
|
7fcbb869e1
|
Kernel: Initialize GDT in kernel code
We dont use the boot GDT only while booting
|
2023-03-01 21:21:56 +02:00 |
Bananymous
|
7f8cad83b1
|
Kernel: x86_64 boot script now makes GDT with null, kernel code and data
|
2023-03-01 21:21:56 +02:00 |
Bananymous
|
cb3b62d665
|
Kernel: Only allocate single GDT entry during boot.S
When we need more, we should probably initialize rest of them
in cpp code
|
2023-01-31 18:43:09 +02:00 |
Bananymous
|
6418d7cfc3
|
Kernel: Add Other GDT entries to x86_64
|
2023-01-26 12:53:04 +02:00 |
Bananymous
|
b315fdc27f
|
Kernel: Finally managed to get 64-bit working
I had weird problems with interrupts but everything should work now
|
2023-01-25 19:19:28 +02:00 |