These files are released under the GNU Public License, Version 2.

If you just want to look at some of the sources, there are some here.

If you just want to see it run or don't want to bother compiling it, get some floppy and CD images here.

I use a system that has Redhat 7.2 on it to build the system.

BOCHS note: You must build Bochs with configure --enable-cpu-level=6 --enable-4meg-pages or OZONE will not boot. Also, the APIC in Bochs (as of 2.0.2) doesn't work, so the SMP stuff will not work. See details here.

So, anyway:

  1. Download these files and untar them. They make directories ozone/...
    Rev date Jan 3, 2004 All that work for a steekin 3 Meg of stuff.
  2. You will also need these GNU tar files, put them in the same directory as the ./step_by_step.bash file: Yes, both versions of gcc are needed. This is because I use the cpp from 2.7.2 and the rest is from 2.95.3. I had to do this because I couldn't get cpp from 2.95.3 to work and its source is a typical GNU-style cobweb.
  3. cd ozone/ozone/sources
  4. You can edit the list of device drivers in files oz_ldr_dev_inits.c and oz_knl_dev_inits.c. I usually just put what I need in the loader, and put everything I am debugging with in the kernel.
  5. cd ../..
  6. Recompile everything using ./step_by_step.bash
  7. The makefile creates two kernels, oz_kernel_486.oz and oz_kernel_smp_486.oz. If your computer has two (or more) cpu's and an IOAPIC, you can use the smp kernel. Rename it to oz_kernel_486.oz to use it.

The last step of the compilation creates bootable disk images in the ozone/ozone directory.

These are the same images as described on the BINARIES page.

Should you get this far, and boot the system, you can log in. Press control-shift-L and you should get an username prompt. I put 'root' and 'tree' as the username and password. The password file is in ozone/startup/password.dat and you can see the valid ones in there. They aren't encrypted yet for simplicity's sake (someday...). See oz_sys_password.c for details.

When you are logged in, you can edit files (with the edt command), and recompile the kernel with script ozmake.cli ../binaries/oz_kernel_486.oz. If you edit the ../startup/ipstartup.cli file, you can put your network parameters in there (assuming you have an 8139 or tulip ethernet card, see oz_dev_rtl8139_486.c or oz_dev_dectulip.c), run it (with script ../startup/ipstartup.cli) and you should be able to telnet somewhere, or use ip ping to ping stuff. There is also a simple top command. show system -threads will display a list of all threads running (it's output is messy), show system -devices shows the available devices.

Now if you want to make changes to the OS:

  1. cd ozone/ozone/sources
  2. edit source file as desired
  3. ./ozmake
Resultant files go in ozone/ozone/binaries. FTP them to the OZONE system or build a new disk image with your choice of: There is also a ./makehardisk_full that writes a full system to /dev/hda3, but make sure you don't have anything on that partition because it will get wiped!!