Boot loader written in assembly, checks for 64 bit support and then checks for long_mode
- src/impl/kernel/main.c This is the main kernel file, this gets ran after the boot loader
- src/impl/x86_64/print.c This contains all of the printing functions, including printf
- src/impl/x86_64/boot This folder contains all the files for when the os boots, including the 32 bit boot loader & 64 bit version, and the header
- docker build buildenv -t deathos-buildenv
- Linux/Mac: docker run --rm -v $pwd:/root/env deathos-buildenv
- Windows cmd: docker run --rm -it -v %cd%:/root/env deathos-buildenv
- Windows PS: docker run --rm -it -v "${pwd}:/root/env" deathos-buildenv
- make build-x86_64
Personally, I use qemu, but you can feel free to use something easier such as Virtual Box
This is a pretty basic thing still if you've ever installed an OS before.
- Download rufus
- Open rufus
- For boot selection, select kernel.iso inside \dist\x86_64
- Set partition scheme and select MBR
- For target system, select BIOS (or UEFI-CSM)
- Leave the rest as default, then just click START
Please note: Your CPU requires intergrated graphics since there is no graphics card driver
Permissions
- ✔️ Commercial use
- ✔️ Modification
- ✔️ Distribution
- ✔️ Private use
Conditions
- ❕ License and copyright notice
- ❕ State changes
- ❕ Disclose source
- ❕ Same license
Limitations
- ❌ Liability
- ❌ Warranty
License being used: GNU General Public License v2.0 license