The Haiku Kernel: A Modular, Pervasively Multithreaded Design
Haiku's kernel wasn't built as a Unix variant with threading bolted on — it was designed around threads as the fundamental unit of execution from the very beginning.
tag
6 posts
Haiku's kernel wasn't built as a Unix variant with threading bolted on — it was designed around threads as the fundamental unit of execution from the very beginning.
Haiku's native C++ API isn't one monolithic library — it's a set of separately-scoped 'Kits,' each owning one concern, that together define what writing software for Haiku actually looks like.
Haiku applications don't poll for events in a manual loop — they define Handlers, and let a Looper thread dispatch messages to the right one automatically.
Haiku runs on POSIX-like conventions and supports plenty of Unix software, but underneath that compatibility layer, it isn't descended from Unix at all — its kernel, API, and core assumptions come from somewhere else entirely.
Both let you run software that wasn't written for the machine in front of you — but one translates between two different instruction sets, and the other doesn't translate at all.
RetroArch supports dozens of systems without reimplementing shaders, netplay, or rewind for each one — because the emulator logic and everything around it are deliberately different programs.