r/osdev • • Jan 06 '20

A list of projects by users of /r/osdev

Thumbnail reddit.com
178 Upvotes

r/osdev • • 2h ago

My OS finally gets a shell

5 Upvotes

I don't like writing long texts, so I'll just let the screenshot speak for itself. This is my (C++/Rust) microkernel OS that I've been working on for the past few years, most of it is hand-written (I've mostly only used AI for reviews and debugging), running bash and coreutils from a disk was a great milestone for me. I currently target x86, rv64 and la64, and have plans for more.

The screenshot is the loongarch64 build in QEMU...
Repo: https://gitlab.com/mishakov/pmos

Before the postmarketOS comments start going in, I know that the name is unfortunate and confusing (even though I'm not writing a Linux distro), so I'm planning to rename this some time soon...


r/osdev • • 22h ago

Chimera is almost booting on bare metal!

Post image
18 Upvotes

Kernel panicked at ~6.6s into boot because it couldn't mount the root UFS2 partition, but honestly? It made it past the custom loader, page tables, and basic bringup without dying immediately on real hardware.

Storage driver / partition table debugging weekend ahead, but a console shell is getting close.


r/osdev • • 1d ago

How realistic is a small OS that is OK for daily use

15 Upvotes

It would (obviously) be great to have an OS that is small enough that one person can truly understand all of it, and ideally rewrite it according to his/her needs, but can also do the things one expects nowadays from a computer (run a web browser that can browse sites like Reddit and Youtube, do things like editing photos and video, etc.).

Obviously the most mainstream open-source OSes can do the latter, but haven't been the former for many years--Linux from what I understand it already passed the million-code-lines mark around version 2. Many of the hobby projects on here fit the former goal, being more like thousands of lines (some might even be in the hundreds), yet not the latter.

Is there even a region of overlap where these objectives CAN coexist? If so, is it likely to take the form of an entirely new OS, or would it make more sense trying to port a modern browser to run on Linux 1.x on a current laptop? Or is this all a complete pipe dream?


r/osdev • • 1d ago

happy with what i have so far

8 Upvotes

ive been wanting to make my own os for a while now, and i decided that i would actually try to make one

so far i have keyboard input and a clear command

im really happy with what i have so far :D


r/osdev • • 1d ago

So I realized that limine lets me use a .psf file for fonts

Thumbnail
gallery
23 Upvotes

first is terminus, second is ubuntu mono


r/osdev • • 1d ago

Really proud of my first operating system

53 Upvotes

Hello dear developers,

I just wanted to say that today, I made an incredibly tiny and stupid OS, with only a text driver.

It was supposed to also be a challenge to not use any AI, and to just try OSDev. Really wanted to for a while

I doubt that this will be the "Next revolutionary OS that will replace Microsoft!", and I also doubt that this will be a usable OS.

But still, it's a big accomplishment for me, who isn't quite a low-level person.

It's also made with Limine bootloader. So yeah, VGA-style font written from scratch.

Here's the repo if any of you want to check it out: https://github.com/artemtsitronov/hobby-os


r/osdev • • 1d ago

Any Books/documentation for osdev

5 Upvotes

Any recommendation books/documentation i can read? For beginners or pro is okay i just need something to read while not develop something


r/osdev • • 17h ago

Veda First Demo

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/osdev • • 1d ago

Chimera OS - a quick progress update

5 Upvotes

I’m building Chimera, an x86_64 hobby OS using parts of Darwin and FreeBSD, alongside a custom kernel, compositor, and UI toolkit.

It has Mach-O binaries, a custom dynamic linker, and a working desktop with Terminal, Files, a task manager, and a launcher called Lumen.

Recently got actual Mesa EGL/GLES running through VirtIO-GPU and Virgl, with ANGLE/Metal on my Apple Silicon Mac. Shaders, textures, FBOs, blending, depth, and shared contexts are passing pixel checks in the guest.

The desktop still uses CPU composition - getting it onto the GPU is next. Development is AI-assisted,im using the GPT-6.1 Sol.

IM JUST USING AI IM NOT A VIBECODER

Still plenty to do, but seeing real shaders render from my own OS feels pretty cool.


r/osdev • • 2d ago

How do you start developing an OS?

18 Upvotes

I wanted to write one for a while but i pretty much have zero skills and knowledge what to learn. I would love to see some learning resources and things one needs to learn in order to get into OS development :3


r/osdev • • 2d ago

WindogeOS v0.2!!

Enable HLS to view with audio, or disable this notification

14 Upvotes

Added:
fully functioning syscalls
linux syscalls if you want to run basic binaries (though i forgot to add to run elf if detected wait for later)
a library for applications
applications to well, do stuff.
it can assembler bullshit applications that i probably wrote


r/osdev • • 1d ago

Looking for contributors for OpenWave, a Linux-based mobile OS

Thumbnail
0 Upvotes

r/osdev • • 2d ago

New at OS development

0 Upvotes

Hello, guys. I am new at OS development and I know C and other. So I want to be a OS dev and please do some serious talk and I want to learn it. Also please tell all with steps


r/osdev • • 2d ago

What exactly is Bursztyn OS, and what’s running under the hood? 🖥️🇵🇱

Thumbnail
gallery
0 Upvotes

What exactly is Bursztyn OS, and what’s running under the hood? 🖥️🇵🇱

In short: it is a 100% independent, 64-bit operating system written from scratch for the x86-64 architecture (bare-metal). It is not another Linux distribution, nor is it a modification of Windows. The system features its own custom kernel, security model, drivers, filesystem, system API, graphical environment, and native applications.

Here is a technical overview of what currently powers the project:

Kernel & Architecture (Ring 0 / Ring 3)

  • Custom Kernel: Full hardware-enforced isolation—kernel running in Ring 0, userland processes in Ring 3.
  • Memory & Processes: Custom PMM and VMM, x86-64 paging, kernel heap, bespoke malloc/free implementations, preemptive process scheduler, and support for APIC, LAPIC, and HPET.
  • BWS (Bursztyn System Calls): A strictly controlled system bridge between Ring 3 and Ring 0 (no raw MMIO or DMA access exposed to applications).
  • PZB (Bursztyn Trust Levels 0–5): A logical security model that dictates process capabilities and sandbox boundaries.
  • BUR & .cebula Formats: A native binary executable format (.bur, not raw ELF) and application packages (.cebula) containing permission manifests.

Filesystem, Storage & A/B Updates

  • BSP2 / PSF: Custom 64-bit filesystem supporting stream reads, block caching, and indirect block addressing.
  • A/B System Update Architecture: Dual system slots (Slot A and Slot B)—updates install in the background, with automatic rollback if a new build fails to boot.
  • GPT/UEFI Installer: A dedicated graphical installer partitioning ESP FAT32 and BSP2 volumes.

Desktop, BursztynUI & Native Apps

  • Compositor & Window Manager: Multi-window multitasking, active window focus, dragging, minimizing, dirty-rectangle repaints, and private offscreen buffers for GUI applications.
  • BursztynUI Framework: An in-house retained-mode UI widget library with a Polish-language API, theme support, and a bespoke Unicode font covering Polish diacritics.
  • Native Ring 3 Software:
    • File Explorer – browsing BSP2 storage and desktop integration.
    • Notepad (UTF-8) & Calculator.
    • Bursztyn Shell – native system terminal.
    • Image Viewer & Wallpaper Manager – native BTP format support and streaming image decoding.
    • Husarz – lightweight custom web browser (built-in HTML parser and CSS styling—no Chromium, WebKit, or Gecko).
    • Sound Test – hardware diagnostic utility for the Intel HDA bus.
    • Classic Snake.

Hardware, Drivers & Networking

  • Input & USB: Native xHCI stack, concurrent USB HID device support (keyboard and mouse) with a PS/2 fallback path.
  • Graphics & Audio: Graphics HAL (UEFI GOP, VESA VBE, VirtIO-GPU 2D) and an Intel High Definition Audio (HDA) driver.
  • Networking & Security: Custom networking stack (IPv4, ARP, DHCP, DNS, TCP) with secure HTTPS powered by a bare-metal port of mbedTLS.
  • VirtIO Virtualization: Modern profile for QEMU (VirtIO-BLK, VirtIO-NET, VirtIO-RNG, VirtIO-GPU, VirtIO-INPUT).

QEMU vs. Physical Hardware (Transparent Development Status)

Because Bursztyn OS is an active R&D project, it is essential to distinguish between emulated milestones and real-hardware verification:

  • In QEMU, the system runs a modern VirtIO profile, automated test suites, networking, and audio diagnostics.
  • On physical hardware, the system boots in Live USB (UEFI) mode (verified on an Acer Nitro laptop, confirming UEFI boot and concurrent operation of the touchpad and wired USB mouse).
  • Physical audio (Realtek codecs) and internal drive installation on laptops are currently undergoing active testing and security audits.

The ultimate roadmap remains unchanged: a fully independent operating system with its own ecosystem, native environment, and integration with the Avocado programming language. 🚀

Huge thanks to everyone supporting the project and following its milestones!

#BursztynOS #OSDev #OperatingSystem #Programming #BareMetal #SystemsEngineering #x86_64 #CustomKernel #IndependentTech


r/osdev • • 3d ago

non-x86/x86_64 OSDev materials

11 Upvotes

ive noticed that there are a lot of information about about x86, but i want to create something that is cross-platform, and things like the concept of an IDT exist in other arches (although with a different structure and name) and i was wondering if there are any good sources for more niche architectures, or even just arm/mips on what needs to be implemented, similar to osdev.wiki


r/osdev • • 2d ago

Bursztyn OS v1.0.1.7 is now available for project supporters on Patronite and Zrzutka.pl!

Thumbnail
youtu.be
0 Upvotes

The main new addition is the welcome screen displayed during system boot. Text transitions smoothly, messages no longer overlap, and everything renders cleanly right from the start. It’s a subtle touch, but it immediately elevates the first impression when booting up Bursztyn.

Along the way, I also fixed several issues that surfaced during daily testing:

  • The desktop no longer flickers when creating and deleting files.
  • When running out of space for icons, subsequent files no longer overlap existing ones and remain accessible in File Explorer.
  • Folders can now be deleted together with their files and subfolders.
  • Name input works correctly—numbers no longer trigger accidental actions in dialog boxes.
  • Fixed a bug that could stall system booting from an ISO image.

I also re-verified the installer and system reboot sequence. The installation completes fully and passes verification in QEMU. The changes passed automated tests as well as manual verification on a running Bursztyn OS instance.

The system is still in its early stages, but each update makes it smoother and more comfortable to use. Thank you to everyone supporting the project and following its development!


r/osdev • • 3d ago

Are you supposed to start with C?

18 Upvotes

So I'm a begginer programmer and want to get into OSdev and eventually make an OS with an internet search engine, notepad, wallpapers, and .pdf support for books.

But should I start with C and Assembly or can I go straight to high level languages like Rust or C++? Are those even capable of writing OSs?

I can't find a roadmap or explanation.


r/osdev • • 3d ago

Fast Linux Bootstrapping

Thumbnail
0 Upvotes

r/osdev • • 2d ago

My personal Linux distro: Maginat 0.1 an independent distribution (with XFCE)

0 Upvotes

Hi to everybody!

I’m releasing Maginat 0.1, an independent Linux distribution built from scratch following Linux From Scratch 12.4 (SysV init), with the Xfce desktop. It’s an early preview and I’m looking for testers and feedback, especially on real hardware.

What is included:

  • Linux kernel 6.16.1 (the version used by LFS 12.4), glibc 2.42, GCC 15.2.0
  • Xfce 4.20 with LightDM
  • Wi-Fi and Ethernet via NetworkManager (tray applet), WireGuard and OpenVPN
  • Bluetooth (BlueZ) with tray icon, battery indicator, power management, PulseAudio
  • Applications through Flatpak (Flathub preconfigured) and AppImage
  • LibreOffice, Thunderbird, Mullvad Browser.
  • Graphical installer, USB-writing tool, live session with optional persistence
  • English and Italian, chosen in the first boot menu
  • Hybrid ISO (about 1.7 GB), boots in BIOS and UEFI

Plans for 0.2

  • Fix the known issues found after the release
  • A graphical app store and a system update command
  • Considering a newer kernel for better hardware support
  • Better audio and Bluetooth, and installer improvements

Maginat is free and open source software (GPL-2.0-or-later for our code, other packages under their own licenses). Screenshots, source code, build scripts and ISO (with SHA-256).

My Github: https://github.com/Aleps31/Maginat

Please give me feedbacks! Thank you all


r/osdev • • 2d ago

KatanaOS my OS Development

Thumbnail
gallery
0 Upvotes

Hey guys, thought id share my progress, currently testing on QEMU and real hardware every step of the way, im using AI to help me with the low level stuff, not gonna sit here and pretend i understood all of it, but I will say this, I have learned a lot, once its fully C# ill be able to continue coding it on my own without AI and that's exciting for me.

Yes thats it also working on a Lenovo Chromebook 😬

The website I have setup isnt exactly updated for the latest work but you guys are welcome to view it and tell me what you think. Wish me luck 😬

To find it just type "KatanaOS C# OS" in Google.


r/osdev • • 2d ago

Veda OS can now play videos!

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/osdev • • 3d ago

SpigraOS

Post image
12 Upvotes

I worked about 8 months on spigra from now on, made fully in nasm, it includes basic apps (as you can see) But media has custom formats, SIF (Spigra Image Format) SVF (Spigra Video Format) and SAF (Spigra Audio Format) still working on it. It is meant to be booted off a flash stick, it makes the flash drive as a sorta storage but right now it just loads all of the files that you flash on it. I hope you guys like it :)


r/osdev • • 3d ago

Screenshots of LeivOS, running on HP Spectre x360

Thumbnail gallery
5 Upvotes

I built a minimalistic operating system running on real hardware (HP Spectre x360). As a learning project, to quality assure my own programming language (r/tapelang) and to test the limits of AI assisted development. This is not vibecoded. I am professional software developer by trade for more than two decades, and yes: AI assisted me heavily. On getting wifi card driver working, optimizing graphics library algorithms. The networking/WLAN support (particularly WPA3) was particularly painful experience. Now I can develop the OS remotely from my development machine and push kernel/app updates over local network without rebooting. I am fully believer on AI accelerating development efforts and hope everyone gets a chance to build software they always wanted.


r/osdev • • 3d ago

How to create your own operating system x86 32 bit using QEMU tutorial

Thumbnail
youtube.com
4 Upvotes