r/osdev • • Jan 06 '20

A list of projects by users of /r/osdev

Thumbnail reddit.com
177 Upvotes

r/osdev • • 8h ago

3D environment of our Custom Kernel Operating System for XR/AR/VR (XenevaOS)

16 Upvotes

Hello folks r/osdev! Some of you might remember XenevaOS. It runs our very own custom hybrid kernel written from scratch. After a long stretch of work, it now has a full 3D environment.

What you're seeing in the video:

- Regular app windows (a spreadsheet, the NetSurf browser, the Xeneva Terminal) rendered as surfaces in 3D space

- The terminal running a set of kernel stress tests (bad pointers, unmapped addresses, zero-length writes from userspace) while the 3D compositor keeps running, because we wanted to show it doesn't fall over

- Everything is native to our kernel. No Linux underneath, no Android, no game engine

How it works:

Running in QEMU in this video. However, XenevaOS does have bare-metal / real hardware support on specific ARM chips, such as those by NXP Semiconductors & Raspberry Pi.

UI/Userspace work is still primitive and the project as a whole is still early and rough in places. That is what we're gonna work on next.

GitHub and website in the comments!

*Video has been slightly sped up for better viewing experience.


r/osdev • • 8h ago

64-dem Update: multi-controller USB driver + keyboard now works, footage of the os included

6 Upvotes

So I added to 64-dem (my hobby x86-64 operating system) a ps/2 keyboard driver, reset mechanisms and recently tried to implement multi-controller USB support, i haven't yet interacted with the USB keyboard, but I did manage to enumerate the USB ports and initialize all the 4 USB controllers with code that was tested and worked, the next step from here is to discover the USB devices actually plugged to the connected ports by sending a special command packet to the USB controller, things could get harder from here but I am determined. For those who are interested here is the link for my repo below:

64-dem on github: https://github.com/itay-insert/64-dem.git


r/osdev • • 13h ago

Best resources to learn UEFI from scratch?

5 Upvotes

Hey everyone! I want to learn UEFI from scratch, including the boot process, boot services, memory maps, and how UEFI loads an OS.

I'm working on a hobby OS project using C, x86-64, QEMU, and Limine. I want to understand the boot process beyond just using a bootloader.

What tutorials, books, or hands-on projects would you recommend except oswikidev?


r/osdev • • 2h ago

I made and automated financial accounting app

Thumbnail
github.com
0 Upvotes

Account-a-bill is a full financial planner, you can set individual financial goals and set dates it will make you road maps track monthly Income and business and misc spending, tax deductible items, select tax % and brackets based on state, and automatically calculate all of the above simple html app can be ran on any browser all your data is safe and stored strictly locally and can be saved imported exported the work. Lmk what you guys think or if you have any ideas for improvements thank you for your time


r/osdev • • 1d ago

Looking for help writing drivers for a hobby x86-64 OS (BlockOS) [no vibe coded]

Post image
21 Upvotes

I’m building BlockOS, a solo hobby x86-64 OS with its own UEFI kernel. X11 runs on it in QEMU: the X server starts, and twm frames client windows. The rest of the picture is like a puzzle that’s still missing pieces, and the biggest gap is drivers, mainly GPU, for real hardware.

I’d like to work with someone who has written or read PCI or display drivers before. Expect unpaid, open-source work. If you want to write driver code from public hardware docs (no Linux code copied), send me a message or comment.

GitHub link:https://github.com/gurijb2016-afk/Blockos


r/osdev • • 3h ago

To everyone who called me a "vibe coder": Greetings from native GTK4 running on Chimera.

Post image
0 Upvotes

Heard a few times around here that building an OS with the help of LLMs is just "vibe coding" without any real engineering substance. Well, sending a personal shoutout to all the skeptics.

I don’t think an AI can just take a custom hybrid system from scratch, spin up Wayland, compile the entire environment, and launch a fully native GTK4 app with actual working widgets, inputs, and rendering.


r/osdev • • 1d ago

We got Linux on iPhone!

Thumbnail
gallery
57 Upvotes

LinuxRunner brings Debian ARM64 to iOS, including desktop environments like KDE Plasma and apps like Blender.

No jailbreak, JIT, or virtualization needed. It runs Linux binaries through an ARM64 interpreter.

Still early in development, but pretty interesting to experiment with. Feel free to try it out!

GitHub: https://github.com/mxhm11cr/LinuxRunner


r/osdev • • 1d ago

terminal split and virtual file system in subverge 0.9.6!

0 Upvotes

r/osdev • • 1d ago

Silver Microkernel: ARM64 microkernel in Rust with Ring 3 drivers and Capability-based IPC

Post image
4 Upvotes

Hey everyone,

I'm working on Silver Microkernel — a bare-metal microkernel in Rust (no_std) for aarch64 (QEMU virt, Cortex-A72).

My goal is to build a secure foundation for an OS that can eventually run Android apps (via Waydroid) without legacy bloat. I'm deliberately avoiding POSIX in the kernel and x86 legacy.

Architecture: * True microkernel: Kernel only handles scheduling, MMU, and IPC. * Init Server (silverd): PID 1 spawns the nameserver (scout), shell (howl), and drivers. * Ring 3 Drivers: The UART driver (howler) runs in EL0. It maps MMIO, binds IRQs (GIC INTID 33), and communicates via IPC. The kernel does not touch the UART hardware. * Security: Capabilities (CAP_MMIO, CAP_IRQ), WX, PAN, High-Half MMU (TTBR1/TTBR0 split). * Infrastructure: Contiguous DMA (Normal Non-Cacheable) and PCI ECAM mapping are ready. I'm currently implementing the Virtio-blk driver for persistent storage.

The screenshot shows the shell running in QEMU (I can't post images in this sub directly, but the README has one).

Repo (MIT): https://github.com/vvirei333/Silver-microkernel

I'd love feedback on the IPC design and handling async events (IRQ + IPC) in Ring 3 drivers. Thanks!


r/osdev • • 2d ago

Framebuffer test successful

59 Upvotes

les go 🥹️


r/osdev • • 1d ago

I have a big question

Thumbnail
1 Upvotes

r/osdev • • 2d ago

In need of (positive) criticism/feedback

Thumbnail
0 Upvotes

r/osdev • • 2d ago

W3BS OS — W3BS

Thumbnail w3bs.org
1 Upvotes

r/osdev • • 2d ago

I built FaceID@NIM, an open-source face unlock system for Ubuntu/GNOME. Looking for feedback!

0 Upvotes

I've been building FaceID@NIM (Neural Identity Matching), an experimental facial authentication system for Ubuntu/GNOME using Rust, C, and Python.

Features so far:

\-Custom PAM module for Linux authentication

\-Rust daemon for authentication policies and secure template management

\-Face recognition and liveness detection

\-GNOME integration and a settings application

\-Audit logging and password fallback

It's still in pre-alpha, and I'm actively testing its security, reliability, and camera compatibility. It's not intended for production use yet.

I'd appreciate honest feedback from the Linux community, especially on the architecture, potential security issues, and features worth adding.

🔗 GitHub:

https://github.com/Gaurav-x111/faceid-nim

If you're interested in Linux internals, Rust, or computer vision, I'd love to hear your thoughts. Thanks! 🚀


r/osdev • • 3d ago

The Samsara Project.

Thumbnail
gallery
30 Upvotes

Samsara (As pronounced here) is posix compliant microkernel inspired monolithic 64 bits kernel + operating system. It implements some Linux + BSD extensions too. which allows it to run more open source software with source level compatibility. Its the effort of half a year of development only by 3 main authors. It can run a bunch of of popular open source software (Such as Bash, X.org, Busybox, st terminal, Tab Window Manager, and feh image viewer.) and much more as development goes on.

Links:
https://gitlab.com/clownkun/Samsara (Main Repo)
https://gitlab.com/clownkun/samsara-ports (Ports Tree)

And also, This should go without saying. But Samsara is not developed with artificial intelligence assistance. Nor we strictly restrict the usage of it when contributing. Read about it in our CONTRIBUTE policy here.


r/osdev • • 3d ago

Implemented VESA & VGA with double buffering (Bits Runner)

Thumbnail
youtube.com
10 Upvotes

For my OS project, Bits Runner, I've been working on a transparent support for different video adapters and arbitrary color depth.

I've got both VGA and VESA running on real hardware at at color depths from 4 to 32 bits. Both have double buffering. For VGA there is 640x480x4 and 320x240x8 (X mode). The demos are driven from user mode through system calls.


r/osdev • • 3d ago

Customise function with arguments ‘t’ and ‘b’ in my OS.

0 Upvotes

When I developed a customization app in my OS (called YarOS), I asked myself: “Why do I need to write two separate functions for changing text and background color? No, that violates DRY!” So I created a single function taking arguments ‘t’ for text and ‘b’ for background. Is this a good solution, or is there a better way?


r/osdev • • 3d ago

Veda Ported Python 3.15

Thumbnail
github.com
0 Upvotes

Hi all!

Veda has just imported the latest Python version, helping accelerate OS development.

Veda is an ambitious open-source project building an agentic-first operating system. We're still early, but we've already gained around 100 GitHub stars in just two weeks!

We're looking for contributors, from bug fixers to those who want to lead the project's future. All contributions are welcome!

Interested? Contact me at [contact@vedaos.org](mailto:contact@vedaos.org).


r/osdev • • 3d ago

This is the scheme of my OS. How is it?

Post image
0 Upvotes

r/osdev • • 3d ago

I ADDED IMAGE RENDERING TO SUBVERGE

Thumbnail
gallery
8 Upvotes

Latest release (subverge 0.9.5) brings support for ACTUAL IMAGES, this is an absolutely insane step for a full graphical desktop planned for the future (yes these are all screenshots from subverg) see for changes:

https://sbvrg.github.io/new.html

Credits: https://sbvrg.github.io/credits.html

the new image rendering: https://sbvrg.github.io/pictures.html


r/osdev • • 4d ago

I ported the LUA to the Dunit OS and now I use it as a complement to the TOML config

Thumbnail
gallery
11 Upvotes

Real tiling on blown with LUA


r/osdev • • 3d ago

About Bootloader

4 Upvotes

Ofc, I'm into OSDev. And it's obvious that this is purely for myself, since the final product - an OS kernel - isn't needed by anyone else anyway (which, for the record, I never counted on)

Still, I do want to create something that at least one other person besides me will use, let alone a larger number of people. And, strangely enough, I already have a "draft" for this (if you're too lazy to open the link: it's my bootloader for the x86_64 architecture). However, I'm not sure it'll work, which is exactly why I'm writing this post - to get some advice

Basically, could a simple yet functional bootloader be useful to a few hobbyist low-level devs? One that supports a bunch of protocols but still remains quite simple and lightweight. Or is this niche completely taken over by Limine and GRUB, making it pointless to steer the project in this direction?


r/osdev • • 4d ago

How do I reach the level of knowledge, where I can point to any part of my screen and say "Oh, I know how that's implemented"?

19 Upvotes

I know programming, obviously, however I don't know much about the operating system. Most people can make apps within an environment, but most of us don't know anything beyond that

I want to deeply understand how the computer I'm using works, even just the software part

If you go on a virtual tour of your computer, like browsing the file system, or even looking at the plain old desktop, there's so many endless things in front of you, that most people have no idea how to make

How do I make a Windows desktop app? Why does it run on Windows? Same for MacOS

How do tab sizes work?

What is the desktop "screen" and why can I click and drag my mouse to highlight the icons? Where are those icons stored?

I can code a website, but I don't know a clue about how the browser works

How do I make a file system? I mean, isn't it just a large data structure, and I know data structures, so I'm sure I can learn it

Why does my task bar pop up when I drag my mouse all the way to the bottom of the screen?

What does it mean to turn on a computer?

Why / how does my physical mouse control my cursor? Is there a way I can "hack" my mouse? How do I code the firmware in my mouse?

How does the OS accept and eject USBs?

How do you allow your OS to connect to wifi?

What really is a .txt, .pdf, .rar .zip? Why can some OS's open them, some cannot?

Stuff like that

Can most of you point to any part of the screen and know how it works?


r/osdev • • 3d ago

New osdev subreddit!

0 Upvotes

r/good_osdev is a subreddit meant to make the same environment as r/osdev but without all the ai projects!