Sterling OS Design Document

Minimal Capability-Based Operating System

Design Principles

Authorization Token Model

Programs delegate access via opaque, kernel-managed tokens.

grant_token(target_pid, resource_id, flags) -> token_id
accept_token(token_id) -> resource_handle
revoke_token(token_id)

File Editing Flow

  1. DE requests file via storage service
  2. Storage service provides a memory buffer
  3. Editor process receives buffer handle, edits
  4. Changes submitted back to storage via DE

Driver Model

Graphics System

Programming Language Requirements

Execution Model

Sandboxing Model

All processes are isolated via strict memory boundaries and capability-scoped access. No process can access global state, shared memory, or system calls without explicit capability grants.

Memory Layout

	+-----------------------+
	| Code (RX)             |
	+-----------------------+
	| Data (RW)             |
	+-----------------------+
	| Shared Buffers (RWX?) | ← only if explicitly mapped by kernel
	+-----------------------+
	| Stack (RW)            |
	+-----------------------+
	

Process Launch

Capability Enforcement

All access is mediated via capability tokens, handed off securely:


	token_id = request_token(pid, SERVICE_IO, READ_WRITE);
	handle = accept_token(token_id);
	

Filesystem Abstraction

Driver Isolation

IPC

Future Additions

Philosophy

This OS is not a POSIX clone. It is a deterministic, capability-secure, user-controlled computing environment built to reject legacy complexity and embrace verifiable simplicity.