1. Virtual Object System-Vos
It supports both procedural and object-oriented languages, and provides a variety of types of systems to accommodate
Language features. For procedural language, it describes the value type and specifies the rules that all values of the type must comply.
For the object-oriented language, it unifies the object models of different programming languages. Each object is uniquely identified in the VOS
It is different from other objects.
2. Metadata
Metadata is a name for the type description code in Vos. When the compiler converts the source code into intermediate code
It is dynamically generated and included in the binary code file together with the compiled source code. Metadata carries the type information in the source code
Description, which solves the version problem to some extent. The type description used by the program is bound with it.
When the CLR locates and loads the type, the system reads and parses the metadata to obtain the type information in the application. The JIT Compiler
After obtaining the loaded type information, translate the intermediate language code into local code, and create
Instance. Since throughout the process, CLR always establishes and manages the types of corresponding applications based on the metadata
This ensures the type security.
In addition, metadata has its own role in calling solutions and establishing runtime context boundaries. The number of elements
All data is done by. net in the background.
3. Public language specification ---- CLS
CLS is a set of CLR-defined language features, mainly used to solve interoperability problems. If a class library complies with CLs
Other things that comply with the CLS specifications become the language that will be able to use its external visible items. All CLS supported and only use the language features in CLS
Is called the CLS component.
In CLs, The system. clscompliantattribute class is used to identify whether a set or class complies with CLS specifications.
The system. clscompliantattriute constructor has a Boolean return value, which indicates that the items associated with it are
No. It complies with CLS specifications.
4. virtual execution system-ves
VES is the implementation of Vos, which is used to drive the runtime environment. The generation and use of metadata, the compliance check of Common Language specifications, and
It manages the memory during application execution. Specifically, ves provides the following functions:
(1) load the intermediate code.
(2) Use JIT to convert the intermediate code to a local code.
(3) Load metadata.
(4) Code Management Service-including the Garbage Collector and exception handling.
(5) customization and debugging services.
(6) thread and environment management.