Das System
Alles eigen. Vom Loader bis zur Datenbank.
Rund 70 % Roboter, rund 30 % normale Programme wie Server. Kernel, Treiber, Dienste und Programme sind in Embedded Swift geschrieben; C gibt es nur im EFI-Loader, Assembler nur dort, wo es nicht anders geht.
Echtzeit eingebaut
Scheduler je Kern, tickless, mit EDF und Zulassungsprüfung. Der letzte Kern ist für Echtzeit reserviert. Programme nennen Periode, Budget und Reaktion im signierten Manifest – passt der Vertrag nicht, startet das Programm gar nicht erst.
Not-Halt im Kernel
Stoppt alle Aktoren sofort – über den immer sichtbaren Knopf in der Menüleiste, ⌘+Esc (auch während der Start-Animation) oder die Statusseite von Server. Programme kommen nie direkt an Motor oder Bus: Der Aktor-Dienst begrenzt jede Bewegung.
Geschützte Treiber
Riskante Teile wie USB und Grafik laufen als isolierte Dienste im Benutzer-Modus. USB nur mit Erlaubnisliste: HID, CDC-ACM, UVC und signierte Herstellertreiber – jede andere Schnittstelle lehnt das ganze Gerät ab.
SOFTrobotsFS
Eigenes Dateisystem: Copy-on-Write, B+-Bäume, CRC-32C auf allem, AES-256-GCM je Block. Bei Stromausfall immer der alte oder der neue Stand, nie etwas dazwischen. Snapshots alle 15 Minuten – der Zeitregler in Files zeigt alte Stände.
SOFTrobotsDB
Die Datenbank lebt im Dateisystem: Tabellen als Formen, der Kernel prüft jede Zeile, Indexe, Abfragen, SQL in der Console. Dazu Serien für Telemetrie und ein Flugschreiber, der bei Not-Halt die letzten Sekunden sichert.
Alles ist eine Form
Eigene Formsprache (.shape): Eine Definition beschreibt API, Prüfcode im Kernel, Datenbanktabellen, Ringe und Netz. Veröffentlichte Felder behalten ihren Platz.
Reflex & Develop
Eigene Skriptsprache, im System selbst übersetzt. Develop prüft bei jeder Taste, simuliert Ereignisse, übersetzt mit „Fast“ zu ARM64-Code – und beweist Echtzeit: Der Compiler zählt die schlechtesten Takte und startet nur, was in 80 % der Periode passt.
Buddy, der Wachhund
Ein kleiner Hund auf dem Desktop, der die Logs nach Regeln beobachtet und meldet, wenn etwas schiefgeht. „Ask Claude“ in seiner Sprechblase schickt den Fund nur auf Klick. In Settings: an, leise oder aus.
KI im Gerät
Objekterkennung mit eigener int8-Inferenz und signierten Modellen, dazu AprilTag, Farbflecken und Bewegung. Die Bilder bleiben auf dem Gerät; Ergebnisse gehen als Ring an Roboterprogramme.
Programme
Files mit Zeitregler, Web (Lese-Browser ohne JavaScript und ohne Cookies), Video (WebM mit VP9 und Opus, Aufnahme), Sound (nimmt FLAC und WAV auf), Reader (PDF zeigen, suchen, markieren), Database, Benchmark, Activity, Console, Settings, Server, Ask.
Server: das einzige Tor
Nur Tür 443 (alles hinter dem Login) und Tür 80 (Umleitung), kein öffentlicher Webserver. Eigene Stammstelle des Roboters, Zugang per Einladung. Von unterwegs über das VPN des Heimrouters.
Eigenes Netz
Netzwerk-Stack in Swift: IPv6 zuerst, IPv4, TCP mit SACK und CUBIC, mDNS. Nur TLS 1.3, Namen nur über DNS über HTTPS, Uhrzeit über NTS. Eine konfigurierbare Firewall braucht es nicht: Ein Port ohne Lauscher antwortet gar nicht.