imgs | ||
kernel | ||
.gitignore | ||
.travis.yml | ||
bochs_cfg | ||
fs_generator.c | ||
grub.cfg | ||
LICENSE | ||
link.ld | ||
Makefile | ||
README.md |
About iceOS
iceOS is a x86 monolithic kernel written in C from scratch following the UNIX philosophy. This project is just a student learning tool to know more about operating systems, do not expect nothing more than a toy.
Installation
Requirements
Before building this project you need to setup a cross compiler. Also install the following packages:
- nasm
- bochs
- grub
- mtools(only for Arch Linux)
After that, you can build iceOS just by running the command listed below.
- Type
make all
to compile the system and to create an ISO - Type
make run
to start it in QEMU ormake bochs
to start it with bochs(only for debug purposes).
You can also find a ISO file
here(md5sum: 342691301699a73102fa6a57abea6989
)
Features
iceOS has the following features:
- VGA driver
- Interrupts
- PIC & PIT driver
- PS/2 driver
- Heap
- Paging
- VFS driver
Tutorial
I'm also writing a tutorial about this project. If you are interested about OS development and you're looking for a detailed step-by-step tutorial, have a look at my website.
License
iceOS is released under GPLv3, you can obtain a copy of this license by cloning this repository or by visiting this page.