1.5. The .NET Common Language Runtime

The CLR provides several basic runtime services:

  • Class loading. A class loader loads the assembly into memory.

  • Assembly integrity check. In addition to IL codes, each .NET assembly [13] contains a manifest. The manifest contains a hash code of the assembly contents. A check is made to see if the assembly contents have been altered based on this hash code. The CLR refuses to run assemblies that have been altered. This is an additional layer of protection to prevent malicious and illegal alteration of assemblies after distribution.

    [13] In short, a .NET assembly consists of individual software components placed together in a logical group. An assembly can consist of a single class or multiple classes. Assemblies ...

Get From Java to C#: A Developer's Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.