An Investigation into ROTOR and C-Sharp(C#) Zunaid Jogee Supervisors: Prof. P. Wentworth T. Stakemire
Outline What is ROTOR? Execution Model Execution state Virtual Object System Code examples What lies ahead
What is ROTOR? Microsofts shared source CLI C# implementation Over 1 million lines of source code FreeBSD, Windows XP and 2000 Ported to Linux
What is ROTOR? “Academia has delivered many breakthrough innovations through pure research. With the Shared Source CLI implementation, we hope to see great innovation around.NET technology.” Eric Rudder, senior vice president of the Developer Platform and Evangelism Division at Microsoft.
Execution Model Common Intermediate Language(CIL) Program Executable Model(PEM) JIT Verifiable Code Abstract Stack Machine
Execution State Activation Record Evaluation Stack Incoming Arguments Local variable Stack Elements Activation record Evaluation Stack
Stack Transitions Load Store Top
Virtual Object System Value Types - built-in scalars - enumerations - value classes Reference Types - pointers - interfaces - object types
Pointers Managed Pointers Transient Pointers Unmanaged Pointers Function Pointers
Code example using System; class MainApp { public static void Main() { Console.WriteLine("Hello World!"); } hello.il
Code Example using System; class Test2{ public static void Main(){ int itemCount = 10; itemCount++; Console.WriteLine(itemCount); itemCount += 2; Console.WriteLine(itemCount); Console.WriteLine(itemCount-4);}} test2.il
What Lies Ahead Mapping C# constructs to the CIL Speed comparisons Garbage Collector
Conclusion What is ROTOR? Execution Model Execution state Virtual Object System Code examples What lies ahead
Questions