NGWS SDK Documentation  

This is preliminary documentation and subject to change.
To comment on this topic, please send us email at ngwssdk@microsoft.com. Thanks!

Intermediate Language (IL)

If you compile your source code to managed code, the compiler translates your source code into Intermediate Language (IL), which is a CPU-independent set of instructions that includes instructions for loading, storing, initializing, and calling methods on objects. Along with IL, the compiler produces metadata, which describes the types in your code, including the definition of each type, the signatures of each type's members, the members that your code references, and other data that the runtime uses at execution time.

The IL and metadata are contained in a portable executable (PE) file that is based on and extends the published Microsoft Portable Executable (PE) and Common Object File Format (COFF) used historically for .obj, .dll, and .exe files. This file format, which accommodates IL or native code as well as metadata, enables the operating system to recognize NGWS runtime images. The presence of metadata in the file along with the IL enables your code to describe itself, which means that there is no need for type libraries or IDL. The runtime locates and extracts the metadata from the file as necessary during execution. Before execution, IL must be converted to CPU-specific code by a JIT compiler.