cxkernel
This is the main repository of cxkernel, an experimental microkernel; the aim of which was to complete the operating system before I graduate high school.
The acronym was derived from "C is not *nix", which was shortened to cxkernel as CIN kernel wasn't as appealing.
Building
Please use Linux to build as I will not be paying for your therapy.
Run commands:
- Clone this repository
mkdir logs
in root of the repositorycd build
and run. ./scripts/install_prereq.sh
as root- Export
build/toolchain/cross/x86_64/bin/
toPATH
(maybe add to~/.bashrc
too). Typei686-elf-gcc
to confirm. - Install
cmake
(unless you're using VSCode then see the note below). - Install QEMU, if you're under WSL install the native Windows version. Add QEMU to your path.
We use the CMake build system. Simply configure TARGET
and BUILD_TYPE
(I also recommend CUSTOM_FILENAME=ON
) to generate the Makefiles. Then run make
and the artefacts should be generated under build/bin/
.
If you are using VSCode...
- See this first.
- Run the above commands and open the repository root folder in VSCode
- Run the task named "Configure" and follow instructions
- Build!
Old Branches
As the kernel has gone through many revisions and rewrites, old releases and sources are accessible through branches.