Drew Galbraith
|
496dfeaef9
|
Update the timer to a more reasonable time slice of 50ms
|
2023-05-29 22:17:56 -07:00 |
Drew Galbraith
|
629dca278b
|
Enable the PIC and add a timer.
This causes a GP fault after the timer runs for some time.
|
2023-05-29 21:52:01 -07:00 |
Drew Galbraith
|
aefb4f082b
|
Add a kernel ELF module and load it in a new process.
Don't yet jump to userspace.
|
2023-05-29 00:32:54 -07:00 |
Drew Galbraith
|
f86bbe6ea9
|
Wireframe for syscalls in place
|
2023-05-18 16:03:09 -07:00 |
Drew Galbraith
|
d3024211a7
|
Cycle through multiple tasks in multiple processes
|
2023-05-18 13:56:54 -07:00 |
Drew Galbraith
|
0d275c72a1
|
Have processes enqueue their own threads
|
2023-05-18 13:28:22 -07:00 |
Drew Galbraith
|
cb41953354
|
Scheduler with working threads.
Currently only one process but it is a start.
|
2023-05-18 13:24:02 -07:00 |
Drew Galbraith
|
960cbf9519
|
Add Scheduler wireframe.
Right now does nothing but has containing classes for process and thread
information.
|
2023-05-18 12:43:53 -07:00 |
Drew Galbraith
|
fa2bb4df89
|
Added a PhysicalMemoryManager class.
Stores a linkedlist of free blocks of PhysicalMemory.
|
2023-05-18 11:34:45 -07:00 |
Drew Galbraith
|
2d719d0443
|
Add a bootstrap physical memory manager.
This will allow the real physical memory manager to use allocations.
|
2023-05-18 11:00:05 -07:00 |
Drew Galbraith
|
0b7e667368
|
Add a basic kernel heap object.
Currently allocation always fails because we don't
have a way to allocate a physical page.
|
2023-05-18 10:59:39 -07:00 |
Drew Galbraith
|
45b5817a36
|
Recursively map the PML4
|
2023-05-18 02:00:01 -07:00 |
Drew Galbraith
|
b3f8cb9003
|
Dump the memory map from limine.
Also adds the ability to print formatted messages.
|
2023-05-18 01:16:53 -07:00 |
Drew Galbraith
|
9fc1aa15ef
|
Add an interrupt descriptor table.
Set up a very basic handler for divide by zero and
general protection faults.
|
2023-05-17 22:54:37 -07:00 |
Drew Galbraith
|
03fe4d8c2e
|
Load our own GDT.
Replace the GDT from limine with our own.
|
2023-05-17 21:41:08 -07:00 |
Drew Galbraith
|
872e6f3392
|
Add a debug output utility.
|
2023-05-17 20:42:59 -07:00 |
Drew Galbraith
|
91b52f1872
|
Move IO Port Function to a separate file
|
2023-05-17 20:26:51 -07:00 |
Drew Galbraith
|
e9705f7579
|
Barebones Kernel Commit
Uses limine to boot off of a disk.
Outputs a character to the debug port.
|
2023-05-17 20:20:53 -07:00 |