Now that you have an idea of where your OS project is heading as a whole, it's time to go into specifics. The first component of your OS which you'll have to design, if you're building it from the ground up, is its kernel, so this article aims at being a quick guide to kernel design, describing the major areas which you'll have to think about and guiding you to places where you can find more information on the subject.

While you might be able to argue that a VM kernel could be more reliable with GC and array bounds etc.... arguing that it is more secure is a losing battle. VMs can and have been broken out of in the past.... I would actually think they would increase the amount of code were an exploit could occur.