Application Loading
the second part of the third chapter in our series on How to
Write an Operating System
Reason for Being
Up until this point, we have just been working with the operating
system kernel. However, an operating system is only useful in that it
will support a variety of different application programs (often at the
same time).
To that end, the kernel needs to be separated from the application
programs it's running, for both generality and protection.
Application Loading
The operating system kernel needs some way of loading processes into
memory. Usually this requires knowledge of a filesystem and hardware
driver, which is a big hurdle, but luckily, the boot loader for this
project can load additional files. Your kernel merely needs to interpret
the binary format and start executing the code.
ELF Specification
ELF is much more complex than just a header that confirms the format and
tells you where to jump. For more information, get this technical specification.
Application Execution
Still under construction.