gemini://sunshinegardens.org/

notes -- thoughts for the future

SYNOPSIS

I find that a top-down view of a project enables me to see how different parts of the system interact. I also believe that doing so strongly encourages simplicity. This is not a checklist or a specification of requirements. It is an organized backlog of qualities that I find desirable in an operating system. The following outline depicts my vision for os-z.

DESCRIPTION

* Guiding Principles

* Unix Philosophy (a la Plan 9[1])

* The most obvious way to do something should also be the most correct.

* Namespaces are the shit.

* Compatibility is a priority.

* Formally verified, open source hardware platform

* CPU based on LEON3[2]

* GPU based on miaow[3]

* TPM based on OpenTPM[4]

* Wireless based on *?*

* Mostly Rust[5]

* Use HTTP/0.2[6] as the canonical IPC interface

* Launch services on-demand (socket activation)

* Functional, peer to peer package manager

* Code signing

* Deterministic builds

* HAMMER[7]

* seL4[8] ┬Ákernel

* Read-only system image (`os-z/base`)

* Plan 9 namespaces

* Implemented utilizing secure virtualization primitives

* Act as a security boundary (as much as possible)

* Empty and incapable by default

* Open Container server (`appc`)

* High-performance networking stack (`netd`)

* `devd`

* DragonflyBSD-compatible driver server

* BeFS[9]-esque VFS

* Attributes

* System-wide file index

* Shared storage mesh via IPFS

* 9P servers everywhere!

* `/dev/screen`

* `/dev/mouse`

* `/dev/keyboard`

* `/dev/speakers`

* Peer to peer authentication (`peerauth`[10])

* Delegated Identity

* Securely distribute your data and compute load across multiple providers

* m-of-n key distribution scheme combining user, hardware, and operator keys

* Encrypted user data is only exposed in memory

* Powered by web technologies

* Multi-process Servo[11]

* V8

* Badass software for common tasks

* Office

* Media

* Communication

License

This is part of the OS/z User Manual. See copying(7)[12] for copying conditions.

1: http://plan9.bell-labs.com/plan9/

2: https://github.com/os-z/LEON3

3: https://github.com/VerticalResearchGroup/miaow

4: http://opentpm.com/

5: https://www.rust-lang.org/

6: https://os-z.org/man/http02.5/

7: https://www.dragonflybsd.org/hammer/

8: http://sel4.systems/

9: https://en.wikipedia.org/wiki/Be_File_System

10: https://relax.js.org/peerauth/

11: https://servo.org/

12: https://os-z.org/man/copying.7/