Pallax is a hobby Operating-System in development. It is written using C++20.
The project has the following project structure:
Kernel
contains all files related to the kernelArchitecture
contains architecture dependent files and drivers.
Pallib
contains a custom C++ standard library which is linked into the kernel.Toolchain
contains a CMake file with the needed cross-compilers.
In order to compile the Kernel, i686-elf-binutils
and i686-elf-g++
must be installed (or built from source for
the i686-elf
target) and in the PATH environment variable.
Once the prerequisites are met run the following commands from the repository root folder:
mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../Toolchain/TC-i686-elf.cmake ..
cmake --build .
The result of compiling the kernel is an ELF Multiboot image. It can be loaded using Qemu:
qemu-system-i386 -kernel build/Kernel/PallaxKernel