MikeOS 1.0 has been released. It is an open source PC operating system, designed as a tutor for basic OS design and x86 assembly language.
"MikeOS is a 16-bit operating system for x86 PCs, written in assembly language, which boots from a floppy disk or CD-ROM. It features a text-based dialog-driven user interface, a command-line, support for FAT12 (DOS) floppies and PC speaker sound. It can load external programs and has over 30 system calls. Basic DOS .COM program support is also included." This version includes a complete
Handbook with a whole section on
writing your own OS.
Member since:
2007-09-17
It would be if MikeOS was meant to be a modern, general-purpose operating system. But it's not; it's a learning tool, and 16-bit real mode assembly is quite simple to grasp.
Once you throw in another language, you have to deal with linkers and stubs and it all gets rather messy. Besides, you have to use a bit of assembly to kick-start a kernel anyway, so you can't really avoid it.
Using 32-bit protected mode is a no-no. You lose (easy) access to the BIOS, and therefore have to write your own keyboard/screen drivers etc from scratch. By sticking with 16-bit real mode, the MikeOS code can focus on interesting stuff like loading programs and system calls -- not trying to faff around with the keyboard controller.