🌋 Monolithic x86 kernel written in C and Assembly
Go to file
2019-07-11 20:13:47 +02:00
imgs Added ISO file and screenshots 2019-07-11 00:29:36 +02:00
kernel Updated interrupt 17: no longer need to push dummy error code 2019-07-10 18:19:45 +02:00
.gitignore Finxing interrupts... 2019-07-05 21:12:18 +02:00
.gitlab-ci.yml Fixing CI 2019-07-10 21:09:59 +02:00
bochs_cfg Fixed all previous bugs...however strange things happens when OS runs 2019-07-03 21:04:05 +02:00
build.sh Now this should be complete 2019-07-08 18:43:45 +02:00
grub.cfg Improved build system 2019-07-11 20:13:47 +02:00
LICENSE Fixed printf and VGA driver bugs, also added README 2019-07-04 01:58:34 +02:00
link.ld Fixed all previous bugs...however strange things happens when OS runs 2019-07-03 21:04:05 +02:00
Makefile Improved build system 2019-07-11 20:13:47 +02:00
README.md Added ISO file and screenshots 2019-07-11 00:29:36 +02:00

iceOS pipeline status

iceOS is a x86 monolithic kernel written in C from scratch.
This project doesn't aim to be a fully functional operating system with tons of drivers and graphical applications, it's just a learning tool to teach myself concepts like Operating Systems, Computer Architecture and Digital Electronics.

Installation

Requirements

Before generating an ISO you have to compile a cross compiler and you also have to install those packets:

  • nasm
  • bochs
  • grub
  • mtools(if you are on Arch Linux)

Then you can run those commands:

  1. Type ./build.sh to compile the system and to create an ISO
  2. Type make run to start it in QEMU or make bochs to start it with bochs(only for debug purposes).

Otherwise you can download an already compiled ISO file here(md5sum: ab3d5b8307015461b44e62d0c2d42806)

Features

iceOS already have/will have the following features:

  • Bare metal booting;
  • VGA driver;
  • Interrupts implementation;
  • PIC & PIT implementation;
  • PS/2 driver;
  • Support for x86 architecture;
  • GRUB as bootloader;

Resources

This project is made with different kind of resources and different kind of knowledges, before starting it i read/studied the following resources:

License

iceOS is released under GPLv3, you can obtain a copy of this license by cloning the repository or by visiting this page.

Screenshot

Here's some screenshot of iceOS running in QEMU and even in real hardware!
gif