Karlsruhe Operating System
Find a file
2025-03-17 16:55:18 +01:00
include address _offset functions 2025-03-17 16:55:18 +01:00
src address _offset functions 2025-03-17 16:55:18 +01:00
.gdbinit gdbinit script 2025-02-21 16:08:03 +01:00
.gitignore Initial printf 2025-02-19 18:27:21 +01:00
bootboot.cfg Imported bootboot's mykernel sample code 2025-01-15 18:18:02 +01:00
config.default.mk disable intel extensions 2025-02-26 19:46:27 +01:00
debug-run-qemu.sh minimal debug setup 2025-02-20 21:50:38 +01:00
font.psf Imported bootboot's mykernel sample code 2025-01-15 18:18:02 +01:00
kernel.json Building a disk image 2025-01-15 20:19:22 +01:00
kernel.ld Building a disk image 2025-01-15 20:19:22 +01:00
Makefile move address encapsulation to address.c 2025-03-15 20:39:49 +01:00
Readme.md Update Readme.md 2025-02-13 10:34:30 +01:00
run-qemu.sh add virtio drive; check PCI config space; find drive at slot 4 2025-01-30 15:27:41 +01: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)