https://github.com/orangot/fozos
x64 os made with limine in zig
https://github.com/orangot/fozos
limine os osdev x64 zig ziglang
Last synced: about 2 months ago
JSON representation
x64 os made with limine in zig
- Host: GitHub
- URL: https://github.com/orangot/fozos
- Owner: OranGot
- License: bsd-4-clause
- Created: 2024-12-02T08:38:27.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-03-18T16:29:35.000Z (2 months ago)
- Last Synced: 2025-04-06T07:48:56.957Z (about 2 months ago)
- Topics: limine, os, osdev, x64, zig, ziglang
- Language: Zig
- Homepage:
- Size: 137 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FOZOS
This is an os I am making for fun and it's not intended for any use so far.
## InfoMade with limine.
Supported platforms: x86-64
Written in: zig, c, assembly
## Goals
1. Stable
2. Built in desktop enviroment
3. Customisable
## Features implimented:
1. tty
2. debug printing
3. pmm
4. vmm
5. nvme(basic)
6. gpt
7. EXT2(basic)
8. extremely basic system calls
9. userspace enter
## Build
### Dependencies
To build FOZOS, ensure you have the following dependencies installed:
- `make`
- `zig` (0.14.0)
- `qemu`
- `git`
- `sgdisk`
### Cloning the Repository
Clone the repository recursively to include the Limine submodule(can be slow, can be faster by adding --depth 1):
```bash
git clone --recursive https://github.com/OranGot/FOZOS.git
```
### Building the Kernel
To build the kernel, run:
```bash
make kernel
```
### Running the OS
To run the OS as a disk using QEMU, use:
```bash
sudo make run
```
### Debugging
For debugging purposes, you can build a debug version of the kernel by appending `-dbg` to the target:
```bash
make kernel-dbg
```
To run the debug version, use:
```bash
sudo make run-dbg
```
### Note
Creating the image uses Loop Devices, which require `sudo` permissions. and also `clean` step for delting mount point ect