Files
mop3/docs/processes_overview.md
kamkow1 360080b44e
All checks were successful
Build documentation / build-and-deploy (push) Successful in 1m18s
Generate docs for libs, update docs build process
2026-02-13 00:23:15 +01:00

849 B

Overview of processes in MOP3

What is a process?

A process represents a piece of executing code, has it's own stack and CPU state. Think of it as a "task". There are no kernel processes, only userspace processes.

A process must be a member of a broader process group or procgroup for short.

Procgroups

A procgroup owns things like memory, kernel resources and such. Processes work within the scope of a procgroup. Once all procgroup's members die, the procgroup is considered unreachable and thus cleaned up.

Scheduling

MOP3 uses a round-robin based scheduler. For now priorities are left unimplemented, ie. every processes has equal priority, but this may change in the future.

A good explaination of round-robin scheduling can be found on the OSDev wiki: the article