Commit Graph

63 Commits

Author SHA1 Message Date
Drew Galbraith 4e278a4664 Make a KernelObject base class for all Capabilities. 2023-06-06 20:13:07 -07:00
Drew Galbraith d358c1d672 Move process be to RefCounted 2023-06-06 19:12:46 -07:00
Drew Galbraith b0c2a6732b Always create threads in CREATED state.
Simplify the process class to have threads marked as runnable
separately.
2023-06-06 16:27:25 -07:00
Drew Galbraith ef8eb5d993 Add a threading syscall API. 2023-06-06 16:24:03 -07:00
Drew Galbraith a092a57483 Begin defining the process/thread api 2023-06-06 15:01:31 -07:00
Drew Galbraith 69b5cd001f Add a skeleton framework for capabilities.
Use the first capability to spawn a child process.
2023-05-30 23:55:42 -07:00
Drew Galbraith 9e3df0ccd0 Add pid/tid to all log messages 2023-05-30 23:22:29 -07:00
Drew Galbraith 1db93e5b12 Move PML4 initialization into the VirtualMemory class. 2023-05-30 21:39:19 -07:00
Drew Galbraith 3c3341a90f Add a process spawn syscall and use it to start a proc.
Also add a skeleton VirtualMemory manager to be used per process.
2023-05-30 20:55:03 -07:00
Drew Galbraith de49dcc01a Move scheduler to new global class format. 2023-05-29 23:48:32 -07:00
Drew Galbraith a06c9dced4 Add thread and process states.
Add a thread exit call.
2023-05-29 13:51:03 -07:00
Drew Galbraith 8d87791fa2 Differentiate syscall handler by number.
This causes us to panic on the unhandled exit syscall.
2023-05-29 13:06:43 -07:00
Drew Galbraith f86bbe6ea9 Wireframe for syscalls in place 2023-05-18 16:03:09 -07:00