some examples
This commit is contained in:
parent
0a7f4b339b
commit
dd3c0952f8
1 changed files with 9 additions and 2 deletions
11
Technology
11
Technology
|
@ -68,7 +68,14 @@ 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.
|
||||||
|
|
||||||
TODO: For example ..
|
A recent example for code which is not safe under reentrant execution, [this
|
||||||
|
issue in
|
||||||
|
Ethereum](http://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/)
|
||||||
|
lead to a huge amount of ether being transferred.
|
||||||
|
|
||||||
|
More conventional software, such as [Firefox JavaScript engine](http://www.nist.org/news.php?extend.175),
|
||||||
|
or [php](https://bugs.php.net/bug.php?id=74308) also suffer on a regular basis
|
||||||
|
from issues regarding reentrancy.
|
||||||
|
|
||||||
### Simple process memory model with localized reasoning
|
### Simple process memory model with localized reasoning
|
||||||
|
|
||||||
|
@ -77,7 +84,7 @@ 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
|
uses a single address space, avoiding the need for complex address mapping code
|
||||||
altogether.
|
altogether.
|
||||||
|
|
||||||
TODO: For example ..
|
An example for messing up the page table is [Xen's XSA-182](http://xenbits.xen.org/xsa/advisory-182.html).
|
||||||
|
|
||||||
### Simple library model with localized reasoning
|
### Simple library model with localized reasoning
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue