Karlsruhe Operating System
Find a file
2025-11-13 00:35:30 +01:00
include snake can now be quit via the escape key 2025-11-13 00:35:30 +01:00
src snake can now be quit via the escape key 2025-11-13 00:35:30 +01:00
.gdbinit gdbinit script 2025-02-21 16:08:03 +01:00
.gitignore Fixed listening on the wrong timer IRQ 2025-10-02 00:57:33 +02:00
bochsrc Troubleshooting to get keyboard driver working 2025-08-15 02:35:27 +02:00
bootboot.cfg Imported bootboot's mykernel sample code 2025-01-15 18:18:02 +01:00
config.default.mk Disabling intrs + NMIs during CMOS access 2025-05-14 20:09:52 +02:00
debug-run-qemu.sh add -d int to qemu scripts 2025-05-21 19:36:08 +02:00
font.sff added box drawing characters 2025-07-31 01:28:56 +02:00
kernel.json Build proper EFI partition 2025-03-08 18:51:57 +01:00
kernel.ld Building a disk image 2025-01-15 20:19:22 +01:00
Makefile Ported a cityscape 3D rendering demo 2025-11-12 21:31:18 +01:00
Readme.md Update Readme.md 2025-02-13 10:34:30 +01:00
run-qemu.sh Disabled qemu interrupt log spam 2025-08-15 02:38:53 +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)