Next: Conclusions
Up: Solution description
Previous: IA32 low-level functions implementation
To test the -kernel, a small operating system was implemented. It is composed by
- An init server that is loaded by the -kernel at boot time. It loads the rest of the servers and is destructed by the process server during the first scheduling round.
- A process server that controls the creation of tasks and performs scheduling.
- A ram-fs server that implements read-only memory filesystem.
- A console server that acts as a driver for the keyboard and the VGA adaptor, and implements virtual consoles.
- A DMA server that administrates direct memory access channels.
- A floppy disk driver server that uses the DMA server to provide raw access to the floppy disk.
- A filesystem server that implements a simple filesystem using the floppy disk driver server.
The servers use the messaging and memory sharing functions of the -kernel to communicate. The interrupt handlers were implemented as threads using the interrupt-handling support built in the -kernel.
2002-09-17