The L4 Microkernel. Invited Speaker: Prof. Hermann Härtig Technische Universität Dresden. ARTIST Summer School in Europe 2010
|
|
- Neal Wilkinson
- 8 years ago
- Views:
Transcription
1 ARTIST Summer School in Europe 2010 Autrans (near Grenoble), France September 5-10, 2010 The Invited Speaker: Prof. Technische Universität Dresden
2 L4
3 COTS - SW Applet Firefox Flash X11 Linux! Kernel Keyboard 3
4 MICRO Native Microkernel App Native Microkernel App Window Server File System IP Stack Framebuffer! Driver Disk Driver Network Driver 4
5 MICRO Native Microkernel App Native Microkernel App Virtualization! Container for Legacy OS Window Server File System IP Stack Framebuffer! Driver Disk Driver Network Driver 5
6 OUTLINE Using a small kernel Motivation, Cost & Benefit Case studies A short history of L4 L4 Kernel interface Capability system design Michael Roitzsch Mobile use cases Adam Lackorzynski 6
7 Department of Computer Science Institute of System Architecture, Operating Systems Group USING A SMALL KERNEL HERMANN HÄRTIG
8 WHY MICRO Native Microkernel App Native Microkernel App Virtualization! Container for Legacy OS Window Server File System IP Stack Framebuffer! Driver Disk Driver Network Driver 8
9 COST & BENEFIT Performance (Failure) Isolation Openness Small (Minimal) Trusted Computing Base 9
10 BENEFITS Flexibility? SW engineering./. microkernels Difficulty to build? can be harder to build 10
11 ISOLATION Separate address spaces for components Message passing interfaces Communication controlled by capabilities Immediate: I/O Drivers tamed Base for fault containment fault recovery? 11
12 ALTERNATIVE Virtual machines provide separate machines requires emulation of physical HW interface an operating system in each VM large!grained components more later 12
13 ALTERNATIVE Languages with component!support Use one language or language family Fine!grained components (modules, objects, ) Compiler and runtime enforce isolation Closed systems Examples: Burroughs 7700, B extended Algol, Espol, Concurrent Pascal, Modula, Oberon, various Java systems 13
14 OPENNESS Microkernels Minimal kernel and hardware enforce separation Only kernel runs in CPU privileged mode Components are user!level processes No restrictions on component software Reuse of legacy software 14
15 MINIMAL TCB Trusted Computing Base A small amount of software and hardware that security depends on and that we distinguish from a much larger amount that can misbehave without affecting security. Lampson et al. 15
16 MINIMAL TCB Trusted Computing Base A small amount of software and hardware that * depends on and that we distinguish from a much larger amount that can misbehave without affecting *. In this lecture: * : security, real!time, fault tolerance,... TCB is application specific 16
17 MINIMAL TCB General Approach: Divide system into uncritical and (minimal) critical parts Include minimal set of components into TCB offload uncritical parts, e.g. into legacy SW Split critical part into isolated components Benefit: small application!specific TCB 17
18 CASE STUDIES 18
19 L 4 LINUX App App X11 L 4 Linux Server Fiasco.OC 19
20 COST!1997 Time- Sharing Applicatio ns L 4 Linux jobs per minute (Härtig, Hohmuth, Liedtke, Schönberg, Wolter: The Performance of!-kernel based Systems, SOSP 1997)" L4 simulated load
21 COST!1997 Time- Sharing Applicatio ns L 4 Linux L4
22 L 4 LINUX App App App App X11 X11 L 4 Linux Server L 4 Linux Server Fiasco.OC 22
23 L4RE App App App App X11 X11 L 4 Linux Server Resource Management and Virtualization Support Layer L 4 Linux Server moe ned io rtc mag Fiasco.OC 23
24 L4RE App App App App X11 L 4 Linux Server L 4 Symbian Server moe ned io rtc mag Fiasco.OC 24
25 L 4 LINUX App App App App X11 X11 L 4 Linux Server L 4 Linux Server Fiasco.OC 25
26 L4RE App App App App X11 X11 L 4 Linux Server Resource Management and Virtualization Support Layer L 4 Linux Server moe ned io rtc mag Fiasco.OC 26
27 L4RE App App App App X11 L 4 Linux Server L 4 Symbian Server moe ned io rtc mag Fiasco.OC 27
28 NATIVE APPS App App X11 L 4 Linux Server Security!Sensitive Application moe ned io rtc mag Fiasco.OC 28
29 HYBRID APPS Helper App X11 Security!Sensitve Application L 4 Linux Server Secure Application Core moe ned io rtc mag Fiasco.OC 29
30 CASE STUDY Micro!SINA VPN Box security goals: connect sets of trusted machines ensure confidentiality and integrity non goal: availability 30
31 USE CASES eth0 eth1 L 4 Linux Server L 4 Linux Server IP Viaduct moe ned io rtc mag Fiasco.OC 31
32 USE CASES DDE eth0 IP Viaduct DDE eth1 moe ned io rtc mag Fiasco.OC 32
33 HYBRID APPS Slide Loader X11 Presentation Application L 4 Linux Server Presenter moe ned io rtc mag Fiasco.OC 33
34 HYBRID APPS E!Mail Client X11 L 4 Linux Server E!Mail Signing moe ned io rtc mag Fiasco.OC 34
35 HYBRID APPS Address Book ROBIN Demo Scenario X11 L 4 Linux Server Dialer with Filter for Premium!rate Numbers moe ned io rtc mag Fiasco.OC 35
36 HYBRID APPS Browser Nizza Demo Scenario X11 L 4 Linux Server Secure Transactions for Home!Banking moe ned io rtc mag Fiasco.OC 36
37 NUMBERS Scenario e!commerce Browser VPN Gateway FreeS/WAN signer Thunderbird TCB Linux + X11 Original AppCore kloc kmcc kloc kmcc Reduc! tion Factor " " " " Reducing TCB Complexity for Security!Sensitive Applications: Three Case Studies Lenin Singaravelu, Calton Pu,, Christian Helmuth, EuroSys
38 REAL-TIME App App X11 L 4 Linux Server Real!Time Application moe ned io rtc mag Fiasco.OC 38
39 REAL-TIME Legacy App Hybrid App Real!Time App L 4 Linux Server Stubs RT!File RT!Net RT!Disk RT!NIC DOpE moe ned io rtc mag Fiasco.OC 39
40 ORTHOGONAL Microkernel Virtual Machine Isolation Rehosting Light!Weight Microkernels Componentization of operating system Split applications Critical part on microkernel Uncritical on commodity OS Small Trusted Computing Bases 40
41 ORTHOGONAL Microkernel Virtual Machine Isolation Rehosting Virtual Machines Provide virtual hardware interface Reuse of COTS operating systems and applications with no modification At the price of complexity 41
42 State of the Art: Monolithic Hypervisors NOVA VM VM VM guest mode Monolithic Hypervisor Storage x86 Virtualization> 100,000 lines of code Network Management Device Drivers host mode Monolithic hypervisor is single point of failure Udo Steinberg NOVA 4 42
43 NOVA OS Virtualization Architecture NOVA guest mode VM VM VM VMM VMM 20,000 LOC VMM Applications Partition Manager 7,000 LOC Device Drivers!"#$ Microhypervisor 9,000 LOC %#$&#' host mode Udo Steinberg NOVA 7 43
44 SHORT HISTORY Eumel, L3, BirliX first version of L4 L4Linux, the first major application Fiasco, the first HLL implementation PikeOS: first commercial derivative real!time systems based on Fiasco Pistachio (Uni Karlsruhe) 44
45 SHORT HISTORY 2000 First commercial usage (Fiasco on a DRM product) 2005 Qualcomm adopts L4 kernel from NICTA (Pistachio derivative) 2009 Full formal verification of implementation in Haskell (NICTA) Fiasco.OC, L4Re NOVA 45
46 L4 KERNEL ABSTRACTIONS 46
47 ABSTRACTIONS Task (Address space: memory & capabilities) Thread Communication (IPC) 47
48 MAIN MEMORY Management of Physical Memory at user"level? only kernel can access page tables? 48
49 MAIN MEMORY Task C Task D Task B Page Fault transformed into message to Task A handler 49
50 MAIN MEMORY Task C Task D Task B Handler returns message with PTE as payload, kernel adds to Task A address space 50
51 MAIN MEMORY Task C Task D Task B Task A 51
52 MAIN MEMORY Task C Task D!! Task B revoke:! Task A kernel maintains data structure for revoking 52
53 USES OF IPC data exceptions interrupts memory references (page fault handling) capabilities 53
54 NEXT Using a small kernel Capability system design Michael Roitzsch Mobile use cases Adam Lackorzynski 54
55 Department of Computer Science Institute of System Architecture, Operating Systems Group DESIGN OF A CAPABILITY SYSTEM MICHAEL ROITZSCH
56 SYSTEM DESIGN Applications Services Kernel Michael Roitzsch Design of a Capability System 2
57 DESIGN GOALS application!centric interfaces object!based design easy setup and destruction of subsystems object invocation by message passing uniform security model all services virtualizable flexible and efficient support for multicore Michael Roitzsch Design of a Capability System 3
58 EXAMPLE Worker A Worker B Manager Service Michael Roitzsch Design of a Capability System 4
59 GOOGLE CHROME separate processes chrome parent sandboxes for tabs implementation on Linux: glorious mix of chroot(), clone() and setuid() there must be a better way Michael Roitzsch Design of a Capability System 5
60 TWO WORLDS POSIX POLA operations allowed by default nothing allowed by default some limited restrictions apply every right must be granted ambient authority explicit authority Michael Roitzsch Design of a Capability System 6
61 L4RE L4Re the L4 Runtime Environment set of libraries and system services on top of the Fiasco.OC microkernel Microkernel L4Re Michael Roitzsch Design of a Capability System 7
62 CAPABILITIES Fiasco.OC and L4Re form an object!capability system actors in the system are objects objects have local state and behavior capabilities are references to objects object interaction requires a capability capabilities cannot be forged Michael Roitzsch Design of a Capability System 8
63 CAPABILITIES Task A Task B Capability Table Capability Table A B C D E Fiasco.OC Michael Roitzsch Design of a Capability System 9
64 HOW TO USE? invocation of any object requires a capability to that object no global names no sophisticated rights representation beyond capability ownership just four rights bits on objects C++ language integration capabilities passed as message payload Michael Roitzsch Design of a Capability System 10
65 CAP TRANSFER Task A Task B A Michael Roitzsch Design of a Capability System 11
66 CAP TRANSFER Task A Task B A Michael Roitzsch Design of a Capability System 11
67 EXAMPLE Worker A Worker B Manager Service Michael Roitzsch Design of a Capability System 12
68 ANSWERING How do you send an answer to a client? Always include a backward capability in every request? Establish backward capability once and cache? call!return!semantics as the standard case implicit reply capability use!once, cannot be passed on Michael Roitzsch Design of a Capability System 13
69 EXAMPLE Worker A Worker B Manager mag Michael Roitzsch Design of a Capability System 14
70 MAG factory for new Manager framebuffer sessions session object backing store memory Factory S S mag view: visible rectangle on the backing store metadata, refresh method How does it appear on the screen? Michael Roitzsch Design of a Capability System 15
71 MAG Factory S S mag hardware framebuffer is memory with side effect all memory is initially fb!drv mapped to the roottask framebuffer driver moe find framebuffer memory wrap in FB!interface Memory same interface as mag s Michael Roitzsch Design of a Capability System 16
72 INTERFACES L4Re uses one interface per resource low!level system resources are managed by the kernel CPU, memory, IRQ minimal policy user!level servers can reimplement and augment interfaces virtualizable interfaces Michael Roitzsch Design of a Capability System 17
73 EXAMPLE Worker B Manager? Service mag Michael Roitzsch Design of a Capability System 18
74 SUBSYSTEMS Subsystem Life subsystems are opaque parents can restrict the resources parents cannot restrict their sub!structure Subsystem Death How to deallocate resources in servers? notify all servers used by the subsystem? garbage collection Michael Roitzsch Design of a Capability System 19
75 CONCLUSION! coherent per!resource interfaces "! all services provided as objects "! garbage collection for server resources "! invocation is the only system call "! object!capability system "! all interfaces can be interposed "! see next talk " Michael Roitzsch Design of a Capability System 20
76 Department of Computer Science Institute of System Architecture, Operating Systems Group MOBILE USE CASES ADAM LACKORZYŃSKI
77 OUTLINE ICT!eMuCo project Multi!Cores and Load Balancing Virtualization Adam Lackorzynski Mobile Use Cases 2
78 ICT-EMUCO Embedded Multicore Computing FP7 Project, STREP Feb 2008 Jan 2010 Partners: ARM, Infineon, Ruhr! Uni Bochum, IBM, Uni of Timisoara, Uni York, TU!Dresden Adam Lackorzynski Mobile Use Cases 3
79 ARCHITECTURE Microkernel based system ARM11MPCore 4 cores Modem Stack App!OS Adam Lackorzynski Mobile Use Cases 4
80 THE EMUCO OS Isolation Secure communication Timing properties Multi!core capable Power Management Embedded systems Flexible & usable Protocol Stack L4Re Runtime Environment Fiasco.OC Microkernel Hardware Platform Adam Lackorzynski Mobile Use Cases 5
81 OUTLINE ICT!eMuCo project Multi!Cores and Load Balancing Virtualization Adam Lackorzynski Mobile Use Cases 6
82 MULTI-CORES Shared memory multi!processor systems Model: Cross CPU tasks Cross CPU notifications Cross CPU IPC Shared memory Local scheduling Fixed!prio, round!robin scheduler on each core Adam Lackorzynski Mobile Use Cases 7
83 DISTRIBUTION How to Distribute Work? Kernel provides migration mechanism No automatic migration, decision is policy App1 App2? App3 CPU1 CPU2 CPU3 CPU4 Adam Lackorzynski Mobile Use Cases 8
84 L4::SCHEDULER L4::Scheduler interface Run/Migrate a thread with parameters Priority, CPU set, budget,... scheduler.run_thread(thread, sched_param); Kernel implementation Singleton, has all resources (all CPUs, all CPU time) Chooses one CPU from CPU set, fixed Adam Lackorzynski Mobile Use Cases 9
85 LOAD BALANCING Load balancer component Implements L4::Scheduler interface Hides platform details from application Implements policy App1 App2 Load? Balancer App3 CPU1 CPU2 CPU3 CPU4 Adam Lackorzynski Mobile Use Cases 10
86 LOAD BALANCER Implements balancing strategy Application specific scheduler instances Enforces scheduling policies Combines client policies Protocol Stack 3 CPUs 2 CPUs LB Scheduler Policy Scheduler Fiasco.OC Scheduler CPU CPU CPU CPU Adam Lackorzynski Mobile Use Cases 11
87 USE CASES Multi!threaded program Distribute and balance Sophisticated real!time application No migration by load balancer Threads always on the same CPU (cache locality) Threads always on different CPUs (no interference) Virtual machine Adam Lackorzynski Mobile Use Cases 12
88 OUTLINE ICT!eMuCo project Multi!Cores and Load Balancing Virtualization Adam Lackorzynski Mobile Use Cases 13
89 VIRTUALIZATION Application side Standard OS Standard applications Integration in the system Resource and device usage Isolation of the virtual machine No disturbance of other programs Protocol Stack L4Re Runtime Environment Fiasco.OC Microkernel Hardware Platform Adam Lackorzynski Mobile Use Cases 14
90 EMUCO PLATFORM ARM architecture Available CPU features: MMU Paravirtualization L 4 Linux TECOM!FP7: TrustZone for Virtualization Adam Lackorzynski Mobile Use Cases 15
91 L 4 LINUX Adapted Linux kernel runs on Fiasco.OC & L4Re Normal program, runs Linux kernel code in user mode, including device drivers Binary compatible for applications Address space for kernel and each program Programs isolated from each other Kernel isolated from programs CPU, memory, devices Adam Lackorzynski Mobile Use Cases 16
92 L 4 LINUX L 4 Linux CPU Virtualization Native execution Exceptions reflected by microkernel System calls Page faults Linux Program Fault handling Linux Program Linux Kernel Other exceptions Microkernel Adam Lackorzynski Mobile Use Cases 17
93 SMP Multi!Processor Virtualization Linux has multiple virtual CPUs (vcpu) Shared memory between cores Migration of application threads is done by the Linux kernel Inter (v)cpu communication done with microkernel primitives Adam Lackorzynski Mobile Use Cases 18
94 MEMORY L 4 Linux Memory Virtualization L4Re supplies Linux memory (virtual) MMU managed by microkernel Hooks in Linux page!table code use Fiasco memory!mapping functionality Adam Lackorzynski Mobile Use Cases 19
95 DEVICES Virtual PCI bus and/or platform devices Pass!through devices according to configuration Stub drivers for L4Re services: Framebuffer driver for windowing system Input driver for keyboard/mouse events Serial driver for basic input/output Network drivers for virtual switch Adam Lackorzynski Mobile Use Cases 20
96 PLATFORM Central IO service Device discovery Device enumeration Per client device access Virtual buses Virtual interrupt controller Device pass!through Adam Lackorzynski Mobile Use Cases 21
97 VIRTUALIZATION Faithful Virtualization Unmodified guest OS AMD SVM, Intel VT 1500 LoC in Fiasco for SVM and VT support Off!the!shelf VMM (e.g. QEmu on L4Linux) Adam Lackorzynski Mobile Use Cases 22
98 WHAT ELSE? DDE, virtual network switch Debugging: Valgrind Checkpoint & Restart ARM Virtualization Run!time environment: libc, libstdc++, virtual!fs, pthread, communication framework, dynamic linking, scriptable startup with lua,... Adam Lackorzynski Mobile Use Cases 23
99 GO DOWNLOAD Adam Lackorzynski Mobile Use Cases 24
Microkernels, virtualization, exokernels. Tutorial 1 CSC469
Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,
More informationMulti-core Programming System Overview
Multi-core Programming System Overview Based on slides from Intel Software College and Multi-Core Programming increasing performance through software multi-threading by Shameem Akhter and Jason Roberts,
More informationVirtualization. Types of Interfaces
Virtualization Virtualization: extend or replace an existing interface to mimic the behavior of another system. Introduced in 1970s: run legacy software on newer mainframe hardware Handle platform diversity
More informationFull and Para Virtualization
Full and Para Virtualization Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF x86 Hardware Virtualization The x86 architecture offers four levels
More informationVirtualization. Dr. Yingwu Zhu
Virtualization Dr. Yingwu Zhu What is virtualization? Virtualization allows one computer to do the job of multiple computers. Virtual environments let one computer host multiple operating systems at the
More informationUses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:
Virtual Machines Uses for Virtual Machines Virtual machine technology, often just called virtualization, makes one computer behave as several computers by sharing the resources of a single computer between
More informationVirtualization in the ARMv7 Architecture Lecture for the Embedded Systems Course CSD, University of Crete (May 20, 2014)
Virtualization in the ARMv7 Architecture Lecture for the Embedded Systems Course CSD, University of Crete (May 20, 2014) ManolisMarazakis (maraz@ics.forth.gr) Institute of Computer Science (ICS) Foundation
More informationMOS - VIRTUALIZATION. Tobias Stumpf WS 2014/15
MOS - VIRTUALIZATION Tobias Stumpf WS 2014/15 Goals Give you an overview about: virtualization and virtual machines in general, hardware virtualization on x86, our research regarding virtualization. We
More informationChapter 5 Cloud Resource Virtualization
Chapter 5 Cloud Resource Virtualization Contents Virtualization. Layering and virtualization. Virtual machine monitor. Virtual machine. Performance and security isolation. Architectural support for virtualization.
More informationHardware Based Virtualization Technologies. Elsie Wahlig elsie.wahlig@amd.com Platform Software Architect
Hardware Based Virtualization Technologies Elsie Wahlig elsie.wahlig@amd.com Platform Software Architect Outline What is Virtualization? Evolution of Virtualization AMD Virtualization AMD s IO Virtualization
More informationChapter 16: Virtual Machines. Operating System Concepts 9 th Edition
Chapter 16: Virtual Machines Silberschatz, Galvin and Gagne 2013 Chapter 16: Virtual Machines Overview History Benefits and Features Building Blocks Types of Virtual Machines and Their Implementations
More information1. PUBLISHABLE SUMMARY
1. PUBLISHABLE SUMMARY ICT-eMuCo (www.emuco.eu) is a European project with a total budget of 4.6M which is supported by the European Union under the Seventh Framework Programme (FP7) for research and technological
More informationLeveraging Thin Hypervisors for Security on Embedded Systems
Leveraging Thin Hypervisors for Security on Embedded Systems Christian Gehrmann A part of Swedish ICT What is virtualization? Separation of a resource or request for a service from the underlying physical
More informationVMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D
ware and CPU Virtualization Technology Jack Lo Sr. Director, R&D This presentation may contain ware confidential information. Copyright 2005 ware, Inc. All rights reserved. All other marks and names mentioned
More informationReal-Time Virtualization How Crazy Are We?
Siemens Corporate Technology October 2014 Real-Time Virtualization How Crazy Are We? Image: Marcus Quigmire, licensed under CC BY 2.0 Unrestricted Siemens AG 2014. All rights reserved Real-Time Systems
More informationVirtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University
Virtual Machine Monitors Dr. Marc E. Fiuczynski Research Scholar Princeton University Introduction Have been around since 1960 s on mainframes used for multitasking Good example VM/370 Have resurfaced
More informationBasics of Virtualisation
Basics of Virtualisation Volker Büge Institut für Experimentelle Kernphysik Universität Karlsruhe Die Kooperation von The x86 Architecture Why do we need virtualisation? x86 based operating systems are
More informationVirtualization in a Carrier Grade Environment
Virtualization in a Carrier Grade Environment David Beal Director - Product Management Virtualization? Oh, Virtualization! Virtual Networking? Intel VT? UML? IBM/VM? Virtual Server? VMware? Transitive
More informationVirtualization for Cloud Computing
Virtualization for Cloud Computing Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF CLOUD COMPUTING On demand provision of computational resources
More informationPikeOS: Multi-Core RTOS for IMA. Dr. Sergey Tverdyshev SYSGO AG 29.10.2012, Moscow
PikeOS: Multi-Core RTOS for IMA Dr. Sergey Tverdyshev SYSGO AG 29.10.2012, Moscow Contents Multi Core Overview Hardware Considerations Multi Core Software Design Certification Consideratins PikeOS Multi-Core
More informationChapter 3 Operating-System Structures
Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual
More informationVirtualization. Pradipta De pradipta.de@sunykorea.ac.kr
Virtualization Pradipta De pradipta.de@sunykorea.ac.kr Today s Topic Virtualization Basics System Virtualization Techniques CSE506: Ext Filesystem 2 Virtualization? A virtual machine (VM) is an emulation
More informationThe Art of Virtualization with Free Software
Master on Free Software 2009/2010 {mvidal,jfcastro}@libresoft.es GSyC/Libresoft URJC April 24th, 2010 (cc) 2010. Some rights reserved. This work is licensed under a Creative Commons Attribution-Share Alike
More informationHypervisors. Introduction. Introduction. Introduction. Introduction. Introduction. Credits:
Hypervisors Credits: P. Chaganti Xen Virtualization A practical handbook D. Chisnall The definitive guide to Xen Hypervisor G. Kesden Lect. 25 CS 15-440 G. Heiser UNSW/NICTA/OKL Virtualization is a technique
More informationHow do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself
How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,
More informationDistributed Systems. Virtualization. Paul Krzyzanowski pxk@cs.rutgers.edu
Distributed Systems Virtualization Paul Krzyzanowski pxk@cs.rutgers.edu Except as otherwise noted, the content of this presentation is licensed under the Creative Commons Attribution 2.5 License. Virtualization
More informationVirtual Machines. www.viplavkambli.com
1 Virtual Machines A virtual machine (VM) is a "completely isolated guest operating system installation within a normal host operating system". Modern virtual machines are implemented with either software
More informationL4Android: A Generic Operating System Framework for Secure Smartphones
L4Android: A Generic Operating System Framework for Secure Smartphones Matthias Lange 1 Steffen Liebergeld 1 Adam Lackorzynski 2 Alexander Warg 2 Michael Peter 1 1 Security in Telecommunications Technische
More informationCOM 444 Cloud Computing
COM 444 Cloud Computing Lec 3: Virtual Machines and Virtualization of Clusters and Datacenters Prof. Dr. Halûk Gümüşkaya haluk.gumuskaya@gediz.edu.tr haluk@gumuskaya.com http://www.gumuskaya.com Virtual
More informationIntroduction to Virtual Machines
Introduction to Virtual Machines Introduction Abstraction and interfaces Virtualization Computer system architecture Process virtual machines System virtual machines 1 Abstraction Mechanism to manage complexity
More informationHardware accelerated Virtualization in the ARM Cortex Processors
Hardware accelerated Virtualization in the ARM Cortex Processors John Goodacre Director, Program Management ARM Processor Division ARM Ltd. Cambridge UK 2nd November 2010 Sponsored by: & & New Capabilities
More informationVirtual Machine Security
Virtual Machine Security CSE497b - Spring 2007 Introduction Computer and Network Security Professor Jaeger www.cse.psu.edu/~tjaeger/cse497b-s07/ 1 Operating System Quandary Q: What is the primary goal
More informationCloud Computing. Up until now
Cloud Computing Lecture 11 Virtualization 2011-2012 Up until now Introduction. Definition of Cloud Computing Grid Computing Content Distribution Networks Map Reduce Cycle-Sharing 1 Process Virtual Machines
More informationNested Virtualization
Nested Virtualization Dongxiao Xu, Xiantao Zhang, Yang Zhang May 9, 2013 Agenda Nested Virtualization Overview Dive into Nested Virtualization Details Nested CPU Virtualization Nested MMU Virtualization
More informationChapter 14 Virtual Machines
Operating Systems: Internals and Design Principles Chapter 14 Virtual Machines Eighth Edition By William Stallings Virtual Machines (VM) Virtualization technology enables a single PC or server to simultaneously
More informationEnabling Technologies for Distributed Computing
Enabling Technologies for Distributed Computing Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF Multi-core CPUs and Multithreading Technologies
More informationThe Microsoft Windows Hypervisor High Level Architecture
The Microsoft Windows Hypervisor High Level Architecture September 21, 2007 Abstract The Microsoft Windows hypervisor brings new virtualization capabilities to the Windows Server operating system. Its
More informationOS Concepts and structure
OS Concepts and structure Today OS services OS interface to programmers/users OS components & interconnects Structuring OSs Next time Processes Between hardware and your apps User processes Thunderbird
More informationVirtualization and the U2 Databases
Virtualization and the U2 Databases Brian Kupzyk Senior Technical Support Engineer for Rocket U2 Nik Kesic Lead Technical Support for Rocket U2 Opening Procedure Orange arrow allows you to manipulate the
More information9/26/2011. What is Virtualization? What are the different types of virtualization.
CSE 501 Monday, September 26, 2011 Kevin Cleary kpcleary@buffalo.edu What is Virtualization? What are the different types of virtualization. Practical Uses Popular virtualization products Demo Question,
More informationevm Virtualization Platform for Windows
B A C K G R O U N D E R evm Virtualization Platform for Windows Host your Embedded OS and Windows on a Single Hardware Platform using Intel Virtualization Technology April, 2008 TenAsys Corporation 1400
More informationCOS 318: Operating Systems. Virtual Machine Monitors
COS 318: Operating Systems Virtual Machine Monitors Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318/ Introduction u Have
More informationHypervisors and Virtual Machines
Hypervisors and Virtual Machines Implementation Insights on the x86 Architecture DON REVELLE Don is a performance engineer and Linux systems/kernel programmer, specializing in high-volume UNIX, Web, virtualization,
More informationVirtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies
Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies Kurt Klemperer, Principal System Performance Engineer kklemperer@blackboard.com Agenda Session Length:
More informationOutline. Outline. Why virtualization? Why not virtualize? Today s data center. Cloud computing. Virtual resource pool
Outline CS 6V81-05: System Security and Malicious Code Analysis Overview of System ization: The most powerful platform for program analysis and system security Zhiqiang Lin Department of Computer Science
More informationThe NOVA Microhypervisor
The NOVA Microhypervisor Germany Microprocessor Lab, Intel Labs Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL
More informationKVM Architecture Overview
KVM Architecture Overview 2015 Edition Stefan Hajnoczi 1 Introducing KVM virtualization KVM hypervisor runs virtual machines on Linux hosts Mature on x86, recent progress on ARM and
More informationMODULE 3 VIRTUALIZED DATA CENTER COMPUTE
MODULE 3 VIRTUALIZED DATA CENTER COMPUTE Module 3: Virtualized Data Center Compute Upon completion of this module, you should be able to: Describe compute virtualization Discuss the compute virtualization
More informationVirtualization. Clothing the Wolf in Wool. Wednesday, April 17, 13
Virtualization Clothing the Wolf in Wool Virtual Machines Began in 1960s with IBM and MIT Project MAC Also called open shop operating systems Present user with the view of a bare machine Execute most instructions
More informationCloud Operating Systems for Servers
Cloud Operating Systems for Servers Mike Day Distinguished Engineer, Virtualization and Linux August 20, 2014 mdday@us.ibm.com 1 What Makes a Good Cloud Operating System?! Consumes Few Resources! Fast
More informationL 4 Linux Porting Optimizations
L 4 Linux Porting Optimizations Adam Lackorzynski Technische Universität Dresden Faculty of Computer Science Operating Systems Group March 2004 Contents 1 Introduction 9 1.1 Terminology....................................
More informationBasics in Energy Information (& Communication) Systems Virtualization / Virtual Machines
Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines Dr. Johann Pohany, Virtualization Virtualization deals with extending or replacing an existing interface so as to
More informationExample of Standard API
16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface
More informationDesign and Implementation of the Heterogeneous Multikernel Operating System
223 Design and Implementation of the Heterogeneous Multikernel Operating System Yauhen KLIMIANKOU Department of Computer Systems and Networks, Belarusian State University of Informatics and Radioelectronics,
More informationVirtualization. Jukka K. Nurminen 23.9.2015
Virtualization Jukka K. Nurminen 23.9.2015 Virtualization Virtualization refers to the act of creating a virtual (rather than actual) version of something, including virtual computer hardware platforms,
More informationCOS 318: Operating Systems
COS 318: Operating Systems OS Structures and System Calls Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Outline Protection mechanisms
More informationKVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com
KVM: A Hypervisor for All Seasons Avi Kivity avi@qumranet.com November 2007 Virtualization Simulation of computer system in software Components Processor: register state, instructions, exceptions Memory
More informationVirtualization is set to become a key requirement
Xen, the virtual machine monitor The art of virtualization Moshe Bar Virtualization is set to become a key requirement for every server in the data center. This trend is a direct consequence of an industrywide
More informationVirtual Servers. Virtual machines. Virtualization. Design of IBM s VM. Virtual machine systems can give everyone the OS (and hardware) that they want.
Virtual machines Virtual machine systems can give everyone the OS (and hardware) that they want. IBM s VM provided an exact copy of the hardware to the user. Virtual Servers Virtual machines are very widespread.
More informationReview from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture
Review from last time CS 537 Lecture 3 OS Structure What HW structures are used by the OS? What is a system call? Michael Swift Remzi Arpaci-Dussea, Michael Swift 1 Remzi Arpaci-Dussea, Michael Swift 2
More informationXen and the Art of. Virtualization. Ian Pratt
Xen and the Art of Virtualization Ian Pratt Keir Fraser, Steve Hand, Christian Limpach, Dan Magenheimer (HP), Mike Wray (HP), R Neugebauer (Intel), M Williamson (Intel) Computer Laboratory Outline Virtualization
More informationLightweight Virtualization on Microkernel-based Systems
Diplomarbeit Lightweight Virtualization on Microkernel-based Systems Steffen Liebergeld 27. Januar 2010 Technische Universität Dresden Fakultät Informatik Institut für Systemarchitektur Professur Betriebssysteme
More informationA quantitative comparison between xen and kvm
Home Search Collections Journals About Contact us My IOPscience A quantitative comparison between xen and kvm This content has been downloaded from IOPscience. Please scroll down to see the full text.
More informationVirtual Hosting & Virtual Machines
& Virtual Machines Coleman Kane Coleman.Kane@ge.com September 2, 2014 Cyber Defense Overview / Machines 1 / 17 Similar to the network partitioning schemes described previously, there exist a menu of options
More informationVirtualization. Michael Tsai 2015/06/08
Virtualization Michael Tsai 2015/06/08 What is virtualization? Let s first look at a video from VMware http://bcove.me/x9zhalcl Problems? Low utilization Different needs DNS DHCP Web mail 5% 5% 15% 8%
More informationEnabling Technologies for Distributed and Cloud Computing
Enabling Technologies for Distributed and Cloud Computing Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF Multi-core CPUs and Multithreading
More informationDecomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
More informationCPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Virtualization of Clusters and Data Centers
CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies Lecture 4 Virtualization of Clusters and Data Centers Text Book: Distributed and Cloud Computing, by K. Hwang, G C. Fox, and J.J. Dongarra,
More informationSierraware Overview. Simply Secure
Sierraware Overview Simply Secure Sierraware Software Suite SierraTEE/Micro Kernel TrustZone/GlobalPlatform TEE SierraVisor: Bare Metal Hypervisor Hypervisor for ARM Para-virtualization, TrustZone Virtualization,
More informationUsing Linux as Hypervisor with KVM
Using Linux as Hypervisor with KVM Qumranet Inc. Andrea Arcangeli andrea@qumranet.com (some slides from Avi Kivity) CERN - Geneve 15 Sep 2008 Agenda Overview/feature list KVM design vs other virtualization
More informationHow To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X
(Advanced Topics in) Operating Systems Winter Term 2009 / 2010 Jun.-Prof. Dr.-Ing. André Brinkmann brinkman@upb.de Universität Paderborn PC 1 Overview Overview of chapter 3: Case Studies 3.1 Windows Architecture.....3
More informationSUSE Linux Enterprise 10 SP2: Virtualization Technology Support
Technical White Paper LINUX OPERATING SYSTEMS www.novell.com SUSE Linux Enterprise 10 SP2: Virtualization Technology Support Content and modifications. The contents of this document are not part of the
More informationCOS 318: Operating Systems. Virtual Machine Monitors
COS 318: Operating Systems Virtual Machine Monitors Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Introduction Have been around
More informationVMware Server 2.0 Essentials. Virtualization Deployment and Management
VMware Server 2.0 Essentials Virtualization Deployment and Management . This PDF is provided for personal use only. Unauthorized use, reproduction and/or distribution strictly prohibited. All rights reserved.
More informationCSE 120 Principles of Operating Systems. Modules, Interfaces, Structure
CSE 120 Principles of Operating Systems Fall 2000 Lecture 3: Operating System Modules, Interfaces, and Structure Geoffrey M. Voelker Modules, Interfaces, Structure We roughly defined an OS as the layer
More informationIntel s Virtualization Extensions (VT-x) So you want to build a hypervisor?
Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor? Mr. Jacob Torrey February 26, 2014 Dartmouth College 153 Brooks Road, Rome, NY 315.336.3306 http://ainfosec.com @JacobTorrey
More informationVirtual Machines. COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361
s COMP 3361: Operating Systems I Winter 2015 http://www.cs.du.edu/3361 1 Virtualization! Create illusion of multiple machines on the same physical hardware! Single computer hosts multiple virtual machines
More informationVirtualization. Jia Rao Assistant Professor in CS http://cs.uccs.edu/~jrao/
Virtualization Jia Rao Assistant Professor in CS http://cs.uccs.edu/~jrao/ What is Virtualization? Virtualization is the simulation of the software and/ or hardware upon which other software runs. This
More informationx86 Virtualization Hardware Support Pla$orm Virtualiza.on
x86 Virtualization Hardware Support Pla$orm Virtualiza.on Hide the physical characteris.cs of computer resources from the applica.ons Not a new idea: IBM s CP- 40 1967, CP/CMS, VM Full Virtualiza.on Simulate
More informationModels For Modeling and Measuring the Performance of a Xen Virtual Server
Measuring and Modeling the Performance of the Xen VMM Jie Lu, Lev Makhlis, Jianjiun Chen BMC Software Inc. Waltham, MA 2451 Server virtualization technology provides an alternative for server consolidation
More informationA Unified View of Virtual Machines
A Unified View of Virtual Machines First ACM/USENIX Conference on Virtual Execution Environments J. E. Smith June 2005 Introduction Why are virtual machines interesting? They allow transcending of interfaces
More informationVirtualization. Explain how today s virtualization movement is actually a reinvention
Virtualization Learning Objectives Explain how today s virtualization movement is actually a reinvention of the past. Explain how virtualization works. Discuss the technical challenges to virtualization.
More informationCloud Computing CS 15-319
Cloud Computing CS 15-319 Virtualization Case Studies : Xen and VMware Lecture 20 Majd F. Sakr, Mohammad Hammoud and Suhail Rehman 1 Today Last session Resource Virtualization Today s session Virtualization
More informationVMkit A lightweight hypervisor library for Barrelfish
Masters Thesis VMkit A lightweight hypervisor library for Barrelfish by Raffaele Sandrini Due date 2 September 2009 Advisors: Simon Peter, Andrew Baumann, and Timothy Roscoe ETH Zurich, Systems Group Department
More informationVirtualization Technology. Zhiming Shen
Virtualization Technology Zhiming Shen Virtualization: rejuvenation 1960 s: first track of virtualization Time and resource sharing on expensive mainframes IBM VM/370 Late 1970 s and early 1980 s: became
More informationVirtual Machines Fact Sheet
Terms Virtual Machines Fact Sheet T1: Host The underlying hardware systems that runs a virtual machine. T2: Virtual Machine Manager (VMM) Also known as a hypervisor, the VMM provides an interface that
More informationsel4: from Security to Safety Gernot Heiser, Anna Lyons NICTA and UNSW Australia
sel4: from Security to Safety Gernot Heiser, Anna Lyons NICTA and UNSW Australia 1 OS Trade-Offs Usability Minix Android Linux Trustworthiness Minix Android L4 sel4 Performance Linux L4 sel4 2015 Gernot
More information<Insert Picture Here> Oracle Database Support for Server Virtualization Updated December 7, 2009
Oracle Database Support for Server Virtualization Updated December 7, 2009 Support Policy Server virtualization software allows multiple operating system instances to run on the same
More informationKnut Omang Ifi/Oracle 19 Oct, 2015
Software and hardware support for Network Virtualization Knut Omang Ifi/Oracle 19 Oct, 2015 Motivation Goal: Introduction to challenges in providing fast networking to virtual machines Prerequisites: What
More informationMesovirtualization: Lightweight Virtualization Technique for Embedded Systems
Mesovirtualization: Lightweight Virtualization Technique for Embedded Systems Megumi Ito Shuichi Oikawa Department of Computer Science, University of Tsukuba 1-1-1 Tennodai, Tsukuba, Ibaraki 305-8573,
More informationSecure Containers. Jan 2015 www.imgtec.com. Imagination Technologies HGI Dec, 2014 p1
Secure Containers Jan 2015 www.imgtec.com Imagination Technologies HGI Dec, 2014 p1 What are we protecting? Sensitive assets belonging to the user and the service provider Network Monitor unauthorized
More informationVirtual Machines. Virtualization
Virtual Machines Marie Roch Tanenbaum 8.3 contains slides from: Tanenbaum 3 rd ed. 2008 1 Virtualization Started with the IBM System/360 in the 1960s Basic concept simulate multiple copies of the underlying
More informationUniversità Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012
Android Development Lecture 1 Android SDK & Development Environment Università Degli Studi di Parma Lecture Summary - 2 The Android Platform Android Environment Setup SDK Eclipse & ADT SDK Manager Android
More informationLast Class: OS and Computer Architecture. Last Class: OS and Computer Architecture
Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts
More informationSystem Virtual Machines
System Virtual Machines Introduction Key concepts Resource virtualization processors memory I/O devices Performance issues Applications 1 Introduction System virtual machine capable of supporting multiple
More informationConfinement Problem. The confinement problem Isolating entities. Example Problem. Server balances bank accounts for clients Server security issues:
Confinement Problem The confinement problem Isolating entities Virtual machines Sandboxes Covert channels Mitigation 1 Example Problem Server balances bank accounts for clients Server security issues:
More informationkvm: Kernel-based Virtual Machine for Linux
kvm: Kernel-based Virtual Machine for Linux 1 Company Overview Founded 2005 A Delaware corporation Locations US Office Santa Clara, CA R&D - Netanya/Poleg Funding Expertise in enterprise infrastructure
More informationOS Virtualization Frank Hofmann
OS Virtualization Frank Hofmann OP/N1 Released Products Engineering Sun Microsystems UK Overview Different approaches to virtualization > Compartmentalization > System Personalities > Virtual Machines
More informationFrom L3 to sel4: What Have We Learnt in 20 Years of L4 Microkernels?
From L3 to sel4: What Have We Learnt in 20 Years of L4 Microkernels? Kevin Elphinstone, Gernot Heiser NICTA and University of New South Wales 1993 Improving IPC by Kernel Design [SOSP] 2013 Gernot Heiser,
More informationEnterprise-Class Virtualization with Open Source Technologies
Enterprise-Class Virtualization with Open Source Technologies Alex Vasilevsky CTO & Founder Virtual Iron Software June 14, 2006 Virtualization Overview Traditional x86 Architecture Each server runs single
More information