How to create a OS
===

I am looking to write a simple OS but I know very little about writing a OS or where to start. I am looking for a place to start for begginners. I know  an operating system is sometimes coded in C and assembaly language, and I know a little of C. All I really want to know is:

 - How to get started (Virtual machines, compilers, how to run side by side with Windows, etc.)
 - Create a basic OS (That only displays a few lines of text)
 - Get input from and output to devices (Keyboard, Mouse, COM Ports, Printers, Flash Drives, etc.)

I would appreciate any help and\or links to get started.

(I am using Windows XP SP3)

**I don't want any premaid OS with source code. I want to learn how to make an OS from scratch.**