Show HN: MyraOS – My 32-bit operating system in C and ASM (Hack Club project)

2025-10-2620:4324755github.com

A x86 Unix-like OS made entirely from scratch. Contribute to dvir-biton/MyraOS development by creating an account on GitHub.

A x86 Unix-like OS made entirely from scratch.

Features

  • Protected mode (GDT/IDT, ISRs/IRQs)
  • Paging and virtual memory
  • Memory management
  • Heap and dynamic memory
  • User-mode (ring 3) and kernel mode (ring 0)
  • Processes and scheduling
  • Drivers (PIT, RTC, Keyboard, Mouse, Framebuffer, PATA)
  • ext2 filesystem
  • UI compositor with window widgets, labels, icons, buttons, and even a custom-made font
  • ELF loader, which gives you the ability to run real apps

All these features let you run real games, just like Doom, giving the preloaded Doom port in MyraOS ready to be played!
So, this isn't just a toy OS or a look-alike, it's a real OS that can run on real devices

  1. Download the latest release from the release tab in GitHub
  2. Download QEMU - an open-source machine emulator and virtualizer

After you get the latest release, you can run this on your platform:

Normal

qemu-system-i386 -cdrom MyraOS.iso -drive file=fs.img,format=raw,if=ide,index=0 -m 1024

Fullscreen (if you are like me and want it to look real)

qemu-system-i386 -cdrom MyraOS.iso -drive file=fs.img,format=raw,if=ide,index=0 -m 1024 -full-screen

Normal

qemu-system-i386 -cdrom MyraOS.iso -drive file=fs.img,format=raw,if=ide,index=0 -m 1024

Fullscreen

qemu-system-i386 -cdrom MyraOS.iso -drive file=fs.img,format=raw,if=ide,index=0 -m 1024 -display gtk,zoom-to-fit=on -full-screen

Here, Linux/macOS or even WSL are better; use it as a last resort:
Normal

qemu-system-i386 -cdrom MyraOS.iso -drive file=fs.img,format=raw,if=ide,index=0 -m 1024

Fullscreen

qemu-system-i386 -cdrom MyraOS.iso -drive file=fs.img,format=raw,if=ide,index=0 -m 1024 -display gtk,zoom-to-fit=on -full-screen

I really hope you like it, as I spent a lot of time on it, and I'd really appreciate any feedback you have for me.
If you have anything, from feature requests to feedback, or even if you want to talk, email me here: dvirm.biton@gmail.com.


Read the original article

Comments

  • By Imustaskforhelp 2025-10-2622:081 reply

    Hey, what an amazing project, bravo!

    i would suggest to providing an iso or co-operating / looking into copy.sh which provides a large number of iso files which you can boot/play around with in the browser itself!

    I was just today tinkering around with the ibm iso (exploring ibm) and others too, its always fun seeing new operating system!

    I would love if you could, as I said, co-operate with copy.sh/v86 team to also include your iso and also provide iso files in github releases if possible

    Source: https://copy.sh/v86/ Their github page : https://github.com/copy/v86

    • By dvirbt 2025-10-274:30

      Thanks! I’ll look into it

  • By whitehexagon 2025-10-278:491 reply

    Well done to you both. I'm only a 1/4 way down your useful TODO list after 12 months. I got bogged down in setting up IRQ vector tables on armv8 and took a huge detour to refresh my assembly skills. So I feel some of the journey you have been on. It takes a lot of patience, but can be very rewarding. Congrats!

    • By dvirbt 2025-10-278:56

      Thank you and good luck!

  • By scuff3d 2025-10-2623:281 reply

    Damn man, this is awesome. This should land you a job damn near anywhere.

    • By dvirbt 2025-10-274:28

      I really hope so! :)

HackerNews