Application Domains

Isolation is an important technique to increase system robustness, to establish security boundaries, and to have more granular control over execution. This well-known fact is mirrored in the design of many platforms. For example, when executables on Windows are run, the operating system executes them in separate processes to achieve isolation between them. This isolation applies to various resources such as the memory, operating system objects, and so on. By doing so, one crashing process cannot take down the whole system, and security boundaries can be established to prevent malicious code from affecting other processes (which could otherwise lead to security breaches).

The CLR has similar means of isolating groups of assemblies ...

Get C# 5.0 Unleashed now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.