What is a CLR? Is it's a DLL or EXE?

  • Thread starter Thread starter Guest
  • Start date Start date
The CLR or Common Language Runtime is part of the .NET Framework which
provides an object oriented wrapper for the underlying Win32 API. The CLR
can be considered as a giant class-library, divided up into the many
assemblies making up the .NET Framework, such as System.Web.dll etc.

Not to be confused with the CLR is the CTS or Common Type System which was
devised to solve many of the cross-platform and cross-language problems that
we had to deal with prior to .NET. The CTS's role is to define how the many
variable types such as string, int etc are physicallty implemented, and to
standardise calling conventions across langauages. Prior to this developers
had be aware of bit-order (little-endian/big-endian) of variables when
communicating between platforms and also the order in which parameters are
passed to function (Pascal - left-to-right, C/C++ - right-to-left).

I think this is correct, but check out the following to confirm:

http://www.gotdotnet.com/team/clr/about_clr.aspx
http://msdn.microsoft.com/library/d...e/html/cpovrintroductiontonetframeworksdk.asp

Ben Fidge
 
The CLR is short for Common Language Runtime. I don't think it is fair
to think of the CLR as a DLL or an EXE per se, it's better to think of
the CLR as an execution environment. The CLR executes code.

That being said, the heart of the CLR is typically thought of as
mscoree.dll, which will live in the system32 directory.
 
Ben thanks for reply.

That definition and description is fine. I can physically see the components
..NET framework class library (System.Web.dll and etc…) and other tools such
as compilers (CSC.exe).

Just I would like to what physical component is which acts as CLR ie which
loads the class, provides GC, and runtime environment.
 
Ben thanks for reply.

That definition and description is fine. I can physically see the components
.NET framework class library (System.Web.dll and etc…) and other tools such
as compilers (CSC.exe).

Just I would like to what physical component is which acts as CLR ie which
loads the class, provides GC, and runtime environment.

There are two versions of the garbage collector for .NET. The garbage
collector optimized for multi-processor machines (packaged in
MSCorSvr.dll), and the workstation garbage collector (packaged in
MsCorWks.dll). These are in the framework directory and chosen by
mscoree.dll
 
Sorry, I misread your question!

I may be mistaken but I believe the mscoree.dll is where it manifests. From
what I gather, this provides the core engine that binds all the external
elements together and is resposible for initiating GC, JIT compilation etc.

Ben
 
Thanks Ben, Thanks Scott.

Ben Fidge said:
Sorry, I misread your question!

I may be mistaken but I believe the mscoree.dll is where it manifests. From
what I gather, this provides the core engine that binds all the external
elements together and is resposible for initiating GC, JIT compilation etc.

Ben
 
Back
Top