Show HN: A DOS-like hobby OS written in Rust and x86 assembly

by krustowskion 6/19/2025, 1:38 PMwith 60 comments

To try it out, simply build the project yourself from source, or use attached bootable ISO image of the system (in Releases on Github) and run it in QEMU.

https://blog.vxn.dev/rou2exos-rusted-edition

by rollcaton 6/19/2025, 2:47 PM

Memory-safe language. x86_64, with Arm on the roadmap. Networking stack. Boots from a CD and via multiboot. Your hobby project wipes the floor with DOS.

by mcton 6/19/2025, 10:58 PM

I love that the networking stack uses SLIP and slattach(1)!

I was playing with a toy TCP/IP stack, and decided using SLIP over a pty on Linux was a great way to interface with the kernel. Unfortunately it looks like macOS previously shipped with slattach(1) a very long time ago, but no longer does.

I'm curios if other people have used SLIP on macOS to get a dead-simple, cross-platform API to the networking stack?

The alternative would be to use tun/tap on Linux and utun on macOS, but SLIP would be so much nicer.

by Toritori12on 6/20/2025, 1:23 PM

Good job OP, what a missed opportunity to say: "just a hobby, won't be big and professional like Linux" (:

by OhNotAPaperon 6/19/2025, 9:41 PM

Out of curiosity, why x86? Is it the preponderance of resources? The weird instruction format? The complexity of the boot sequence? Are you specifically trying to mimic DOS?

> A support for the ARM architecture (aarch) is coming soon too.

Wow! How do you support a DOS-like OS across multiple architectures when DOS itself is tightly tied to interactions among the program, the system code, and the architecture?

by pndyon 6/20/2025, 8:46 AM

Are you planning adding support for Czech diacritics?

by mixmastamykon 6/19/2025, 8:38 PM

I would have preferred something like this to the current UEFI environment and shell, a FLOSS 64-bit DOS-like. A cool retro boot manager and diagnostic env perhaps.

Could this run from an efi system partition? Seems to support fat12, what about gpt?

Does it poke video hardware like DOS, or have a terminal like output?

by DrNosferatuon 6/19/2025, 3:22 PM

DOS-like but not DOS-compatible, correct?

by ta12653421on 6/20/2025, 3:28 PM

Can it run Crysis??

:-))

by 90s_devon 6/20/2025, 12:54 AM

Is this using a custom VGA driver from scratch in Rust??

by m00dyon 6/20/2025, 6:36 AM

it needs event queue to support async runtimes.

by jmmvon 6/20/2025, 12:34 AM

I don’t understand: what makes this “DOS-like”? Not even the command names match DOS, except for dir and cls, and the architecture and feature set are completely different.