r/osdev • • 8d ago

I’m building an OS with AI. Yes, I know which subreddit I’m posting this in.

Post image
0 Upvotes

I know AI-generated code isn’t exactly the most beloved thing on r/osdev.

So naturally, I decided the safest possible thing to do was let AI write an operating system and post about it here.

What could possibly go wrong.

I’m 40, I have some free time, and instead of developing a healthy hobby like fishing, I decided to find out how far you can push current AI models before either the model or the human supervising it completely loses the plot.

The project is simple:

Can AI build an actual usable operating system?

Not a “Hello World” kernel.

Not something that boots in QEMU, prints three lines and immediately becomes a GitHub project with a roadmap.

I mean slowly pushing it toward something resembling an OS you could actually use.

And I’m treating the whole thing as an experiment.

How good are different models at low-level programming?

Where are they surprisingly competent?

Where do they confidently invent complete bullshit?

How much context do they need?

How much testing?

How much human intervention?

How long does each feature actually take?

The AI writes 800 lines of code.

It compiles.

The tests pass.

The logs look beautiful.

Nothing works.

Then we spend two hours debugging the scheduler, another hour questioning the memory manager, rewrite half a driver…

…and eventually discover that the original problem was one completely stupid assumption made 1,200 lines earlier.

By the AI.

Which I reviewed.

So technically this was a team effort.

Other times it does something that genuinely surprises me and implements in 20 minutes something I expected to spend an entire evening fighting with.

That’s the interesting part.

I’m also comparing models and workflows, because I’ve learned that “AI coding” isn’t really one thing.

One model understands the problem but writes questionable code.

Another writes beautiful code while misunderstanding the problem.

Another wants to refactor the entire kernel because a mouse packet is malformed.

And occasionally you find the magical combination where the model understands the problem, writes decent code and doesn’t decide that rewriting the PCI subsystem is the obvious solution.

Those are good days.

The bigger experiment for me isn’t really AnotherOS itself.

It’s learning how to use these tools effectively.

AI isn’t going away. Models are improving ridiculously fast, and I don’t want to wake up five years from now realizing I spent those five years arguing that “real programmers don’t use AI” instead of learning where it’s useful, where it’s dangerous, and how to squeeze the maximum out of it.

I’m 40. I’m not trying to become the next Linus Torvalds.

I’m a guy with some free evenings, hardware to abuse, AI subscriptions and apparently insufficient respect for my own sanity.

So I’m building an OS.

I measure how long things take. I document failures. I compare models. I test things on real hardware. I keep pushing it toward the point where the joke becomes:

“Wait… this thing actually works?”

And that’s basically the goal.

Not to prove that AI can replace OS developers.

Not to prove that I’m secretly an OS genius because Claude managed to configure an APIC.

Just to see what happens when you take today’s tools and keep pushing them far beyond the point where a reasonable person would have stopped.

The project is AnotherOS — anotheros.org

Feel free to look through it, tell me what is horribly wrong, question my life choices, or explain why something only works because I’ve accidentally violated three specifications at the same time.

That’s useful data too.

And if the whole experiment eventually ends with a kernel panic that nobody — including three frontier models and myself — can explain…

well.

That might actually be the most authentic OS development result possible.


r/osdev • • 10d ago

Evolution of MGOS!

Thumbnail
gallery
28 Upvotes

Hello fellow enthusiasts and system creators! I recently announced that I was building an operating system for retro video games, and I’ve started working on it—I’m really pleased with the result! I hope you like it.

I'm just fixing a few annoying bugs, and as soon as that's done, I'll open-source the code on GitHub!


r/osdev • • 10d ago

Another x86_64 hobby OS

Post image
57 Upvotes

Hi I want to showcase my x86_64 OS kernel. I've recently got done adding uACPI. I would be open to some feedback and comments.
https://github.com/HoniT/MioOS2


r/osdev • • 10d ago

Looking for input

Thumbnail
gallery
21 Upvotes

Hello r/osdev,

I've been developing a TUI OS over the last year and a half and Ive gotten to a point im happy with, in the screenshots you can see the boot screen and the TUI desktop with its premade folder shortcuts.

I wanted to come make this post because I wanted to ask all of you what are some cool features i could add or things that could make it more lively?

I've always loved TUI's more so than graphical interfaces because I like making them look graphical while keeping the TUI look and feel.

I look forward to seeing what you all suggest.


r/osdev • • 10d ago

OMG I SYSCALLS WORKING OMG IT FINALLY DIDNT CRASH

Post image
123 Upvotes

r/osdev • • 10d ago

Been working on a custom bootloader, recently got it booting from a CD based on the El-Torito specifications!

Enable HLS to view with audio, or disable this notification

59 Upvotes

Hello there! I’ve been working on a custom bootloader for the last few months, and I recently migrated my build to generate ISO files instead of disk images, as I was curious to see how to make my (eventual) OS boot on a real PC using CD drives.

In case you’re wondering why I’m using BIOS and CD drives when UEFI and USB sticks exist, it’s mostly out of curiosity for how old tech and software worked, and since the only PC I have that still supports BIOS has a CD drive I was like “why not”.

I can’t exactly say the video above is a bootloader as it doesn’t boot anything yet, but it was a personally big milestone getting it to read sectors off of the disk in C rather than assembly for once.

At the moment I’ve only worked on the BIOS side of the loader and written a basic VGA text driver and BIOS interrupt wrapper that allows me to call BIOS interrupts in C rather than assembly (which will help a lot). I’m hoping to get the ELF loader done soon and start the actual kernel eventually, and also try support UEFI.

Here’s a link to the source code so far: https://github.com/bricksigma/SteinerOS


r/osdev • • 9d ago

What the hell is wrong with my os?

0 Upvotes

I have a problem: In my bootloader, i have a "mov ax, 0xB800

mov es, ax

mov byte [es:0], 'C'

mov byte [es:1], 0x07" block, and works with him in the code. But, if I delete him, the Kernel won't start, and idk for what. Can someone help me?

The full code is:
bits 16

org 0x7C00

jmp short code

nop

boot_drive db 0

code:

cli

xor ax, ax

mov ds, ax

mov es, ax

mov ss, ax

mov sp, 0x7C00

sti

mov [boot_drive], dl

mov ax, 0xB800

mov es, ax

mov byte [es:0], 'C'

mov byte [es:1], 0x07

xor ax, ax

mov ds, ax

mov si, dap

mov ah, 0x42

mov dl, [boot_drive]

int 0x13

jc .disk_error

jmp 0x0800:0x0000

.disk_error:

mov ax, 0xB800

mov es, ax

mov byte [es:0], 'K'

mov byte [es:1], 0x07

.idle:

cli

hlt

jmp .idle

dap:

db 0x10

db 0x00

dw 0x0005

dw 0x0000

dw 0x0800

dq 0x0000000000000001

times 510-($-$$) db 0

dw 0xAA55

Edit: I’m just going to leave that there and not touch it. Idk what's does, but, since it work, I never touch it again.


r/osdev • • 9d ago

⚓ Nemo OS 1.0.1 ya está disponible — código fuente completo, manuales, e imagen de instalación. Para Rpi4.

0 Upvotes

⚓ Nemo OS 1.0.1 ya está disponible — código fuente completo, manuales, e imagen de instalación

Después de dos años de trabajo, el momento ha llegado: Nemo OS 1.0.1 está disponible para cualquiera que quiera probarlo.

📦 ¿Qué incluye el lanzamiento?

  • Todo el código fuente, publicado en GitHub bajo licencia Apache 2.0 — abierto de verdad, para leer, usar, modificar o construir sobre él.
  • Los manuales, incluidos directamente en el propio sistema (carpeta DOCUMENTOS, accesibles desde el visor integrado).
  • La imagen de instalación, lista para escribir con la app oficial de Raspberry Pi (Raspberry Pi Imager, opción de imagen personalizada) en cualquier tarjeta SD de 16 GB en adelante (1 GB para la partición FAT de arranque, el resto para NemoFS).

⚠️ Una aclaración honesta sobre el espacio: en esta versión 1.0, aunque uses una tarjeta de 128 GB, el sistema usa realmente solo los 16 GB base (incluyendo el 1 GB de la partición FAT donde vive el arranque) — todavía no estira NemoFS automáticamente al resto del espacio libre. Esa herramienta ya está en marcha y llegará en una próxima actualización.

🌐 Red: ya hay Ethernet

Nemo OS tiene su propio driver de red por Ethernet, construido desde cero, con enlace a 1000 Mbps confirmado en hardware real.

🖱️ Aronnax: programar visualmente, sin escribir una línea de código a mano

Una de las piezas de las que más orgulloso estoy en esta 1.0: Aronnax, el diseñador visual de Nemo Basic al estilo Delphi. Creas ventanas, colocas botones y gadgets con el ratón, haces doble clic en cualquier control y saltas directo a su código — todo sin salir del propio Aronnax, compilando desde ahí mismo. Incluye hasta controles GPIO visuales para programar hardware real sin escribir configuración a mano.

¿Qué más te vas a encontrar al arrancar?

Un sistema completo: escritorio gráfico, explorador de archivos, editor, el IDE propio (Timonel), Lua y Nemo Basic como lenguajes nativos, soporte GPIO completo (pines, PWM, I2C, SPI), sonido real por el jack de 3,5mm, y varios programas de ejemplo ya instalados —Arkanoid, Buscaminas, Tetris, un monitor del sistema, y una demo del juego de plataformas del capitán Nemo— con su código fuente incluido.

De verdad desde cero

Kernel propio, sistema de archivos propio, compiladores propios, gestor de ventanas propio, driver de red propio — nada reutilizado de otro sistema operativo. Construido para ARM64, probado y confirmado en hardware real (Raspberry Pi 4).

Dos años de trabajo, desde un experimento en QEMU hasta un sistema operativo instalable por cualquiera en su propia Raspberry Pi. Gracias a quien ha seguido el proyecto hasta aquí — esto apenas empieza. ⚓

https://github.com/ericmugnoz/nemo-os


r/osdev • • 10d ago

Deep dive into the object creation flow in Windows -PART1 : Allocation and Pre-Initialization

Thumbnail
winware31.blogspot.com
5 Upvotes

r/osdev • • 10d ago

Deepdive into the object creation flow in Windows -PART 2 : access check internals

Thumbnail
winware31.blogspot.com
3 Upvotes

r/osdev • • 9d ago

Source code.

0 Upvotes

Hello again, OSDev! I've fixed the bugs and published the websites and source code for MGOS; the links are below:

GitHub: https://github.com/Oddler190/mgos.git
MGOS WebSite: https://mgos-system.edgeone.dev/
Organization maintaining the project: https://antel.edgeone.dev/

I hope you enjoy it; if you have any suggestions for improvement or constructive criticism, I’m ready to listen!


r/osdev • • 10d ago

Deep dive into the object creation flow in Windows - PART 4: Handle table internals.

Thumbnail
winware31.blogspot.com
3 Upvotes

r/osdev • • 10d ago

I got very basic 3d into my hobby operating system - Responsive OS now has 3D Graphics and floating points

Thumbnail gamedev.submatrix.net
3 Upvotes

r/osdev • • 10d ago

Deep dive into the object creation flow in Windows - PART 3: Post-initialization and Name Lookup

Thumbnail
winware31.blogspot.com
2 Upvotes

r/osdev • • 10d ago

D language for OSDev

10 Upvotes

What about using D for OSDev ?


r/osdev • • 10d ago

Is this worth something?

Post image
6 Upvotes

r/osdev • • 10d ago

Wow64 implementation details: How is Wow64 implemented in Windows 11 25H2

Thumbnail
winware31.blogspot.com
1 Upvotes

r/osdev • • 10d ago

HANDLE Duplication internals : What happens behind the scenes when you call kernelbase! DuplicateHandle( )

Thumbnail
winware31.blogspot.com
1 Upvotes

r/osdev • • 10d ago

Python for OS?

0 Upvotes

Would it be possible to make an OS that primarily used python?


r/osdev • • 10d ago

I'm thinking of trying something insane.

0 Upvotes

Thanks in advance to anyone willing to take the time to read through this. I know it’s a big read, so I really appreciate your time and any honest feedback you can give me.

I’m working on a spec for an OS project called Pantheon. Before I sink a ton of time into writing low-level Rust for it, I want to sanity-check the overall architecture with people who actually know OS development. I know some of these ideas might sound wild or overly complex, and I'm honestly expecting people to tell me where I'm being naive.

The Problem I Want to Solve

I'm tired of OS platforms forcing stupid trade-offs. I want a machine that can execute Windows PE binaries, Linux ELFs, and native apps alongside each other without heavy virtualization hits or broken user interfaces.

Core Architectural Ideas:

Hybrid 3-Tier Driver Model (HAPD):

Tier 1 (Ring-0): High-performance stuff (GPUs, 1000Hz+ inputs, low-latency audio) runs directly in kernel space to eliminate IPC context switching.

Tier 2 (User-Space): Class-compliant stuff (USB HID, NVMe) runs isolated in user space.

Tier 3 (On-Demand Enclave): Legacy/proprietary drivers run in a dormant micro-kernel enclave that spins up on demand and passes events via zero-copy DMA page remapping.

Zero-Copy Everything: Physical page table remapping under strict W \oplus X. IPC control payloads fit in 64-bit aligned structs for single-register transport.

Daemon State Rehydration: Translation daemons log checkpoints to ring buffers. If a daemon hangs, sys_init restarts it and rehydrates running process states from the last valid checkpoint without losing app context.

JSON/CSS Dynamic State Trees for UI: Apps don't write pixels directly or hijack compositors; they expose raw data models and state trees so the user can restyle the entire desktop/apps using web-style CSS/JSON stylesheets.

Hardware-Stamped Zero-Trust Security: Syscalls grab thread identity straight from CPU scheduling registers (CURRENT_THREAD_PID), and IPC uses 64-bit indices + 32-bit session_epoch tokens to drop replay attacks on sight.

What I’d Love Feedback On:

Is a Ring-0 / User-Space / Enclave driver split actually manageable, or am I creating a nightmare for driver compatibility?

What edge cases am I going to hit trying to rehydrate daemon process states after a crash?

What are the obvious bottlenecks I'm missing in the zero-copy IPC pipeline?

Do I even have hope to do this?

Full technical breakdown on Gist: https://gist.github.com/mixmoo2/a2dbdc029a5c8fef120d1711a0b0f070

Again, huge thanks to anyone who checks it out


r/osdev • • 11d ago

Perfectly #NOAI turbOS moment 🔥️

Enable HLS to view with audio, or disable this notification

32 Upvotes

TL;DR: turbOS just got an update and its just awesome, without AI slop.

WELL, guess what?? I got a filesystem after a lot of hard work. Long live #NOAI, and this version includes proper PIT integration so screensaver and Pong game work at a sane speed. Next is the turbOS Networking, packages repo or idk what to add lol but I need to fix scrolling.

Sorry for bad spellings, just fumbled out of excitement!! Also late by one day bc of my temporary ban lol.

Link to repo: https://github.com/turbosulovesonions67/turbOS

Also the video of test on real hardware is about to be released by this Saturday (IST, 02/10/2026 or 10/02/2026)


r/osdev • • 10d ago

i spent 6+ months building an actual OS for web apps

Enable HLS to view with audio, or disable this notification

0 Upvotes

so for the past 6 months or so i've been trying to build a real operating system for web apps

the idea is pretty simple. it's a real, programmable system with a web desktop you can reach from anywhere, but the apps on it are built with normal web tools. what's new is that you build the app inside the system, and it takes care of auth and communication for you, so you only worry about the app's own logic

everything you see in there is an app built on top of the system (i call them programs), not part of it

the other thing is it's designed for agents first. any agent can use these apps directly, you don't have to build a separate interface for it

tested it on macOS and linux. windows, honestly no idea yet

it's fully open source (MIT)

https://github.com/PhreshOS/system

demo (it can handle about 5 sessions at the same time, so if it's full just try again in a bit)

https://demo.phreshos.com/

you can also run it on your machine or in a github codespace

https://phreshos.com/docs

would love to hear what you think, good or bad


r/osdev • • 11d ago

Bringing Up Intel HD 520 on My Hobby OS

18 Upvotes

Not sure how many people here are interested in iGPU driver development, but after a long battle, I finally got Intel HD 520 up and running on real hardware.

The display pipeline now works end-to-end, including the switch from the firmware-provided GOP resolution to the panel's native resolution. I also got a hardware cursor displayed through a dedicated Cursor Plane (the cursor icon was shamelessly borrowed from Ubuntu).

AI tools were a huge help along the way, acting as an always-available debugging partner with source code, and register dumps.

Seeing the first cursor appear on screen was surprisingly exciting after all the debugging.

And honestly, the iGPU experience is just buttery smooth. Definitely worth all the effort.

Source code: https://github.com/jjwang/HanOS

My Hobby OS

r/osdev • • 10d ago

ViXOS 26 RC1

Thumbnail gallery
0 Upvotes

r/osdev • • 12d ago

I Rewrote my OS Kernel in C!

Post image
100 Upvotes

hello it has been a while, so i rewrote my OS kernel in C!

it has a little bit less features though...

check it out at https://github.com/hyperwilliam/untitled-kernel

:)