💾 Amd64 operating system in C. Trying to make a full OS, with a simple and readable codebase!
See the codecavOS is an x86_64 POSIX-compliant operating system in C. An active effort of making a full OS, with a simple and readable codebase.
| Terminal and Xorg utilities | Image viewer and a mesa demo |
|---|---|
![]() | ![]() |
| Thunar and MPV playing Bad Apple | The games Quake Doom and ClassiCraft |
|---|---|
![]() | ![]() |
| Wikipedia on NetSurf Browser | HexChat on Liberta IRC (encrypted w/TLS) |
|---|---|
![]() | ![]() |
because I can.
Having a good time is my drive for this project + I learn a lot of cool low level stuff alongside that!
The cavOS kernel is a monolithic x86_64 one written in relatively simple C with a few bits of Intel assembly here and there. It uses the Limine bootloader and leverages the FAT32 filesystem for booting along with Ext2 for the root partition. I try to keep the code structure clean and fairly easy to understand, while avoiding too much abstraction. Hence, code quality and clarity are sometimes prioritized over performance gains.
syscall instruction)Userspace is my primary focus at the time being, with the kernel being quite stable. I'm trying to make this OS as close to Linux as I can, while adding my own stuff on top of it. This is visible with the system calls that are exactly like Linux's. That isn't random, I want cavOS to be as binary compatible with it as possible!
As far as the actual implementation goes, I'm using the apk package manager from Alpine Linux and their respective repositories for userspace assembly. Alpine's & musl's philosophy align with the cavOS one and I really see no point in recompiling stuff myself if I don't necessarily have to.
a.fetch commandThis project is licensed under GPL v3 (GNU General Public License v3.0). For more information go to the LICENSE file.
219 followers · starred Sep 2024
1,746 followers · starred May 2025
130 followers · starred Apr 2024
264 followers · starred Feb 2024
💾 Amd64 operating system in C. Trying to make a full OS, with a simple and readable codebase!
See the codecavOS is an x86_64 POSIX-compliant operating system in C. An active effort of making a full OS, with a simple and readable codebase.
| Terminal and Xorg utilities | Image viewer and a mesa demo |
|---|---|
![]() | ![]() |
| Thunar and MPV playing Bad Apple | The games Quake Doom and ClassiCraft |
|---|---|
![]() | ![]() |
| Wikipedia on NetSurf Browser | HexChat on Liberta IRC (encrypted w/TLS) |
|---|---|
![]() | ![]() |
because I can.
Having a good time is my drive for this project + I learn a lot of cool low level stuff alongside that!
The cavOS kernel is a monolithic x86_64 one written in relatively simple C with a few bits of Intel assembly here and there. It uses the Limine bootloader and leverages the FAT32 filesystem for booting along with Ext2 for the root partition. I try to keep the code structure clean and fairly easy to understand, while avoiding too much abstraction. Hence, code quality and clarity are sometimes prioritized over performance gains.
syscall instruction)Userspace is my primary focus at the time being, with the kernel being quite stable. I'm trying to make this OS as close to Linux as I can, while adding my own stuff on top of it. This is visible with the system calls that are exactly like Linux's. That isn't random, I want cavOS to be as binary compatible with it as possible!
As far as the actual implementation goes, I'm using the apk package manager from Alpine Linux and their respective repositories for userspace assembly. Alpine's & musl's philosophy align with the cavOS one and I really see no point in recompiling stuff myself if I don't necessarily have to.
a.fetch commandThis project is licensed under GPL v3 (GNU General Public License v3.0). For more information go to the LICENSE file.
219 followers · starred Sep 2024
1,746 followers · starred May 2025
130 followers · starred Apr 2024
264 followers · starred Feb 2024