🌋 Monolithic x86 kernel written in C and Assembly
Go to file
ice-bit ba9feaba18 Fixed Interrupts bug:
It was a problem about ports(cpu/ports.asm) functions.
2019-07-06 00:32:41 +02:00
isodir/boot Fixed Interrupts bug: 2019-07-06 00:32:41 +02:00
kernel Fixed Interrupts bug: 2019-07-06 00:32:41 +02:00
.gitignore Finxing interrupts... 2019-07-05 21:12:18 +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 Fixed printf and VGA driver bugs, also added README 2019-07-04 01:58:34 +02:00
iceOS.iso Fixed Interrupts bug: 2019-07-06 00:32:41 +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 Fixed printf and VGA driver bugs, also added README 2019-07-04 01:58:34 +02:00
README.md Fixed Interrupts bug: 2019-07-06 00:32:41 +02:00

iceOS

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).

Features

iceOS already have/will have the following features:

  • Bare metal booting;
  • VGA driver;
  • Interrupts implementation;
  • PIC & PIT implementation;
  • PS2 driver;
  • Support for x86 architecture;
  • GRUB as bootloader;
  • Paging;
  • Dynamic memory allocation(heap).

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.