Skip to content

Latest commit

 

History

History
42 lines (37 loc) · 1.25 KB

README.md

File metadata and controls

42 lines (37 loc) · 1.25 KB

mat-os

its mat-os again. this time using limine on x86_64 because it does most of the boring work

image screenshot of the system as of b8c5541

Goals

  • Use C++20 modules doesn't work with clangd :(
  • Use CMake
  • Serial output
  • Working IDT
  • Physical page allocator (very inefficient)
    • A better Physical page allocator
  • Paging (though basic)
  • Virtual page allocator (bump allocator, can't free)
    • A better virtual page allocator
  • PS/2 keyboard input
    • Some way to get key events out of the interrupt
  • Working timer (PIT)
    • Events? Scheduling?
  • Working screen
  • Basic on screen "terminal"
    • Proper terminal interface with commands and such
  • Drawing to the screen
  • Kernel heap allocator
  • Begin windowing system
    • Fix that paint trail bug
    • Proper GUI system
  • PS/2 mouse input
  • Threads
  • Processes
  • A basic in-memory filesystem
  • Begin user-space

Apps

  • Use ELF for apps?
  • A simple text editor
  • File explorer app

Misc

  • QOI image support