Initial priority-based scheduler

- Scheduler now has multiple linked_lists of processes at different
  priorities
- Process structure improvements
- scheduler::tick() and scheduler::schedule() separation
This commit is contained in:
Justin C. Miller
2018-09-11 22:37:00 -07:00
parent 593cda3ee8
commit fafe582802
7 changed files with 136 additions and 23 deletions

View File

@@ -8,8 +8,14 @@ ramdisk_process_loader:
; create_process already pushed a cpu_state onto the stack for us, this
; acts both as the cpu_state parameter to load_process, and the saved
; state for the following iretq
;
; Additional parameters:
; rax - the address of the program image
; rbx - the size of the program image
; rcx - the address of this process' process structure
mov rdi, rax
mov rsi, rbx
mov rdx, rcx
call load_process
pop_all_and_segments