手记
心无旁骛的计算机, 写下的笔记。
NoWayOS 是如何构建的,以及为什么这样构建。这里的每项主张都附有证据,或明确说明它仍只是设计。
写的是 React,出的是 Rust
设计师继续用 React。设备得到的是原生 Rust。Screen Compiler 如何在构建时把屏幕变成代码,让设备上没有可供攻击的浏览器。
那个不是复制品的备份
阿波罗 11 号带着两套按不同原理构建的制导系统飞行,而且两套都用上了。阿丽亚娜 5 号带着两套完全相同的系统飞行,一个故障让两套都停了。这种差别有个名字,而 NoWayOS 的构建方式,就是为了站在正确的那一边。
每次变更,我们都攻击自己的构建
不可能失败的安全测试说明不了任何问题。所以 NoWayOS 的测试都配有专门为失败而构建的版本,它的关卡则放在拉取请求够不到的地方。
证明能承诺什么
测试尝试的是有人想到的情况。证明覆盖的是全部情况。seL4 的数学证明说了什么,假设了什么,NoWayOS 又站在哪里。
为什么 NoWayOS 设备没有 Shell
大多数专用设备都是一台通用计算机,上面放着一项任务,下面仍然留着其余的一切。我们走了另一条路:每台设备只用它的任务所需的东西来构建,其余的一概不放进去。