Really wondering how inside of .NET works…
More resources will be linked later.
Common Language Runtime (CLR) overview - .NET
runtime/README.md at main · dotnet/runtime
.NET implementations - .NET
Command Language Runtime/.NET Runtime
the Compiler and tools compile the code for CLR to run via APIs. In order for the runtime to enable the CLR to provide services to managed code
runtime/intro-to-clr.md at main · dotnet/runtime
Intermediate Language (IL)
A compact code format that can be supported on any operating system or architecture. Most .NET apps use APIs that are supported in multiple environments.
.NET Standard
runtime/dotnet-standards.md at main · dotnet/runtime
The CLR fixes problems like these by defining a very complete specification
(standardized by ECMA) containing the details you need for the COMPLETE
lifecycle of a program, from construction and binding through
deployment and execution. Thus, among other things, the CLR specifies:
- A GC-aware virtual machine with its own instruction set (called the
Common Intermediate Language (CIL)) used to specify the primitive
operations that programs perform. This means the CLR is not dependent
on a particular type of CPU.
- A rich meta data representation for program declarations (e.g.,
types, fields, methods, etc), so that compilers generating other
executables have the information they need to call functionality from
'outside'.
- A file format that specifies exactly how to lay the bits down in a
file, so that you can properly speak of a CLR EXE that is not tied to a
particular operating system or computer hardware.
- The lifetime semantics of a loaded program, the mechanism by which
one CLR EXE file can refer to another CLR EXE and the rules on how the
runtime finds the referenced files at execution time.
- A class library that leverages the features that the CLR provides
(e.g., garbage collection, exceptions, or generic types) to give access
both to basic functionality (e.g., integers, strings, arrays, lists, or
dictionaries) as well as to operating system services (e.g., files,
network, or user interaction).