🌋 Monolithic x86 kernel written in C and Assembly
Go to file
Cetica Marco f13837f6f8 Added system fetcher and strcpy(string.h) 2021-01-03 18:24:55 +01:00
imgs Changing project name... 2021-01-02 16:15:36 +01:00
kernel Added system fetcher and strcpy(string.h) 2021-01-03 18:24:55 +01:00
.gitignore Finxing interrupts... 2019-07-05 21:12:18 +02:00
.travis.yml Added travis support 2019-09-27 01:00:15 +02:00
LICENSE Fixed printf and VGA driver bugs, also added README 2019-07-04 01:58:34 +02:00
Makefile Added time RTC library 2021-01-02 17:49:15 +01:00
README.md Update README.md 2021-01-02 16:22:23 +01: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 Added last part of paging, print_hex function and updated linker script 2019-09-23 17:27:21 +02:00

README.md

VulcanOS Build Status

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

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

You can also find a ISO file here(md5sum: 5a969460e63eb5c4dcfa943dc2a3f39f)

Features

iceOS has the following features:

  • VGA driver
  • Interrupts
  • PIC & PIT driver
  • PS/2 driver
  • Heap
  • Paging
  • VFS driver
  • Usermode

License

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