🌋 Monolithic x86 kernel written in C and Assembly
Go to file
ice-bit 33a27a2ead Change filename 2019-09-14 00:43:04 +02:00
imgs Change filename 2019-09-14 00:43:04 +02:00
kernel Fixed some bugs and changed ASCII logo 2019-09-14 00:38:11 +02:00
.gitignore Finxing interrupts... 2019-07-05 21:12:18 +02:00
.gitlab-ci.yml Fixing CI 2019-07-11 20:19:34 +02:00
LICENSE Fixed printf and VGA driver bugs, also added README 2019-07-04 01:58:34 +02:00
Makefile Fixed makefile bug 2019-08-02 12:08:23 +02:00
README.md Change filename 2019-09-14 00:43:04 +02:00
bochs_cfg Fixed all previous bugs...however strange things happens when OS runs 2019-07-03 21:04:05 +02:00
fs_generator.c Added VFS driver and initramfs disk creator 2019-09-13 18:16:15 +02:00
grub.cfg Improved build system 2019-07-11 20:13:47 +02:00
link.ld Fixed all previous bugs...however strange things happens when OS runs 2019-07-03 21:04:05 +02:00

README.md



pipeline status
Simple kernel written in C for Intel x86 CPUs

About iceOS

iceOS running under QEMU


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 make all 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.