
Today we are hosting an interview with Ville Turjanmaa, the creator of the
Menuet Operating System. Menuet is a new, 32-bit OS, it fits to a single floppy (along with 10 or so more applications that come as standard with the OS). It features protection for the memory and code, it has a GUI running at 16,7 million colors, sound at 44.1 khz stereo, easy of use and easy low level API. And the most important and notable feature? The whole OS was written in 100%, pure 32-bit x86 assembly code.
A question: did this guy code the assembly from scratch, or did he write C, generate ASM output (as many compilers will do) and then tweak from there? There is a reason why Linux (and several other OSes) are written predominantly in C with some Assembly: the assembly represents that part of the code that needs optimization. Unfortunately, as processors become increasingly complex, hand-tuned optimization becomes increasingly hard to do. That is, ultimately, a compiler often generates better code that an individual - and this trend will only grow more significant. While this achievement is impressive, it is inherently limited, since the author has chosen one of the least portable ways in which to implement his project.