Shared Source Common Language Infrastructure Taking .NET Across Platforms - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Shared Source Common Language Infrastructure Taking .NET Across Platforms

Description:

Collections. Resources. Reflection. Net. IO. Threading. Text. ServiceProcess. Security. Runtime ... Designers. SDK Tools. CorDBG. ILAsm. ILDbDump. SN. ILDAsm ... – PowerPoint PPT presentation

Number of Views:77
Avg rating:3.0/5.0
Slides: 23
Provided by: foss
Category:

less

Transcript and Presenter's Notes

Title: Shared Source Common Language Infrastructure Taking .NET Across Platforms


1
Shared Source Common Language InfrastructureTaki
ng .NET Across Platforms!
  • Tarun Anand
  • Janakiram MSV

2
Agenda
  • Tour of Microsoft .NET
  • What is Rotor?
  • Internals of Rotor
  • Extending Rotor
  • Q A

3
Agenda
  • Tour of Microsoft .NET
  • What is Rotor?
  • Internals of Rotor
  • Extending Rotor
  • Q A

4
Design Goals of Microsoft .NET
  • Language Independent
  • High Performance JIT Compiler
  • Reusable APIs (.NET Framework)
  • Secure Platform
  • Version Resilient
  • Consistent Platform from Server to Devices
  • (Potentially) Platform Independent

5
.NET is Specification Based
  • CLI Common Language Infrastructure
  • CTS Common Type System
  • CLS Common Language Specification
  • CIL Common Intermediate Language
  • C Modern Object Oriented Language
  • All the above are submitted to ECMA and ISO

6
Microsoft .NETExecution Model
Source code
Managed code
7
Current Implementations
  • .NET Framework V1
  • Commercial
  • Runs on Win9x to Win.NET
  • Proven
  • .NET Compact Framework
  • Commercial
  • Targets devices like PDA and memory Constrained
    gadgets like phones
  • Based on profiles
  • Currently in Beta1, will be RTMd later this year

8
Agenda
  • Tour of Microsoft .NET
  • What is Rotor?
  • Internals of Rotor
  • Extending Rotor
  • Q A

9
What is Rotor?
  • Code name for cross-platform implementation of
    .NET
  • Current ECMA standard
  • Proposed ISO standard
  • Encourages portability
  • Proof-of-Concept from Microsoft
  • Currently supported on FreeBSD and Windows XP

10
Agenda
  • Tour of Microsoft .NET
  • What is Rotor?
  • Internals of Rotor
  • Extending Rotor
  • Q A

11
Rotor Project
  • Packaged as single 11MB compressed file archive
  • 1.9 million lines of code
  • 1.15M of C and C
  • 625K of C
  • 125K of CIL (intermediate language)
  • 5900 source files (9700 total)
  • Build output
  • 1200 defined types
  • About 20 dynamically loadable libraries
  • About 22 executable programs

12
Platform Adoption Layer
  • Mini operating environment based on Win32
    semantics
  • Threading, SEH, IO and Debugging
  • Gets compiled first and provides the runtime for
    compilers, tools and the execution engine
  • Rotors portability heavily relies on PAL
  • Porting PAL and JIT engine is porting CLR
  • Made up of rotor_pal and rotor_palrt

13
Rotor- The Big Picture
14
Assembly Execution
15
The Shared Source CLI (Rotor)
16
Relationship of Shared Source CLIand .NET
Frameworks (CLR)
  • .NET Framework gtRotorgtCLI
  • Shared source CLI implementation differs
  • JIT and garbage collector replaced with more
    portable, more approachable, implementations
  • Many Windows-specific features not included COM
    interop, WinForms, and other integration
  • Commercial features not included, such as
    ADO.NET, enterprise services, NGEN (JIT-ahead),
    and ASP.NET

17
Agenda
  • Tour of Microsoft .NET
  • What is Rotor?
  • Internals of Rotor
  • Extending Rotor
  • Q A

18
GUI with Rotor
  • Platform Independent GUI (PIGUI) based on Tcl/Tk
  • Need Tcl 8.3 or higher in the path
  • Based on PInvoke and wrapped in
    SharedSourceCLI.TK.dll
  • Object wrapper in development
  • Execution based on Delegates

19
Some Interesting Projects
  • Data Access
  • Web Services
  • X-Windows Application
  • C IDE
  • Remote Administration Tools
  • CLR Hosting

20
Demo
  • Under the hood.

21
Summary
  • Rotor is a great platform for experimentation
  • SSCLI is a subset of .NET Framework and superset
    of ECMA CLI specs.
  • PAL makes the CLI truly portable
  • Rotor has a pluggable architecture and is
    extensible
  • Start Rotoring today!
  • http//msdn.microsoft.com/net/ecma

22
  • Questions ?
Write a Comment
User Comments (0)
About PowerShow.com