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
|
||||
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
|
||||
|
||||
|
@ -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
|
||||
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
|
||||
|
||||
|
|
Loading…
Reference in a new issue