Basic Core is an educational project designed to explore the fundamental principles of creating a bootloader and an operating system kernel. The project is divided into two stages: a simple assembler bootloader and a bootloader that transitions into 32-bit mode and calls a C++ function.
The repository contains two main folders:
This stage features a simple assembly bootloader that displays "Hello, World!" on the screen. It serves as an introduction to bootloader development and understanding low-level system interactions.
In this stage, the bootloader transitions the system to 32-bit protected mode and calls a C++ function within the kernel. The kernel then outputs text to the console. This stage introduces concepts of kernel development and the interaction between assembly and C++.
- Stage 1: Basic bootloader with a simple message.
- Stage 2: A more advanced bootloader that initializes 32-bit mode and integrates with a C++ kernel.
- Clone the repository:
https://github.com/alx0rr/Simple-kernel.git - Navigate to the desired stage folder.
- Run the build script provided in the folder.
- Assembly and C++ compilers (e.g.,
nasm,gcc, orclang). - An x86 emulator (e.g., QEMU or VirtualBox) for testing.
Contributions are welcome! If you have improvements or find issues, feel free to open a pull request or issue.
This project is licensed under the MIT License. See the LICENSE file for details.