Skip to content

romancewastaken/DeathOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DeathOS

Boot loader written in assembly, checks for 64 bit support and then checks for long_mode

File/Folder navigation

  • 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

Setup

  • docker build buildenv -t deathos-buildenv

Load env

  • 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

Build

  • make build-x86_64

Emulate

Personally, I use qemu, but you can feel free to use something easier such as Virtual Box

Real hardware/Barebones

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

Licensing

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

About

bootloader written in assembly, then switches to C

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published