9cf56 No.65666
So I've been working on my own OS for the last few months because I thought it'd be a fun project.
It's called Neko OS. 32-bit monolithic kernel. It boots, which already puts it above my expectations.
Current stuff that works:
- VESA graphics (1024x768 because I got tired of staring at VGA text mode)
- PS/2 keyboard + mouse
- Spanish keyboard layout because I'm not American
- RAMFS, so everything disappears after reboot. Feature, not bug.
- Tiny text editor that's basically nano if it sucked.
- Built-in C compiler. Yeah, inside the OS. It translates C to x86 assembly.
- PC speaker support because beeping is important.
- grep, cpuinfo, PCI detection, memory detection, all the usual small utilities.
The funny part is that I can edit the kernel source from inside the OS, run `compile`, then `build`, and rebuild the whole kernel from the RAMFS without leaving it.
It's probably one of the dumbest things I've implemented, but also one of my favorites.
Needs an i686 CPU, 256 MB RAM, VESA, and PS/2 devices.
Built with i686-elf-gcc, NASM, GRUB and QEMU.
Still missing basically everything that makes an OS useful:
- USB
- Networking
- Real filesystem
- Multithreading
- 64-bit
Around 65 source files and ~200 KB of code so far.
Build:
make all && make iso
Run:
make run
or
qemu-system-i386 -cdrom build/neko-os.iso -m 256M
License is basically "do whatever you want."
Pic related is the boot screen. I spent more time aligning the ASCII cat than implementing some actual kernel features.
Yeah, I know it's a toy OS.
Yeah, Linux already exists.
Yeah, someone is going to tell me to rewrite it in Rust.
I made it because writing an OS from scratch sounded fun, and honestly it has been.
Feel free to roast it. Every bug you find saves me from finding it myself.
25108 No.65668
Is it better than PonyOS?
9cf56 No.65669
for No.65668…. maybe
1342a No.65670
Rewrite it in Rust
9cf56 No.65672
The guy who said to write it in Rust… must want me dead, seeing as I barely know C and assembly.
e0abf No.65673
>>65666honestly dude, im not qualified to roast it. This is extremely impressive work though. I wouldn't dig too deeply though. If you have the skills to do this I recommend you either think of an open source project to start that solves peoples problems or find one and start adding cool stuff to it. It will help you build connections. Open source is a thankless job though. Just be warned.
some stuff I think might interest you if you're into low level is cross-platform compilers. You could check out languages like haxe. Or stake out tech problems that you think suck and solve those.
e0abf No.65675
>>65674better not be vibe coded. why did u post this on meta, anyway?
9cf56 No.65676
>>65675 I forgot to mention that my goal is to create a complex operating system because I enjoy manual programming. As for "vibe coding"? I mostly use AI to help me fix compilation errors. Right now, I'm starting over from the kernel to resolve some startup issues. :D
e0abf No.65686
>>65676well you seem incredibly talented. i wish you good luck with it, wizzie.