Setup pre-emption
robert-w-gries opened this issue · comments
- Project 4 - #33
- include/proc.h
- include/queue.h
- system/main.c - A "main program" for testing scheduling.
- system/queue.c - An implementation of the queue data structure.
- system/create.c - A partial function for creating a new process.
- system/ctxsw.S - An incomplete assembly routine for switching process contexts.
- system/ready.c - A function for adding a process to the ready queue.
- system/resched.c - The primary scheduling code, equivalent to yield().
- system/getstk.c - A rudimentary function for dynamically allocating new stacks for new processes.
- Add PIT device driver for context switch - #44
- Implement syscalls
- Create - #33
- Kill
- Yield
- Resume/Suspend
* [ ] Arbitrary number of arguments
* [ ] Enter Ring3
I decided to postpone usermode. There's higher priority items to implement first