There seems to be quite a few people out there who want to design (and create) their own Operating System (OS), and more power to them! The aim of this Frequently Asked Questions (FAQ) is to hopefully provide enough information to point people off in the right direction.

This FAQ does not aim to teach you how to program a multitasking, multithreaded, distributed microkernel OS, nor how to use C, C++ or any other programming language.

This FAQ does concentrate on using the GNU compiler collection GCC, however, and some knowledge of ProtectedMode (for i386 machines) is assumed.

This FAQ is aimed at hobbyist programmers who just want to play around at designing an OS; advanced theory on operating systems design and implementation is ignored. If you know it, good for you, if you don't, don't worry...