Cycle through multiple tasks in multiple processes
This commit is contained in:
parent
7a3b4d2d42
commit
d3024211a7
6 changed files with 56 additions and 12 deletions
|
|
@ -77,7 +77,9 @@ class Scheduler {
|
|||
Thread* prev = current_thread_;
|
||||
current_thread_ = current_thread_->next_thread_;
|
||||
prev->next_thread_ = nullptr;
|
||||
Enqueue(prev);
|
||||
if (prev->pid() != 0) {
|
||||
Enqueue(prev);
|
||||
}
|
||||
context_switch(prev->Rsp0Ptr(), current_thread_->Rsp0Ptr());
|
||||
|
||||
asm volatile("sti");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue