.NET Compact Framework Architecture
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
The .NET Compact Framework inherits the full .NET Framework architecture of the common language runtime for running managed code. It provides interoperability with the Windows CE operating system of a device so you can access native functions and integrate your favorite native components into your application.
You can run managed and native applications concurrently. The application domain host, itself a native application, starts an instance of the common language runtime for running managed code.
Architecture
The following illustration summarizes the .NET Compact Framework platform architecture.
Windows CE
The .NET Compact Framework uses the Windows CE operating system for core functionality and for several device-specific features. Several types and assemblies, such as for Windows Forms, graphics, drawing, and Web services, were rebuilt to efficiently run on devices, rather than being copied from the full .NET Framework.
The .NET Compact Framework provides the following interoperability with Windows CE:
Compatibility with native security.
Full integration with native setup programs.
Interoperability with native code using COM interop and platform invoke.
Common Language Runtime
The .NET Compact Framework common language runtime (CLR) was also rebuilt to allow constrained resources to run on limited memory, and to efficiently use battery power.
A platform adaptation layer, not shown in the illustration, exists between Windows CE and the common language runtime to map the services and device interfaces required by the CLR and Framework onto Windows CE services and interfaces.
Framework
The .NET Compact Framework is a subset of the .NET Framework and also contains features exclusively designed for the .NET Compact Framework. It provides the features and ease of use that facilitate bringing native device application developers to the .NET Framework and bringing desktop application developers to devices.
Visual Studio
The experience with Microsoft Visual Studio 2005 for developing smart device applications is as easy as with desktop applications. Smart device development in Visual Studio includes a set of project types and emulators that target development for Pocket PC, Smartphone, and embedded Windows CE.
See Also
Reference
Supported Classes in the .NET Compact Framework
Concepts
Visual Studio and the .NET Compact Framework
Application Domains in the .NET Compact Framework