Kernel: Add a Finalizer process to take care of dying processes.

Instead of processes themselves getting scheduled to finish dying,
let's have a Finalizer process that wakes up whenever someone is dying.
This way we can do all kinds of lock-taking in process cleanup without
risking reentering the scheduler.
This commit is contained in:
Andreas Kling 2019-02-06 18:45:21 +01:00
commit 6cba80510e
Notes: sideshowbarker 2024-07-19 15:50:49 +09:00
5 changed files with 59 additions and 23 deletions

View file

@ -7,6 +7,7 @@ struct RegisterDump;
extern Process* current;
extern Process* g_last_fpu_process;
extern Process* g_finalizer;
class Scheduler {
public: