common language infrastructure
TRANSCRIPT
1
COMMON LANGUAGE INFRASTRUCTURE
The Microsoft CLIAttributesMicrosoft Intermediate LanguageIsolation and AppDomains
2
1. COMMON LANGUAGE INTERFACE CLI is designed to support programs multiple, interoperating High level languages CLI supports programs that do not have to be verified by a class loader CLI provides HLL independence as well as platform independence CLI is implemented as CLR, a part of the overall .NET framework Code and Metadata of various languages are represented as modules in
Microsoft Intermediate Language(MSIL)
3
There are three categories of programs executed in CLI namely, Verifiable and valid Unverifiable and valid Invalid
CLI Module
Portable Executable Common object file format
Intermediate Language Code
4
INTEROPERABILITY: JVM Vs CLI
JVM: JNI is needed Interoperability is at method level
CLI: No such interfaces are needed Interoperability is at method and data level
5
2. ATTRIBUTES
In CLI environment it is possible to assign values for attributes during runtime GetCustomAttribute method serves this purposeExample: conversion inches to centimetres in the metadata
3. MICROSOFT INTERMEDIATE LANGUAGE
The MSIL is Stack oriented Memory architecture contains,
Local data area Argument area Metadata Streams (as Constant Pool in JVM)
As JVM Stack Tracking facility is available in CLI
6
MSIL MEMORY ARCHITECTURE
7
4. ISOLATION AND AppDOMAINS In Multiprogramming environment, programs must be isolated from each other for
security reasons Conventional solution for this isolation is providing individual VM for each process JVM user loader namespaces to achieve isolation among programs CLI supports AppDomains (Processes can share the same VM with isolation)
8
THANK YOU