Repository navigation
v0.1 - Minimal boot and UART output
First release of the AArch64 bare-metal kernel.
Added
linker.ld: custom linker script, kernel linked at0x40000000, stack layout with_stack_bottomand_stack_topsrc/boot/boot.s: AArch64 bare-metal boot code, stack initialization and kernel halt loopsrc/uart/uart.s: UART MMIO driver for QEMUvirt,uart_putcanduart_puts, null-terminated string output, UART transmit FIFO polling throughUART_FR, character output throughUART_DRMakefile: assembly and linking of the kernel, automatic generation of thebuild/directory and object filesscripts/check_setup.sh: development environment verificationbuild/: generated object files and kernel ELF- AArch64 assembly-only implementation with no C runtime or standard library
Verification
The kernel successfully boots on QEMU virt and outputs:
Hello, AArch64!