diff --git a/About b/About index 36cb306..6641ab2 100644 --- a/About +++ b/About @@ -5,7 +5,7 @@ title: The concept and team ## Mission At robur we strive to develop robust digital infrastructure. We achieve this goal - by continuous maintainence of permissively licensed (MIT/ISC/BSD) open + by continuous maintenance of permissively licensed (MIT/ISC/BSD) open source libraries, which are used by various partners and supporters. Robur is a non-profit endeavour that strives to enable more people to run their own digital @@ -61,7 +61,7 @@ Eva is an infrastructure software engineer and a researcher. She studied Applied Computer Science in the Natural Sciences, and developed a typechecker for a compiler of a language for optimization problems. In her PhD project she developed metrics to compare forest data structures, with an application in molecular structure comparison. Working as a postdoc in cancer research on molecular structure prediction, she found her way to Brooklyn and Berlin. -In the US tech industry, she works on infrastucture problems with distributed systems on a large scale with millions of users, developing API infrastructure and search infrastructure, with a focus on stateless systems. +In the US tech industry, she works on infrastructure problems with distributed systems on a large scale with millions of users, developing API infrastructure and search infrastructure, with a focus on stateless systems. Her Erdős number is 4. diff --git a/Home b/Home index 818778d..cdc5c33 100644 --- a/Home +++ b/Home @@ -47,4 +47,4 @@ formally verify an entire virtual machine using a theorem prover. The boot time of a unikernel can be measured in a few milliseconds, redeployment -after updates is instantenous. We can create unikernels on demand. +after updates is instantaneous. We can create unikernels on demand. diff --git a/Projects/HomeRouter b/Projects/HomeRouter index a8851e0..e0fb30b 100644 --- a/Projects/HomeRouter +++ b/Projects/HomeRouter @@ -20,7 +20,7 @@ wireless (using WPA2 and WPS) networks, wired network connectivity, communication with the service provider (e.g. using PPP and PPPoE) including authentication, a web server for configuration. -Clients are demanding increasing featuresets, including network storage, voice +Clients are demanding increasing feature sets, including network storage, voice over IP (VoIP) endpoint, virtual private network (VPN) integration, data collector and broker for the Internet of things. diff --git a/Technology b/Technology index 9637b6b..5d938c9 100644 --- a/Technology +++ b/Technology @@ -68,7 +68,7 @@ to make sure to use appropriate locking strategies to avoid reentrant execution A recent example for code which is not safe under reentrant execution [in Ethereum](http://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/) -lead to a huge amount of ether being transferred. +lead to a huge amount of ether being stolen. Established software like the [Firefox JavaScript engine](http://www.nist.org/news.php?extend.175), or [PHP](https://bugs.php.net/bug.php?id=74308) shows similar problems on a regular basis. @@ -80,13 +80,15 @@ address mapping for each process. Since a unikernel is only a single service, it uses a single address space, avoiding the need for complex address mapping code altogether. +[//]: # (I think we should explain the context for mentioning Xen here) + An example for corrupting the page table is [Xen's XSA-182](http://xenbits.xen.org/xsa/advisory-182.html). ### Simple library model with localized reasoning A MirageOS unikernel is much smaller than a comparable UNIX virtual machine. By avoiding superfluous code we decrease the attack surface -immensly. +immensely. Consider the breakdown of the code of the example system [Bitcoin Piñata](/Projects/Pinata) compared to a virtual machine using Linux and OpenSSL, measured in thousands of lines of code: