MikeOS 1.3.0 has been released, with a new Minicom-like serial terminal program, a PCX image viewer, and many updates to the system calls and documentation. MikeOS is designed to teach x86 assembly language and basic OS construction, as detailed in the Handbook.
A 32-bit asm os (yes, those exists) would be a bit more relevant for tutoring assembly these days.
Who wants paragraphs in 2008?
I guess by paragraphs you’re referring to segments. Yes, segments are horrible in real mode, but it doesn’t affect MikeOS because the kernel (and loaded programs) reside in a single 64K segment. So that isn’t a problem.
Regarding 32-bit, please see the FAQ section of the Handbook. In summary: 32-bit is naturally better if you want to write a full, serious, general-purpose OS. But when you’re learning x86 assembly and want to piece together your own OS, 16-bit real mode is much better, because you have access to the BIOS.
This means that you can focus on doing interesting stuff (loading programs, making new system calls) instead of spending the first few months writing tedious keyboard and floppy drivers.
The BIOS will go at some point in the forseeable future. Relying on it existing is not a sound assumption. You would benefit more from writing the drivers and severing the 16-bit restrictions.
It’ll still be around for a few years, and in that time I’m going to keep the OS as simple as possible 🙂
There are 32-bit asm OSes, yes, but since 16-bit is still compatible (and hey, if it works, it works), that’s fine too. To each his/her own.
http://octavio.vega.fernandez.googlepages.com/octaos
http://www.dex4u.com
“OMG, teh operateeng seestem iz naht uzeeng teh SSE3, eet moost be keeled!” 😉
Viva la MikeOS! 🙂
“guess by paragraphs you’re referring to segments.”
No, I mean paragraphs as explained here:
http://userpages.wittenberg.edu/bshelburne/Comp255S/Intel01.htm
Just a funny name for a 16 byte boundary under x86 real mode.