v0.2
This release has a heavy emphasis on memory management, a prerequisite for more complex functionality in the kernel. A highlight was finally merging multitasking support.
Features:
* Physical memory manager (#104)
* Running unit tests on the target architecture (#122)
* x86 real-time-clock (#123)
* Formatting as part of the build process (#124)
* Virtual memory manager (#128)
* Using /usr/bin/env bash instead of /bin/bash in makeiso.sh (#131)
* Multitasking (#138)
* Virtual filesystem (#139)
* Logging CPU state on a page fault (#140)
* Target architecture option for build.zig (#168)
* Heap allocator (#183)
* Comptime-capable bitmap (#188)
Bug fixes: * Keeping the stack section intact (#126) * Write full symbol name to the kernel symbol file (#144) * Change integer types to usize for 64-bit scaling (#146)
Miscellaneous: * Run CI checks on PRs and pushes (#132) * Removal of start.asm and start.s (#151) * Delegate boot module and memory initialisation to the architecture (#149) * Move of the linker script to the architecture folder (#153) * Delegate serial initialisation to the architecture (#157 and #159) * Delegate TTY initialisation to the architecture (#163) * Replace python runtime testing to zig (#164)