A surprising amount of work went into the core of the Microsoft .NET Framework for the .NET Framework 3.5 SP1 released in August 2008. Here, I’ll provide in-depth information about the changes that we on the CLR team made to the common language runtime (CLR) and the improvements you can expect by simply running your existing CLR 2.0-based applications against this latest service pack. Most of our effort was centered on improving performance, security, and deployment of applications targeting the .NET platform.
| .NET Versions and CLR Versions |
| .NET Framework Version | Contains CLR Version |
| 2.0 | 2.0 |
| 3.0 | 2.0, 3.0 |
| 3.5 | 2.0 SP1, 3.0 SP1, 3.5 |
| 3.5 SP1 | 2.0 SP2, 3.0 SP2, 3.5 SP1 |
Startup Performance Improvements
Improving the startup performance—in particular, the cold startup time of managed applications—was a primary focus of .NET Framework 3.5 SP1.
Managed assemblies in the .NET Framework are largely precompiled via NGen, and the layout of the code and data in the NGen images has a strong impact on the startup performance of applications that use the framework. In particular, since cold startup time is typically bound by the number of pages of the image that need to be read from disk, any effort to reduce it translates into an effort to better pack the image so that only a small subset of its pages are read during startup.
Further reading here


Recent Comments