Skip to content

Supercip971/WingOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Banner

Wingos

WingOS is a small hobbyist 64 bit kernel made with <3 in C++

I am currently working on this rewrite. If you want to see the original version, you can checkout the old branch. Please note that I wrote the old version when I was a beginner in C++ and OS development 3-4 years ago, and I have learned a lot since then.

If you are interested in seeing much more advanced, working, and cool projects, you should visit the brutal project or skift.

Please be aware that this rewrite is a work in progress. And due to my current schedule and my engineering school exams, I don't have much time to work on it. I'm no longer 14 years old, and I am a lot more busy now :⁽.

What the project is about

The project is about creating a small hobbyist kernel that is simple, easy to understand, and fun to work on. It is not meant to be a production-ready kernel, but it doesn't mean that coding should not be taken seriously. Everything should be done with care, and the code should aim to be fast, while being simple and easy to understand.

Dependencies

  • The project uses the cutekit build system.
  • The project uses limine as a bootloader.

Feature list

For now the kernel is still in development, but it has a few key features:

  • is 64 bit
  • is SMP capable (multiple CPU support)
  • has a basic scheduler with SMP support, priority, and CPU affinity support (and support cpu tree for NUMA systems)

Roadmap

  • Boot
  • x86 basic support (interrupt, paging, ...)
  • SMP support (apic, ...)
  • Scheduler (with SMP support, priority, and cpu affinity support)
  • Loading user space app
  • User space (ring 3)
  • Syscalls
  • Spaces and handles
  • Userspace objects
    • Memory management (physical)
    • Memory management (virtual)
    • IPC endpoint
  • Services and IPC (inter process communication)
  • Filesystem and disk support
  • Above and beyond