Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
sen/README.md

34 lines
1.1 KiB
Markdown

# sen
This is my custom kernel for learning purposes. I'm not a osdev at all, so please excuse the mess.
Right now it compiles for `x86_64`, 32-bit is not supported. Most of this is just skeleton code from osdev.org, but I cleaned
some stuff. I use Stivale for higher half kernel loading and not having to gaff about a bootloader for now. Limine is included
as my bootloader of choice.
## Organization
This file organization is definitely not final, and will be shuffled around as sen is developed. Currently it is:
* `src/` - All of the source files for sen, including ld configs etc.
* `boot/` - Bootloader-related sources and entrypoints.
* `drivers/` - Drivers for specific subsystems in the kernel, such as tty drivers.
* `kernel/` - Vendor-agnostic stuff like the actual loop, the startup sequence, etc. This also contains the public kernel interface.
## Building
Currently, sen requires GNU make, and some version of GCC. If you wish to build the iso, you also need xorriso.
Run make to build the elf:
```
make
```
Or if you wish to start a quick qemu test, use `run.sh`:
```
./run.sh
```
## Credit
- https://wiki.osdev.org/ of course!