Karlsruhe Operating System
Find a file
2026-06-03 22:29:05 +02:00
include proof-of-concept file reading from tar-formatted disk 2026-05-30 16:03:43 +02:00
res cleaned-up karlos svg 2026-05-08 17:03:09 +02:00
src Merge branch 'main' of 188.68.55.73:karlos/karlos 2026-06-03 22:29:05 +02:00
tests slab: simple test for custom alignment and unaligned size 2026-05-28 17:28:13 +02:00
.gdbinit gdbinit script 2025-02-21 16:08:03 +01:00
.gitignore virtio stuff, discovery of virtio devices over PCI 2026-05-22 22:13:20 +02:00
bochsrc SATA sector read progress 2025-12-20 17:08:59 +01:00
bootparam.cfg bootparams for panic on mem exhaustion 2026-05-21 17:49:38 +02:00
config.default.mk Disabling intrs + NMIs during CMOS access 2025-05-14 20:09:52 +02:00
debug-run-qemu.sh virtio stuff, discovery of virtio devices over PCI 2026-05-22 22:13:20 +02:00
kernel.json Renamed bootboot.cfg to bootparam.cfg 2026-02-25 22:46:44 +01:00
kernel.ld Preprocessor+Linker Voodoo for boot param decl 2026-02-25 22:27:44 +01:00
Makefile move most of virtio-blk example outside main 2026-06-03 22:17:23 +02:00
Readme.md Update Readme.md 2025-02-13 10:34:30 +01:00
run-qemu.sh virtio stuff, discovery of virtio devices over PCI 2026-05-22 22:13:20 +02:00

KarlOS

KarlOS is a student effort in Karlsruhe to create a hobbyist Operating System from scratch. The current goal of the project is to develop a simple monolithic kernel for 64-bit Intel / AMD PCs, which could serve as a platform for experimentation in the future.

Build Dependencies

You will need:

  • A x86_64 cross-compiler GNU toolchain
  • GNU make (the current Makefile is unfortunately not compatible with BSD make)
  • mkbootimg (part of [^BOOTBOOT])
  • qemu-system-x86_64 to run the kernel in an emulator

Installing Dependencies, Building, and Running

See our wiki page.

References

[^BOOTBOOT] [https://gitlab.com/bztsrc/bootboot](The BOOTBOOT boot protocol and reference implementation)