The Orange Linux project contains a lightweight(tutorial) operating system. It includes an environment to test core OS components.
It is designed to work with Bochs on Windows or Linux.
Links and Resources
Entry - 1
There has been some debate about the scope of this project and what the goal is. Here is an email I responded to recently, describing the intent:
Basically, I am flexible on the final goals of the project. It will be an operating system. I am debating on what the end user experience will be like. At present, it is an OS based on some of the working parts of the early linux OS. It only has kernel print, protected mode boot strapping, little hobby OS type things. It compiles on the modern GCC, which is actually difficult and runs in the Bochs emulator. Both are needed for any serious testing.
There are several steps to OS development. First you need an environment. You need a host machine. You need a system that compiles to stuff like raw binaries, etc, generates 16-bit code. I have this. I have the bootsector code, I have the code to get to protected mode. I have some small kernel output. Then there are the drivers. This is where you or somebody else comes in.
I need a floppy driver and a small filesystem, so I can continue with the testing. Making it past the filesystem and the driver is a critical step because it allows you to write tests to your filesystem and then you can analyze the output work with your host environment.
This thing doesn't do much but testing is the key. Hopefully, I can play with OS algorithms, for example scheduling or networking, but right now, a Filesystem is needed.