5.3. Your own OS
Control is what attracts many OS developers to assembly,
often is what leads to or stems from assembly hacking.
Note that any system that allows self-development
could be qualified an "OS",
though it can run "on the top" of an underlying system
(much like Linux over Mach or OpenGenera over Unix).
Hence, for easier debugging purpose,
you might like to develop your "OS" first as a process running
on top of Linux (despite the slowness), then use the
Flux OS kit
(which grants use of Linux and BSD drivers in your own OS)
to make it stand-alone.
When your OS is stable, it is time to write your own
hardware drivers if you really love that.
This HOWTO will not cover topics such as
bootloader code,
getting into 32-bit mode,
handling Interrupts,
the basics about Intel protected mode or V86/R86 braindeadness,
defining your object format
and calling conventions.
The main place where to find reliable information about that all,
is source code of existing OSes and bootloaders.
Lots of pointers are on the following webpage:
http://www.tunes.org/Review/OSes.html