BOS

BOS - a small x86 operating system written in Assembly

Download .zip Download .tar.gz View on GitHub

Welcome to BOS Github page.

BOS official webpage with forums can be found at BOS. On this page I'll just provide a quickstart for how to try BOS. I'm basing this on OSX, but should be similar for *nix, and the repository has a .bat script for Windows.

Getting the OS image file

Here I'll provide links to the newest available BOS images for direct testing: 1.44MB floppy image

The image was created on my OSX setup with these commands, using the Homebrew brew install mtools package.

$ mformat -C -f 1440 -v BOS -i ./bos.img ::
$ hdiutil attach ./bos.img
$ cp ./kernel/kernel.sys /Volumes/BOS
$ umount /Volumes/BOS
$ dd if=./boot/BOS_boot.bin of=/dev/disk1 bs=1 count=512
$ hdiutil detach /dev/disk1
$ chmod 0777 ./bos.img

Testing the OS

To test the OS you will need Bochs, Qemu or a physical floppy driver in your desktop computer. Bochs can be downloaded on OSX with homebrew by first getting the X11 xquartz package. After that is installed, run:

$ brew install homebrew/x11/bochs
$ bochs -f ./doc/bochsrc-osx.txt

When the OS has booted it will look something like this BOS screenshot

Commands

Right now there isn't much you can do in BOS. The available commands will be listed by typing help followed by ENTER. As development goes on, I will go into more detail here.

Roadmap and goals

After several years with not much happening, I'm now back and fully committed on getting the next version of BOS released - which will focus mainly on a VFS (Virtual File System) abstraction layer for keeping track of storgage devices and filesystems. Next release will feature the VFS with the updated floppy driver and FAT12 support.

Contribute

All contributions are welcomed. Be sure to visit the forums first, and announce what you might want to help out with, and then you create pull requests on Github.

Support or Contact

Having trouble? Check out the BOS forums at https://bos.asmhackers.net/forum and we’ll help you sort it out.