The CLR (Common language runtime, Common Language Runtime), as well as a Java virtual machine, is a runtime environment that can be used by a variety of programming languages. The core features of the CLR include memory management, assembly loading, security, exception handling, and thread synchronization, which can be used by all languages that target the CLR. and ensure the necessary separation between the application and the underlying operating system. The CLR is the primary execution engine for the. NET Framework. [1]
To improve the reliability of the platform and to achieve the level of stability required for transaction-oriented e-commerce applications, the CLR is responsible for a number of other tasks, such as monitoring the operation of the program. According to. NET, a program running under CLR monitoring belongs to "managed" (managed) code, while an application or component that is not under the CLR, running directly on bare metal, belongs to "unmanaged" (unmanaged) code.
The CLR monitors a wide variety of common programming errors that have been the main source of software failures for many years, including access to array elements out of bounds, access to unallocated memory space, memory overruns due to large data volumes, and so on.
However, this monitoring of the running of managed code is a cost. While it is not currently possible to accurately get the overhead required to monitor a program's operation, from the performance of the current beta version, as Microsoft has admitted, we can expect it to result in at least 10% performance degradation. Of course, if the monitor runs to improve stability and usability to a new level, will we still suspect that the 10% performance degradation is a bad thing?
Moore's law has been proven to be correct in terms of processor performance improvements. That being the case, we're going to have to wait for a server with a 10% increase in performance.
NET provides the common language runtime as a multi-language execution environment that supports numerous data types and language features. He manages the execution of the Code and makes the development process easier. This is a controllable execution environment, and its functions are shared with other tools through the compiler.
Code developed by a compiler that targets the runtime is called a manipulated code.
Metadata: In order for the runtime environment to serve the controllable code, the language compiler needs to produce a meta-data that will provide the type, member, and reference information in the language in which it is used. The runtime environment uses metadata to locate and load classes, expand object instances in memory, resolve method calls, generate local code, enforce security, and establish the boundaries of the runtime environment.
The meaning of controllable execution: the object is fully controlled by the runtime environment during execution. The runtime environment provides the following services: Automatic memory management, debugging support, enhanced security, and interoperability with non-controllable code. Condition: 1, select the language compiler that targets the runtime, such as VB, C#;2, and the language attributes required by the CLR in the output type of the component.
"C # Learning" on the collation of theoretical concepts