Shipwreck OS

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
Post Reply
slackbeard
Posts: 1
Joined: Sat Oct 27, 2018 12:56 pm

Shipwreck OS

Post by slackbeard »

Hey there,
Shipwreck OS is a project I started around 3 years ago and just finished up and pushed to github. It's very minimal for an OS but served me greatly as a personal exercise in design and programming. I also learned a lot from this forum and even untangled some of my issues just by reading other people's discussions here, so thanks a bunch to everyone here!

It's an OS for x86 PCs written in C++11, it has a simple GUI and minimal ELF support that it uses to load its shell program - which only supports a "help" command as a proof-of-concept.

It uses TAR as its filesystem so the disk image is literally a tar file prepended with a boot sector. Its API includes some file IO, threading, locks and GUI functions. The GUI is controlled by syncing a window hierarchy between userland and the kernel. I wasn't aiming for security so there are places in the code where pointers are blindly trusted by the kernel and array bounds might be unchecked.

For development I used clang, cmake and nasm on Ubuntu. I tried building the project on OSX with the same tool chain but it required too much tweaking so I wrote a Dockerfile that closely resembles my dev environment - theoretically anyone with Docker can build the project now.

I also included a pre-built virtual disk (as a .vmdk file) in a separate branch in case anyone wants to see it without building it, but keep in mind there's not much to it.

During development I ran it on VirtualBox, never on real hardware. I've used VMware and Bochs for past projects so I wouldn't be surprised if it works on those.

Anyway, I got the project to a state where I feel good wrapping it up and moving on to other stuff - it was a fun educational project and I reached my main goals with it. I won't be actively working on it for now but if anyone wants to read it or add to it, go right ahead.
User avatar
TheCool1Kevin
Posts: 24
Joined: Fri Oct 14, 2016 7:37 pm
Location: Canada
Contact:

Re: Shipwreck OS

Post by TheCool1Kevin »

It's quite cute ^-^
LiquiDOS, my weird hobbyist OS.
"Strive for progress, not perfection" - Anonymous
Post Reply