Windows IT Pro is the leading independent community for IT professionals deploying Microsoft Windows server and client applications and technologies.
  
  
  Advanced Search 


May 2002

Get Ready for .NET

RSS
Subscribe to Windows Web Solutions | See More Active Server Pages (ASP) Articles Here | Reprints | Or get the Monthly Online Pass—only $5.95 a month!
SideBar    Obtaining the .NET Framework

Understanding the Microsoft .NET Framework

Between the Microsoft .NET Framework and Microsoft Visual Studio .NET (the tool that helps developers build .NET applications), developers have never had so much exciting power at their fingertips. But with this exciting developer technology comes the daunting task of providing a solid, secure platform on which to deploy these new applications. Before you can build and administer such a platform, you must understand the key features of the .NET Framework—the Common Language Runtime (CLR) and the .NET Framework class library—and the implications of installing the .NET Framework in your production environment.

What's the .NET Framework?
The Microsoft marketing machine spent more than 2 years trying to explain to the technology masses just what .NET is. I've found that the objectives the .NET Framework attempts to accomplish best describe it. As the .NET Framework software development kit (SDK) documentation states, the .NET Framework is designed to fulfill these objectives:

  • Provide a consistent, object-oriented programming environment whether object code is stored and executed locally, executed locally but Internet-distributed, or executed remotely.
  • Provide a code-execution environment that minimizes software deployment and versioning conflicts.
  • Provide a code-execution environment that guarantees safe execution of code, including code created by an unknown or semitrusted third party.
  • Provide a code-execution environment that eliminates the performance problems of scripted or interpreted environments.
  • Make the developer experience consistent across widely varying types of applications, such as Windows-based applications and Web-based applications.
  • Build all communication on industry standards to ensure that code based on the .NET Framework can integrate with any other code.

The .NET Framework has two main components: the CLR and the .NET Framework class library.

The CLR
The CLR, which is the foundation of the .NET Framework, is a negotiator that manages code at execution time. The CLR provides core services, such as

  • memory management—The CLR's garbage collector automatically manages the allocation and release of memory for an application. This management is a big win for IIS administrators who have suffered Web server crashes and subsequent memory leaks because of developer mistakes.
  • thread management—Threads are the basic unit to which the OS allocates CPU time. The OS uses processes to separate the different applications that it executes, and more than one thread can be executing code within those processes.
  • remoting—Remoting enables different applications to communicate with one another.
  • enforcement of strict type safety—Type-safe code is code that accesses types (e.g., memory) in well-defined, structural ways and has strict rules that help prevent mistakes.

The concept of code management is a fundamental principle of the CLR, and applications that the CLR manages are called managed applications. Applications such as Active Server Pages (ASP) applications that aren't targeted to the CLR (i.e., aren't written on the .NET Framework) are called unmanaged applications. Managed applications benefit from features such as cross-language integration, cross-language exception handling, enhanced security, versioning and deployment support, a simplified model for component interaction, and debugging and profiling services.

When you compile a managed application, a .NET language compiler translates your source code into Microsoft intermediate language (MSIL) code. You can write the source code in any .NET-compliant language—that is, a language for which a .NET language compiler exists. Currently, compilers exist for the languages of Visual Basic .NET, JScript .NET, C#, and managed C++.

MSIL code is a CPU-independent set of instructions. Before the MSIL code can execute, the CLR must convert it to CPU-specific code, usually with a just-in-time (JIT) compiler. JIT compilation takes into account that the runtime engine might never call some code during execution. Therefore, rather than using processing time and memory to convert all the MSIL code to native (i.e., CPU-specific) code at one time, the JIT compiler converts the MSIL code on an as-needed basis during execution. The compiler stores the resulting native code so that it's accessible for subsequent calls. Because the CLR supplies JIT compilers for each computer architecture that the CLR supports, the same MSIL code can be JIT-compiled and executed on any supported architecture.

The .NET Framework Class Library
The class library, the second main component of the .NET Framework, is a comprehensive, object-oriented collection of reusable data types that developers use to write .NET applications. You can parallel the class library to the Win32 API set, which historically developers have used to leverage resources such as OS functionality. The .NET Framework includes classes, interfaces, and value types that optimize the software-development process by making it easier to build powerful software. The class library, like the Win32 API set, provides access to system functionality such as editing the IIS metabase and stopping the Web server.

   Previous  [1]  2  Next 


Top Viewed ArticlesView all articles
Command Prompt Tricks

One reader shares his tip for setting up the command prompt to reflect a remote path. ...

WinInfo Short Takes: Week of November 23, 2009

An often irreverent look at some of the week's other news, including some post-PDC some soul searching, a Google Chrome OS announcement and a Microsoft response, Windows 7 off to a supposedly strong start, the Jonas Brothers and Xbox 360, and so much more ...

2009 Windows IT Pro Editors' Best and Community Choice Awards

Picking a favorite product from an impressive crowd of competitive offerings is never an easy task, and such was the case with our Editors' Best and Community Choice awards this year. ...


IIS and Web Administration Whitepapers Best Practices for SharePoint Backup & Recovery

Meeting Compliance Objectives in SharePoint

Improve SharePoint Performance for Remote Workers

Related Events Deep Dive into Windows Server 2008 R2 presented by John Savill

Managing IT Across Multiple Locations

Top 11 Reasons Why Oracle Database 11g on Windows is Right For You

Check out our list of Free Email Newsletters!

IIS and Web Administration eBooks Web Filtering: An Assessment

Understanding and Leveraging Code Signing Technologies

Keeping Your Business Safe from Attack: Monitoring and Managing Your Network Security

Related IIS and Web Administration Resources Introducing Left-Brain.com, the online IT bookstore
Looking for books, CDs, toolkits, eBooks? Prime your mind at Left-Brain.com

Discover Windows IT Pro eLearning Series!
Clear & detailed technical information and helpful how-to's, all in our trademark no-nonsense format


Windows IT Pro Home Register FAQ for Windows WinInfo News
Europe Edition About Us Contact Us/Customer Service Media Kit Affiliates / Licensing  
SQL Server Magazine Office & SharePoint Pro DevProConnections IT Job Hound
Left-Brain.com Technology Resource Directory asp.netPRO ITTV Windows SuperSite 
 
 Windows IT Pro is a Division of Penton Media Inc.
 © 2009 Penton Media, Inc. Terms of Use | Privacy Statement