Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

The .

NET Framework provide a set of core Internet Services that are easily accessible to developers
via a common set of APIs.

 Web Services: These services provide data and services to other applications. Web Services
are the most fundamental building blocks in the Microsoft .NET programming model.

 Standard Communication: Official Web standards (XML, UDDI, SOAP) are used to describe
what Internet data is, and to describe what Web Services can do.

 Internet Storages: Microsoft .NET offers secure and addressable places to store data and
applications on the Web. Allowing all types of Internet devices (PCs, Palmtops, Phones) to
access data and applications. These Web Services are built on Microsoft's existing NTFS, SQL
Server, and Exchange technologies.

 Internet Dynamic Delivery: The framework provides a foundation for reliable automatic


upgrades by demand and installation independent applications.

 Internet Identity: .NET supports many different levels of authentication services like


passwords, wallets, and smart cards. These services are built on existing Microsoft Passport
and Windows Authentication technologies.

 Internet Messaging: The .NET Framework supports integration of messaging, e-mail, voice-


mail, and fax into one unified Internet Service, targeted for all kinds of PCs or smart Internet
devices. These services are built on existing Hotmail, Exchange and Instant Messenger
technologies.

 Internet Calendar: .NET supports Internet integration of work, social, and private home
calendars. Allowing all types of Internet devices (PCs, Palmtops, Phones) to access the data.
These services are built on existing Outlook and Hotmail technologies.

 Internet Directory Services: .NET supports a new kind of directory services that can answer
XML based questions about Internet Services, far more exactly than search engines and yellow
pages. These services are built on the UDDI standard.

 CTS

Common Type System (CTS) describes the datatypes that can be used by
managed code. CTS defines how these types are declared, used and managed in
the runtime. It facilitates cross-language integration, type safety, and high-
performance code execution. The rules defined in CTS can be used to define
your own classes and values.

 OR we can also understand like,

CTS deals with the data type. So here we have several languages and each
and every language has its own data type and one language data type cannot
be understandable by other languages but .NET Framework language can
understand all the data types.
 C# has an int data type and VB.NET has Integer data type. Hence a variable
declared as an int in C# and Integer in VB.NET, finally after compilation, uses
the same structure Int32 from CTS.

 Mono, the open source development platform based on the .NET Framework,
allows developers to build cross-platform applications with improved developer
productivity. Mono’s .NET implementation is based on the ECMA standards
for C# and the Common Language Infrastructure.
 Supported previously by Novell, Xamarin and now Microsoft and the .NET
Foundation, the Mono project has an active and enthusiastic contributing
community. Mono includes both developer tools and the infrastructure needed to
run .NET client and server applications.
 The Components
 There are several components that make up Mono:
 C# Compiler - Mono’s C# compiler is feature complete for C# 1.0, 2.0, 3.0, 4.0,
5.0 and 6.0 (ECMA). A good description of the feature of the various versions is
available on Wikipedia.
 Mono Runtime - The runtime implements the ECMA Common Language
Infrastructure (CLI). The runtime provides a Just-in-Time (JIT) compiler, an
Ahead-of-Time compiler (AOT), a library loader, the garbage collector, a
threading system and interoperability functionality.
 .NET Framework Class Library - The Mono platform provides a comprehensive
set of classes that provide a solid foundation to build applications on. These
classes are compatible with Microsoft’s .Net Framework classes.
 Mono Class Library - Mono also provides many classes that go above and
beyond the Base Class Library provided by Microsoft. These provide additional
functionality that are useful, especially in building Linux applications. Some
examples are classes for Gtk+, Zip files, LDAP, OpenGL, Cairo, POSIX, etc.

3. Mono Framework:
When Microsoft Released .NET framework it opened a vast
possibility of creating powerful, flexible and robust software. But
that was only intended for the Windows platform. What about the
Others? — Then comes the Mono as an open source project in
2001 which brings the .NET Compatible framework classes to
other platforms including its own c#
compiler and CLR(Common Runtime Language). Today
Mono supports almost all .NET features and still increasing its
features.

The code execution for this framework is also same as the .NET
framework :

 - You write code in C#.

 - C# code compiles using the inbuilt C# compiler and


generates Bytecode or Intermediate language. That’s your
build.
 - Build runs on target devices using the Bundled mono
runtime environment(or Common Language Runtime). The
mono runtime takes care of garbage collection, security,
exception handling etc.

mono architecture

Mono’s Code Execution Engine: The mono runtime contains


the code execution engine that converts the bytecode(IL) into
native code. The code execution engine is exposed to 3 modes as
follows:

a.) Just in Time(JIT) compilation: The runtime will turn


bytecode into native code as the code runs.
b.) Ahead of Time(AOT) compilation: This mode of
operation compiles most of the code before the code runs. Still,
there are some exceptions like trampolines and others that still
require JIT to function properly.

c.) Full Static Compilation: Only very few devices support this


mode of the compilation like Apple’s IOS, PlayStation
3 and XBOX. This takes the AOT compilation one step ahead and
generates all the Trampolines, wrappers and proxies and
completely eliminates the need for JIT.

You might also like