3 The Standard Profiles


There are two Standard Profiles. The smallest conforming implementation of the CLI is the Kernel Profile, while the Compact Profile contains additional features useful for applications targeting a more resource-rich set of devices.

A conforming implementation of the CLI shall throw an appropriate exception (e.g., System.Not-ImplementedException, System.MissingMethodException, or System.ExecutionEngineException) when it encounters a feature specified in this Standard but not supported by the particular Profile (see Partition III).

NOTE

Implementers should consider providing tools that statically detect features they do not support so users have an option of checking programs for the presence of such features before running them.


NOTE

Vendors of compliant CLI implementations should specify exactly which configurations of Standard Libraries and Standard Profiles they support.


NOTE

"Features" may be something like the use of a floating point CIL instruction in the implementation of a method when the CLI upon which it is running does not support the Extended Numerics Library. Or, the "feature" might be a call to a method that this Standard specifies exists only when a particular Library is implemented and yet the code making the call is running on an implementation of the CLI that does not support that particular library.


3.1 The Kernel Profile

This profile is the minimal possible conforming implementation of the CLI. It contains the types commonly found in a modern programming language class library plus the classes needed by compilers targeting the CLI.

Contents: Base Class Library, Runtime Infrastructure Library

ANNOTATION

Whereas the Base Class Library is what programmers code with, the Runtime Infrastructure Library is used by compiler writers to support common syntax in languages. For example, certain classes enable array copying, but in a language like C#, that shows up as simple assignment statements, with no calls to the Base Class Library.


3.2 The Compact Profile

This Profile is designed to allow implementation on devices with only modest amounts of physical memory yet provides more functionality than the Kernel Profile alone.

Contents: Kernel Profile, XML Library, Network Library, Reflection Library



The Common Language Infrastructure Annotated Standard (Microsoft. NET Development Series)
The Common Language Infrastructure Annotated Standard (Microsoft. NET Development Series)
ISBN: N/A
EAN: N/A
Year: 2002
Pages: 121

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net