Reword, comma.

This commit is contained in:
linse 2017-09-16 18:03:19 -04:00
parent 6dd0b6d62b
commit afd52350b9

View file

@ -65,8 +65,8 @@ as boot parameter.
MirageOS is an event based operating system with asynchronous tasks. A task MirageOS is an event based operating system with asynchronous tasks. A task
yields the CPU once its execution is finished, or if it has to wait for IO. yields the CPU once its execution is finished, or if it has to wait for IO.
This concurrency model leads to a cooperative multitasking programming style, This concurrency model leads to a cooperative multitasking programming style,
rather than the error prone preemptive multitasking where each code block needs rather than the error prone preemptive multitasking, where each code block needs
to make sure to use appropriate locking strategies, to avoid reentrant execution errors. to make sure to use appropriate locking strategies to avoid reentrant execution errors.
A recent example for code which is not safe under 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/) [in Ethereum](http://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/)
@ -86,9 +86,8 @@ An example for corrupting the page table is [Xen's XSA-182](http://xenbits.xen.o
### Simple library model with localized reasoning ### Simple library model with localized reasoning
As stated above, a MirageOS unikernel is much smaller than a comparable UNIX A MirageOS unikernel is much smaller than a comparable UNIX
virtual machine, since only the required libraries are linked into the virtual virtual machine. By avoiding superfluous code we decrease the attack surface
machine image. By avoiding superfluous code we decrease the attack surface
immensly. immensly.
As example, the lines of code of the [Bitcoin Piñata](/Projects/Pinata) compared As example, the lines of code of the [Bitcoin Piñata](/Projects/Pinata) compared