2025-11-15
New Yk Kernel
yet another attempt at this :)
I hated working on the Xv6 code bc so much of it uses legacy stuff (__sync
builtins, etc.) as well as having been written in a form factor that's okay for
learning, but is mildly a nightmare to actually modify too much.
I'm sure someone thinks the same about my code, but this is also not their project, so that doesn't matter.
SPDX-License-Identifier: CC-BY-NC-SA-4.0 OR GPL-3.0-or-later
The following build tools are required:
riscv64-unknown-elf
riscv64-unknown-elf, and this will be
needed.makeriscv64 system emulatorvirt machineFirst, obtain sources (git is easiest).
Then, run the following commands in the source directory/repo root:
mkdir build && cd build
cmake .. --toolchain toolchains/riscv64-unknown-elf.cmake
make
cd ..
vlunnr run build/nyk_img.elf
The final command will start up vlunnr using a predetermined set of commands
to run Qemu. For Qemu to run successfully, you will need a U-Boot M-mode
firmware file called u-boot.bin in the working directory of Qemu (repo root
following the above commands).
Clone the git repo from https://git.vlpatton.gay/git/nyk.git, send email
PRs (git request-pull) to vlpatton@vlpatton.gay.