Process management

Hello I want to know how the system manage the processes, I tried to search on the multiples guides that I found in the main page but couldnt find the answer that I wanted, for example I want to know if the system use a First Come First Served method or any other.

The current scheduler in Haiku was developped by Pawel Dziepak during a paid contract with Haiku. He also wrote several blog posts about it, with many details about the internals:

In short, there isn’t a single universal strategy such as “first come first served”. The decision depends on thread priorities (some priorities are called “real time” in the BeOS API and have different constraints than lower ones). The scheduler also takes care of some power management and decides wether to power on or off CPU cores. It tries to make each thread “stick” to a specific core, because this helps with cache affinity.

1 Like