next up previous contents index
Next: 2.4 Blocking Model Up: 2 Execution Environments Previous: 2.2 Pure Model

2.3 Impure Model

Components that use the impure execution model act just like those operating in the pure model, except that they may contain global shared state and therefore must be treated as a single ``instance'' for synchronization and reentrancy purposes. For example, many of the functions in liboskit_kern, the kernel support library, set up and access global processor registers and data structures, and are therefore impure. Similarly, some of the functions in the minimal C library, such as malloc and its relatives, inherently require the use of global state and therefore are impure.

The impure execution model has the following properties:



University of Utah Flux Research Group