lambda-fairy / gensokyo

:cherry_blossom: The cute operating system
GNU General Public License v3.0
7 stars 0 forks source link

Document vision #3

Closed lambda-fairy closed 8 years ago

lambda-fairy commented 8 years ago

Intended audience

i.e. me ;)

Design goals

  1. Cute
    • This is the most important design goal. Every other goal is subservient to this goal. The cute shall prevail.
    • Everything must be cute, no exceptions
      • ... including kernel panics
      • ... especially kernel panics
    • Components must be named after Touhou characters (#2)
    • The startup sound must be the intro to Scriabin's Sonata no. 5
      • Seriously look it up, it's amazing
  2. Simple
    • In the Arch Linux sense ("the user should be able to understand the whole system"), not the Windows 10 sense ("the user should never care about what's underneath")
    • Compile everything into a single binary (unikernel)
    • The whole OS image should fit in an EFI boot partition
    • Single address space, ring-0
      • ... because Temple OS is the shizzle
    • Co-operative multitasking
      • This is great for games and music production too -- predictable latency
    • Tiling windows, bitmap fonts
      • A E S T H E T I C
  3. Modern
    • UEFI, not legacy BIOS
    • Paging, not segmentation
      • x64 requires paging for long mode anyways, so it's not like I have a choice
    • Actual graphics drivers, not VGA
      • Most likely Intel only, since other companies don't release specs
      • If Vulkan isn't too hard then I can add that
      • OpenGL is a total clusterfuck and I'll likely never support it
  4. Safe
    • Rust all the things
    • Guard pages, because calling a function shouldn't be unsafe