Mono Lizzy

From OSDev Wiki
Jump to navigation Jump to search

Lizzy prefers a single big kernel all compiled at once.

Pro's & Con's

Pro:

  • Faster because there's no context switches between drivers

Con:

  • Driver bugs may corrupt data in kernel space and/or cause panics
  • Beginners may not realize they need to organize a monolithic kernel just as carefully as a microkernel if not more so
  • All the drivers get loaded into memory at once; loading drivers at run-time requires an extra system

Going further than Lizzy

  • Add a module system to your kernel so you can load drivers at run-time
  • Add good IPC and a system to allow userspace programs to access certain hardware, giving you a hybrid kernel

Note that neither are necessarily good ideas. Monolithic or microkernel is a matter of choice, not rungs on the ladder to progress. A module system may seem more obviously good, but it depends how many drivers you have.

Lizzy's bookshelf

Lions' Commentary on UNIX 6th Edition, with Source Code and other books on traditional Unix, Linux, and BSD kernel design. Unix v6 or xv6 source code, perhaps the source of some BSD.

Lizzy's opponents position

Microkernel and similar (layered, modular).

See also the famous Tanenbaum–Torvalds debate

People and OSes related to Lizzy

  • Linux
  • BSD
  • Unix v6
  • xv6
  • Linus Torvalds, the man behind Linux

Not Windows; that's a hybrid.