Skip to content

corigan01/FluxedOS

Repository files navigation

FluxedOS

VM

image

Real

image

A hobbyist OS project!

Goals of this project so far

  • Interupts
  • TEXT MODE VGA
  • C++ Loaded from C
  • IRQ Handler
  • PIT
  • PIC
  • ATA (ide) Driver
  • Partition Reader
  • EXT2 file system
  • Virtual File system (SOON.tm)
  • ELF Parser
  • Read and Write
  • Install to Drive
  • Boot from Drive
  • Heap / Memory management
  • Threading
  • Running External Programs
  • VGA GRAPHICS MODE
  • Basic VGA commands like Draw , DrawLine , DrawBox
  • Really Basic UI for running Programs
  • Higher Half Kernel
  • Paging Support
  • Windowing System
  • UserSpace (SOON.tm)
  • Add more to the list after all of these are done! :)

What is this project?

To create an OS in C/C++ that is fast, and is built for modern computers from the ground up

How to compile?

All of these commands are in src! See HERE for build instructions.

Needed Packages:

  • Cmake
  • Ninja
  • clang
  • qemu
  • nasm
  • gcc / g++
  • grub
  • xorriso

Basic Build Instructions

git clone https://github.com/corigan01/FluxedOS
cd FluxedOS

mkdir build
cd build

cmake -GNinja .. # If you want to use make then use "cmake .." instead
ninja mkimg # makes the disk.img file (500mb) 
ninja run

How do I contribute?

  1. Fork the project
  2. Change the code in your project file
  3. Submit a pull request with good context on what you changed
  4. If the pull request is good, the code is now in the main project!

If you need more help use this https://github.com/corigan01/FluxedOS/blob/main/CONTRIBUTING.md.

Non-code contributing

  • If you want to speak about the topics and issues with the OS, please do so in the Issues page.
  • Issues / Spelling Mistakes you find can be reported in issues.
  • If you would like to email me directly about a topic or issue; do so here (corigan01@gmail.com)

Support my work

  • I don't ask for donations yet, I only ask for a star or a fork on my project!
  • If you want to do something else, email me at (corigan01@gmail.com) and we can work something out.

Please note if you do want to email me

  • You don't have to write a formal email

  • I don't care what spicy words you use

  • I should be able to respond to every email in just a few minutes

  • You can send basicly anything normal (no viruses, no p*rn, no garbage)