- Main heading
- Setup
- Compilation of Bootloader
- Compilation of Kernel
- Setup of compile-all.sh
- Setup of limine
- Steps
- Running the OS
- Pictures
- Font Package
- Tables
- Articles & Resources
- Common Logs
- Problems & Q and A
- Credits
- Contact
if your building any OS for first time, you have a lot to install
- WSL emulates Linux System in Windows without any virtual machine (skip the step if your using Linux)
- Run `sudo apt update` (in terminal) to Update your WSL/Linux
- Run the following commands:
- `sudo apt-get install build-essential mtools`
- `you need cross compiler too here is a tutorial to set it up`
- `https://www.youtube.com/watch?v=-v6uRjpR_0M`
- If your in linux type this in terminal `sudo apt install qemu`
- If your in WSL goto https://www.qemu.org/ and download from there
Use cd <OS_path>
to get into the OS Dir, then use cd gnu-efi
to enter gnu-efi directory
Use make bootloader
to build the bootloader
Use cd <OS_path>
to get into the OS Dir, then use cd kernel
to enter kernel directory
Use make setup
to make some folders for you, Then use make all
to compile the code, link the code, build the .img
if you get the error permission denied
no problem just type chmod -x compile-all.sh
now you can run it with ./compile-all.sh
Use make limine-update
to get the latest version of limine
- build the bootloader
- build the limine
- build the kernel
- build the bootable image (.img)
Now the OS CAN run in VirtualBox or VMware
so here are the steps to run in qemu
if your in Windows run run.bat
Right now there are some fonts (that I can find) which works with PradoshOS. to install a diffrent font follow the steps below
- if you can't find a PSF type font there is https://github.com/pradosh-arduino/Font-Package right now there is some font if we find more PSF fonts we will add it
- This is a tricky part, first download PowerISO and open the OS image file with PowerISO
- then it's much like a folder there you can see zap-light16.psf replace it with your font but like if the font name is TestFontLmao.psf
- rename the file to exact same name zap-light16.psf and save the file and run again with qemu now you should see the new font
Directory | Description |
---|---|
/EFI | The main EFI Directory |
/EFI/BOOT | The boot folder where the UEFI Shell is located (bootx64.efi) |
/EFI/BOOT/bootx64.efi | The UEFI Shell used for Real Machines |
/EFI/pradx-boot | This is the place where PradX Bootloader is located |
/EFI/pradx-boot/main.efi | The main PradX Bootloader |
/PradoshOS | Here will be some files that are lower level of kernel |
/kernel.elf | The Core PradoshOS Kernel |
/zap-light16.psf | The Font for PradoshOS |
/bootmgr.efi | The limine boot manager (doesn't work yet) |
Build Name | Is Major Version |
---|---|
Dev Build | No |
vbox-bootable | No |
Alpha | Sort Of |
Beta | Sort OF |
Pre-release | Yes |
Release Candidate | Yes |
Release | Most Major version |
Kernel Info | Values |
---|---|
Stack Size | 0x1000 |
Kernel File Type | Elf64 |
Kernel Arch | 64 bit |
Kernel Type | Monolithic, Modular |
Kernel Stability | 6/10 |
Kernel Performance | 8/10 |
https://wiki.osdev.org/Bare_Bones
https://wiki.osdev.org/Introduction
https://wiki.osdev.org/Interrupts
https://www.geeksforgeeks.org/5-operating-system-concepts-you-should-know-as-a-developer/
https://www.wfbsoftware.de/realtek-rtl8139-network-interface-card/
https://en.wikipedia.org/wiki/Sound_Blaster
https://en.wikipedia.org/wiki/Bus_mastering
https://wiki.osdev.org/Sound_Blaster_16
- 12/12/21 = Fixed a Release Date
after changing the file structure there is high chance of bootlooping, if it started bootlooping email me I will try to help you ASAP
General protection fault, Page fault, Double Fault will occur various reasons it's recommended to Contact me or create a issue in https://github.com/pradosh-arduino/PradoshOS/issues
Q: Qemu stuck while booting (Tiano Core)
A: That means UEFI binaries had corrupted which is a normal thing, goto https://github.com/pradosh-arduino/UEFI-Firmware and download the files then paste it in OVMFbin
Q: Will there be support for any other CPU Architectures than x86_64(64 bit)?
A: No, only x86_64(64 bit) maybe I will make for 32 bit but 99% I'm not gonna do it
Q: When Will the PradoshOS will get released?
A: Ok I Set the Fixed Date I started my OS on March 31 2021 so release date is March 31 2022
There were some awesome people who helped me in my OS Dev journey they are
E-Mail: pradoshnathan@gmail.com or pradoshgame@gmail.com
Discord: helloImPR#6776
Discord Server: https://discord.gg/ChP4RMgcKG