🌋 Monolithic x86 kernel written in C and Assembly
Go to file
Marco Cetica b0f4c8a4fd
Reverted to previous state
2024-01-16 09:43:25 +01:00
.github/workflows Reverted to previous state 2024-01-16 09:43:25 +01:00
imgs Reverted to x86, refactored Makefile sysstem. 2021-02-04 15:27:55 +01:00
kernel Reverted to previous state 2024-01-16 09:43:25 +01:00
.gitignore Reverted to x86, refactored Makefile sysstem. 2021-02-04 15:27:55 +01:00
LICENSE Refactoring assembly entry point 2021-02-03 15:59:42 +01:00
Makefile Reverted to x86, refactored Makefile sysstem. 2021-02-04 15:27:55 +01:00
README.md Reverted to previous state 2024-01-16 09:43:25 +01:00
bochs_cfg Refactoring assembly entry point 2021-02-03 15:59:42 +01:00
grub.cfg Refactoring assembly entry point 2021-02-03 15:59:42 +01:00
link.ld Refactoring assembly entry point 2021-02-03 15:59:42 +01:00

README.md

VulcanOS

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.

VulcanOS running under QEMU


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 VulcanOS just by running the commands below:

  1. Type make all to compile the system and to create an ISO file;
  2. Type make run to start it in QEMU or make bochs to start it with bochs.

You can also find an ISO file here(md5sum: 11375e1e169069b85c14d3cb6c5a4f06)

Features

Right now, VulcanOS supports 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.