SINGULARITY OVERVIEW
an Opensource OS by Microsoft Research




                                         By
              ...
AGENDA
 Compile Singularity
 Architectural Foundation

 Singularity Kernel

 Run Singularity in a VirtualPC
THE WORLD HAS CHANGED
 Fast computers are affordable and memory has become
  cheap
 Malicious environment – worms, virus...
KEYWORDS
 Operating System
 Kernel

 Microkernel

 Safe Programming Language

 Sealed Process Architecture
CENTERS OF GRAVITY
 Abstract Instruction Set
 Unified Extension Mechanism

 Strong Process Isolation Architecture

 Ub...
SYSTEM ARCHITECTURE


                                                             Guest
                                 ...
ARCHITECTURAL FOUNDATION
   Software-Isolated Processes
       Information Hiding and Failure Isolation
       Message ...
ARCHITECTURAL FOUNDATION (CONTD.)
                contract NicDevice {
                out message DeviceInfo(...);
   Co...
ARCHITECTURAL FOUNDATION (CONTD.)
   Manifest-Based Programs
       MBP is a program defined by a static manifest
     ...
SINGULARITY KERNEL
   Application Binary Interface (ABI)
       Primitive Kernel Facilities
       Privileged Code
    ...
SINGULARITY KERNEL (CONTD.)
   Memory Management
       Obtain memory via ABI Calls
       Exchange Heap



           ...
SINGULARITY KERNEL (CONTD.)
   Threads
       Linked Stacks
       Scheduler
   Garbage Collection
USEFUL LINKS
   http://research.microsoft.com/os/Singularity/
   http://en.wikipedia.org/wiki/Singularity_(operating_sys...
QUESTIONS?
   Website
       http://sattvik.info
   Email
       sattvik@student-partners.com
   BDotnetStudent
    ...
THANK YOU
Upcoming SlideShare
Loading in …5
×

Singularity

1,052 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,052
On SlideShare
0
From Embeds
0
Number of Embeds
137
Actions
Shares
0
Downloads
15
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Singularity

  1. 1. SINGULARITY OVERVIEW an Opensource OS by Microsoft Research By Sattvik Chakravarthy Microsoft Student Partner RNS Institute of Technology
  2. 2. AGENDA  Compile Singularity  Architectural Foundation  Singularity Kernel  Run Singularity in a VirtualPC
  3. 3. THE WORLD HAS CHANGED  Fast computers are affordable and memory has become cheap  Malicious environment – worms, viruses, etc  Few users understand about computer or software
  4. 4. KEYWORDS  Operating System  Kernel  Microkernel  Safe Programming Language  Sealed Process Architecture
  5. 5. CENTERS OF GRAVITY  Abstract Instruction Set  Unified Extension Mechanism  Strong Process Isolation Architecture  Ubiquitous Metadata Infrastructure
  6. 6. SYSTEM ARCHITECTURE Guest Code Kernel/Runtime Scheduler IPC Manager I/O Manager Virtual PC Additions GC & Memory Mgr Metadata Manager Security Manager HAL Native HAL VM Manager VPC VMM Processor and other hardware
  7. 7. ARCHITECTURAL FOUNDATION  Software-Isolated Processes  Information Hiding and Failure Isolation  Message Passing  Cannot share writable memory  Sealed code spaces  Lesser Overhead
  8. 8. ARCHITECTURAL FOUNDATION (CONTD.) contract NicDevice { out message DeviceInfo(...);  Contract-Based Channels in message RegisterForEvents(NicEvents.Exp:READY c); in message SetParameters(...); out message InvalidParameters(...);  All communications through Contract Based Channels out message Success(); in message StartIO();  Ends of channel are not symmetric in message ConfigureIO(); in message PacketForReceive(byte[] in ExHeap p); out message BadPacketSize(byte[] in ExHeap p, int m); in message GetReceivedPacket(); out message ReceivedPacket(Packet * in ExHeap p); out message NoPacket(); state START: one { DeviceInfo! → IO_CONFIGURE_BEGIN; } state IO_CONFIGURE_BEGIN: one { RegisterForEvents? → SetParameters? → IO_CONFIGURE_ACK; } state IO_CONFIGURE_ACK: one { InvalidParameters! → IO_CONFIGURE_BEGIN; Success! → IO_CONFIGURED; } state IO_CONFIGURED: one { StartIO? → IO_RUNNING; ConfigureIO? → IO_CONFIGURE_BEGIN; } state IO_RUNNING: one { PacketForReceive? → (Success! or BadPacketSize!) → IO_RUNNING; GetReceivedPacket? → (ReceivedPacket! or NoPacket!) → IO_RUNNING; ... } }
  9. 9. ARCHITECTURAL FOUNDATION (CONTD.)  Manifest-Based Programs  MBP is a program defined by a static manifest  Describes code resources, system resources, capabilities and dependencies  Supports Code Verifiability
  10. 10. SINGULARITY KERNEL  Application Binary Interface (ABI)  Primitive Kernel Facilities  Privileged Code  Handle Table
  11. 11. SINGULARITY KERNEL (CONTD.)  Memory Management  Obtain memory via ABI Calls  Exchange Heap Process Exchange Heap
  12. 12. SINGULARITY KERNEL (CONTD.)  Threads  Linked Stacks  Scheduler  Garbage Collection
  13. 13. USEFUL LINKS  http://research.microsoft.com/os/Singularity/  http://en.wikipedia.org/wiki/Singularity_(operating_system)  http://www.codeplex.com/singularity
  14. 14. QUESTIONS?  Website  http://sattvik.info  Email  sattvik@student-partners.com  BDotnetStudent  http://groups.msn.com/bdotnetstudent
  15. 15. THANK YOU

×