Orange Linux and Akita Project - Another OS Creation
about download sourceforge home documentation resources contact home

Project Status Update (3/28/2008)

This project will not receive project updates, this project continues under the octaneos project:

The Orange OS Project started with the intent to design a lightweight Operating System. It contains a small kernel designed for those interested in the low-level, practical aspects of building an x86 system. Currently, it is designed to fit on a floppy. The host development environment is designed to work around the Bochs x86 emulator, so that you can easily test changes to the kernel. You will notice that the kernel is not fully functional, but it does compile and you can test modifications that you have made. You don't need to purchase a new machine or format your drive. We are hoping that you can test and run the system without installing any new linux/unix software. If you are working with a modern (GCC 3.3, 3.4, 4.0) linux system, most of the standard GNU tools are already installed. You will need to install Java and Python to compile the kernel.

External Site OSDev Docs - Updated, added OSDevelopment documentation

(Misconceptions) - So far, we have had several comments related to this project. And, let us explain and respond to the most common comment: "I don't like the direction that this project is taking".
We can respond with, "At present, this project doesn't really have a direction." We have a small goal: We would like to add a virtual machine layer, based on a small JavaVM(see JamVM,SableVM). This is to protect your application layer code. Most operating systems have custom layers, process switch handling, etc, programs that do this already. Ideally, we are going to use the virtual machine mechanisms that are present in the current JavaVMs. We are "very" flexible on this approach. It would be nice to get out of "hobby" operating system land, first though. So, the VM layer approach assumes that there is a half-way working kernel in place. Currently, imagine where the "Minix" project is today, now imagine Minix after two weeks in development (early in development). We are at this stage.

Project Goals
  • Create a fully operational operating system that is built around a lightweight, fast Java virtual machine mechanism(JamVM, JikesRVM).
  • Initially, applications will be built around Java and the scripting environment Jython(Python on Java)
  • Create a stable operating system around modern technology and current software development efforts.
  • (Current Design Methodology) Slow and Steady: First milestone includes support for running applications off the filesystem.

Here are similar projects:

NewOS - Operating System
More OSDev Resources
JNode (Java based) Operating System

Why would you want to use this project? There are several known problems associated with the current set of open source operating systems. First, linux/unix style operating systems are too complex. The subject of operating system research and development is complex, but the base kernel layer should not contain millions of lines of code. On top of that, the drivers are too complex. Some VM(Virtual Machine) based operating systems like with the JNode project contain a very thin native, machine dependent layer. Your upper-layer contains the core kernel and is not dependent on the lower-layer.

The number of pure applications far outweigh the number of custom operating systems on the internet. This project introduces some topics in operating system development and deployment.

The Orange Linux project started as a way to bring pre 1.0 linux versions to modern GCC compilers and utilities. Early Linux(1.0) was used because it provided a lightweight GPL based operating system.

This project has since grown into an new operating system that will hopefully support a 'Java Virtual Machine', a Python based scripting environment, and other useful tools.

Linux is copyrighted software(Linus Torvalds)

Download the latest snapshot from the Sourceforge site
You will probably need a linux/unix host system and possibly root access. See the README.txt file located in the root directory of the project.

Sourceforge Project Page

Visit the sourceforge forums for this project. Currently,
this is the primary location for gaining information about the project.

Visit the Project Forum

Testing on Windows

We mentioned earlier, you might need to build/compile this project on a Linux host system. But, you can run it on a system that has the Bochs x86 emulator.

Bochs x86 Emulator Download

Here is an example text based walkthrough on our system. This is what you should see, if you configured everything correctly. If you don't see this output or similar output and a 'orange.img' file does not get created, you might not have the right software installed on the host system to compile this project.

Walkthrough on May 2005

Download the image and launch in the bochs window:
May Version of Operating System Image Logo
Entry - 1
Contributions, Open Source, and Evolution

This project is an inclusionary open source project. We welcome all comments, patches, code commits. Most work will be greatly appreciated. You don't have to be a redhat engineer or come from an Ivy League. We really want contributions regardless of your situtation or skill level. This will promote an inclusionary environment. Of course, we would like to help you anyway we can. We will probably only use code that works, but everything is welcome.

Imagine you are in a forest. In this ecosystem, the trees, bushes, weeds will grow if you want them there or not. Evolution promotes an inclusionary form of growth.

Exlusionary Systems:

  • (Some) Open Source Projects - sometimes you need to be a top-notch Nasa scientist to submit a patch.
  • School - It would be nice if you could show up for school or not. Normally, you are forced to be there and study what they ask you to study. Sometimes your ideas are welcome, sometimes they aren't
  • Work - Most people don't want to work, it would be nice if you could receive money, but you wouldn't have to work if you didn't want to.
Inclusionary Systems:
  • (Some) Open Source Projects
  • Forests
  • Your Family
  • Sourceforge
  • The Internet
  • This Project
Entry - 2
Getting Started and Building/Using the System

There is currently an issue with how one is supposed to get started. If you download this project, it probably means that you are a developer and a user. You can't install Microsoft Office or Half-Life 2 on this system. But, if you wanted to see if you can write a filesystem that handles 32GB files in under a thousand lines of code, this system might allow you to do that.

I can see where this project might set off some flags. "An Operating System?" First, it is a real x86 OS, if you write the image to a floppy from a host system and then put the floppy in the machine, mini GRUB will launch, and the kernel will launch into action. This is where the saga ends.

It is not a real operating system, in the sense that, the output image is so small, you only need a linux(or other) host system to build it and run it. You can almost treat it like an application. You can compile and then run the project in the Bochs x86 Emulator on your host system.

If you are interested; download the current release, see the download page for more instructions.

You will need a pretty up-to-date linux host system. You will use the host system to compile the project. You don't need to use a toolchained GCC or set of binutils. You might need SUPERUSER like priveleges to use the loopdevice filesystem manipulation. However, you will probably need Java, Python and Bochs installed on your system. Most linux systems are setup with Java, but the recent versions from Sun, Jikes, and Blackdown are very easy to install. The external environments(Java,Python)

  • Step One: Download the latest zipped source package(For May, ProjectAkitaOS/
  • Step Two: Unzip and prepare to build the project
  • Step Three: build the project with 'make bochs', type again, 'make bochs' (That is twice)
  • Step Four: Enter the 'toolkit' subdirectory
  • Step Five: You will need to operate as the superuser to build an image, type './Run'
  • Step Six: A file 1.44 MB file called 'orange.img' will be created in the 'bochs' directory
  • Step Seven: Enter this directory and configure a bochs resource file to launch operating system Step Eight: Start hacking on the project [SMILE]
  • Step Nine: If you follow steps 1 - 8 (for better or worse), email me or contact me on ramzaX), I will add your name(or Nick) to the 'Thanks' page. If you edit the application, I will put your name at the top and consider giving you rights to the project.
Entry - 3

C/Java/Python/Lisp/Scheme/Haskell/ Developers Wanted

I am looking for help on this open source project. Actually, not that much help at all. It requires some GCC C. It requires some knowledge of linux or unix, especially make. I have already built part of the application. I have built the tools around it. All I really need is somebody to hack on this one section of code and possibly some advice on cleanups. It might require 200 lines of code tops and if you want to help out more, you can. It may take a total of a week, so you aren't entitled to anything. Even if you download it and you build the application on linux and tell me, you are helping me.

1. I will give anybody that submits one patch, rights to the sourceforge project(assuming the patch works), so you have a sourceforge environment to play with it.

2. It is more fun than a business application.

3. You may learn something

4. No experience required (a little C), I will help you.

What do you have to lose. I am very pessimistic, I am expecting 3 emails, one download, and no code submission. Give me more faith.

Thanks and sorry for the spam like approach.

Berlin Brown berlin.brown [ at ]
Freenode is the best place to discuss development
(contact ramza), visit #java or #osdev

Entry - 4
Entry - 5
Willy Wonka and 'The Matrix' Title are a product of Warner Bros Studios.
Copyright (c) 2005 - SpiritCompany and Berlin Brown. All Rights Reserved.
SpiritCompany is located in Atlanta, Ga
(lasted edited: Sun Jun 12 22:54:52 EDT 2005)