8000 GitHub - mell-o-tron/MellOs: Minimal, collaboratively written kernel
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

mell-o-tron/MellOs

Repository files navigation

Mellotron Kernel (MellOS)

A minimal, collaboratively written kernel

Why MellOS

Some ten years ago I was gifted a 1994 Compaq Presario, and I figured I could use it to learn how to write a simple operating system. In 2020 I started experimenting with some real mode programs, and eventually I moved on to writing a simple 32 bit kernel.

During the years the project gained some traction, and there are now several wonderful people that have contributed greatly to the project.

Some useful resources

Some of the resources I found most useful are the OSDEV wiki, osdever.net (from which I basically stole the part regarding interrupts), this keyboard scancode map, and of course the most fundamental of all resources: RTFM!!!

Another useful resource is the book "operating systems: principles and practice" by Thomas Anderson (no, not that Mr. Anderson) and Michael Dahlin. I used it to study for my OS class at university and I think it's a very good introduction to the subject.

Documentations

WIP, there should be a markdown file in each directory, which will contain the docs. If you change or add something, try to integrate your change into the docs from now on.

Anything-here

If you make a useful change or addition, you are allowed to use the anything_here file to write whatever you feel like writing; rules are:

  • You may only add content, not delete
  • Be polite
  • Be creative

Features

Current

  • Simple bootloader
  • Interrupt request handling, keyboard and timer support
  • Paging
  • Bitmap-based dynamic memory allocation (kmalloc/krealloc/kfree...)
  • ATA disk driver
  • Simple shell
  • Very, very minimal file system
  • Text editor
  • Minimal VESA graphics driver
  • Mouse driver
  • Simple floppy disk driver

Work in progress

  • Process scheduling
  • Graphics toolkit

Future

  • Spawning processes from the shell

About

Minimal, collaboratively written kernel

Topics

Resources

Stars

Watchers

Forks

Contributors 11

0