diff options
author | Freya Murphy <freya@freyacat.org> | 2025-05-06 16:47:09 -0400 |
---|---|---|
committer | Freya Murphy <freya@freyacat.org> | 2025-05-06 16:47:09 -0400 |
commit | 8efda574e0fa1aba6bcfb8fc7f396b4b0d40c2a2 (patch) | |
tree | b650409106bdc55ea81deb872744936a35ab4b50 | |
parent | readme & license (diff) | |
download | comus-8efda574e0fa1aba6bcfb8fc7f396b4b0d40c2a2.tar.gz comus-8efda574e0fa1aba6bcfb8fc7f396b4b0d40c2a2.tar.bz2 comus-8efda574e0fa1aba6bcfb8fc7f396b4b0d40c2a2.zip |
update readmes
Diffstat (limited to '')
-rw-r--r-- | README.md | 19 | ||||
-rw-r--r-- | docs/README.md | 10 |
2 files changed, 27 insertions, 2 deletions
@@ -2,6 +2,13 @@ Comus is a kernel! +## Dependencies + +To build comus, a c11 compiler is required, along with the gnu assembler +and linker. + +To build the boot iso for qemu, `grub-mkrescue` is needed from grub. + ## Build Run `make build` to build the kernel. @@ -16,6 +23,18 @@ Run `make qemu-gdb` to build and run in qemu with gdb debugging. Run `make gdb` to start the gdb debugger. +Run `make fmt` to format the source code. + +## Nix + +For development on NixOS run `nix develop` in the source directory. + +## UEFI + +Add `UEFI=1` as an argument to the makefile to build and run in UEFI. + +Requires the nix flake. + ## Docs See `docs/` diff --git a/docs/README.md b/docs/README.md index 6cf4375..3c4f052 100644 --- a/docs/README.md +++ b/docs/README.md @@ -20,6 +20,12 @@ amd64 Multiboot (Legacy / UEFI) -## Moduels +## Startup -See MODULES.md +1. Multiboot loads kernel into either `_start` or `_start_efi` + - Kernel identity maps during legacy boot (`_start`) +2. Kernel loads GDT, and far jobs into `main` +3. `main` loads the modules `cpu`, `mboot`, `memory`, `drivers`, `fs`, `pcb` in order. + - See MODULES.md +4. Kernel loads init process (`bin/init`) +5. Init loads user programs (sendoff!) |