Commit graph

6 commits

Author SHA1 Message Date
Drew Galbraith
23895b5c6c Spawn Processes using memory primitives rather than and elf loader.
This allows us to remove the temporary syscall for that style of process
spawn.
2023-06-07 00:04:53 -07:00
Drew Galbraith
b06c76e477 Create a MemoryObject class and use it to load programs. 2023-06-06 21:44:10 -07:00
Drew Galbraith
1db93e5b12 Move PML4 initialization into the VirtualMemory class. 2023-05-30 21:39:19 -07:00
Drew Galbraith
b9b45c5e45 Add the ability to copy memory to non resident process.
Use/Test this by loading the user space elf from the kernel process
before it starts rather than as a part of the first thread.

This simplifies thread start a fair bit.
2023-05-30 01:27:47 -07:00
Drew Galbraith
7184f527a0 Jump to user mode.
This instantly creates a page fault as we always map pages with ring 0
permissions.
2023-05-29 13:06:08 -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