https://github.com/prbmic19/torus
A 64-bit hobby operating system with the goal of building a bootloader, kernel, and userspace from scratch.
https://github.com/prbmic19/torus
assembly bootloader c hobby-os kernel operating-system os osdev
Last synced: 8 days ago
JSON representation
A 64-bit hobby operating system with the goal of building a bootloader, kernel, and userspace from scratch.
- Host: GitHub
- URL: https://github.com/prbmic19/torus
- Owner: prbmic19
- License: gpl-3.0
- Created: 2026-05-19T07:05:51.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-06-05T12:55:23.000Z (16 days ago)
- Last Synced: 2026-06-05T14:06:37.468Z (16 days ago)
- Topics: assembly, bootloader, c, hobby-os, kernel, operating-system, os, osdev
- Language: C
- Homepage:
- Size: 97.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# Oxell Torus
Torus is a hobby operating system under the Oxell project, created primarily as a learning experience and secondarily because I apparently needed something large enough to sink my free time into.
I intend to build a bootloader, kernel, and userspace from scratch. For now, Torus targets only x86-64, though multi-architecture support is planned.
## Current Status
Very early development.
The kernel sets up a minimal serial-backed console, basic interrupt handling, a PIT-based timer tick, and a higher half memory layout before entering an idle loop. The framebuffer test pattern is temporarily disabled.
## Building
A Linux environment is required.
The build system requires a cross toolchain for the target architecture with ELF output.
### Prerequisites
You will need the following installed:
- GCC
- GNU Binutils
- GNU Make
Minimum supported tool versions have not yet been determined. Using a reasonably recent toolchain is recommended.
Clone the repo and run `make config`. After you have configured the build system, simply run `make`.
```sh
git clone https://github.com/prbmic19/torus
cd torus
make config
make
```
## Running
You will need QEMU installed.
Running Torus should be as simple as `make run` (it will build first if needed).
## License
This project is licensed under the GNU General Public License v3.0. See the [LICENSE](LICENSE) file for details.