CS 241 Honors Nothing is Ever Random
|
|
- Henry James Bishop
- 5 years ago
- Views:
Transcription
1 CS 241 Honors Nothing is Ever Random Kevin Hong University of Illinois Urbana-Champaign Feburary 13, 2018 Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
2 Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
3 What is randomness? From Wikipedia: Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
4 What is randomness? From Wikipedia: Randomness is the lack of pattern or predictability in events. Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
5 What is randomness? From Wikipedia: Randomness is the lack of pattern or predictability in events. A random sequence of events, symbols or steps has no order and does not follow an intelligible pattern or combination. Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
6 Why do we care? Random numbers are integral to tons of algorithms Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
7 Why do we care? Random numbers are integral to tons of algorithms Monte Carlo Methods Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
8 Why do we care? Random numbers are integral to tons of algorithms Monte Carlo Methods Quicksearch Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
9 Why do we care? Random numbers are integral to tons of algorithms Monte Carlo Methods Quicksearch If you re interested in randomized algorithms, take CS 473! Luck in games, etc Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
10 Based PRNG So we need to generate random numbers? Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
11 Based PRNG So we need to generate random numbers? Methods Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
12 Based PRNG So we need to generate random numbers? Methods Pseudorandom Number Generators (PRNG) Deterministic algorithm for generating a sequence of numbers Relies on a random seed Approximates random numbers well CSPRNG Fast, deterministic, periodic Mersenne Twister, xorshift Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
13 Based TRNG True Random Number Generators (TRNG) Rely on unpredictable physical phenomena Atmospheric noise, radioactive decay Slow, nondeterministic, non-periodic random.org Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
14 Randomness in a computer In every laptop...there lives a die... Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
15 Randomness in a computer In every laptop...there lives a die... That die is /dev/random and /dev/urandom Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
16 Randomness in a computer In every laptop...there lives a die... That die is /dev/random and /dev/urandom Entropy Pool Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
17 Randomness in a computer In every laptop...there lives a die... That die is /dev/random and /dev/urandom Entropy Pool Your computer grabs physical specs, keyboard input, mouse movements as entropy Supposedly random bits Keep an estimate of the number of unknown bits Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
18 Yo dawg...i heard you like randomness So you want x amount of bits? Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
19 Yo dawg...i heard you like randomness So you want x amount of bits? Pull x number of bits from your entropy pool Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
20 Yo dawg...i heard you like randomness So you want x amount of bits? Pull x number of bits from your entropy pool Hash it using any good hashing algorithm Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
21 Yo dawg...i heard you like randomness So you want x amount of bits? Pull x number of bits from your entropy pool Hash it using any good hashing algorithm Enjoy your new random number/ Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
22 Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
23 /dev/random? /dev/urandom? You may notice there s a difference Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
24 /dev/random? /dev/urandom? You may notice there s a difference Random vs unlimited random Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
25 /dev/random? /dev/urandom? You may notice there s a difference Random vs unlimited random Do you need unlimited random? Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
26 Further Topics Cryptography and CS461 Randomized Algorithms in CS473 and 498/598 Kevin Hong (UIUC) Randomness and Entropy Feburary 13, / 11
27 CS 241 Honors The cake CPU is a lie Aneesh Durg University of Illinois Urbana-Champaign February 13, 2018 Aneesh Durg (UIUC) Virtualization February 13, / 14
28 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Aneesh Durg (UIUC) Virtualization February 13, / 14
29 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Problem: Modern world demands high computing powers Aneesh Durg (UIUC) Virtualization February 13, / 14
30 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Problem: Modern world demands high computing powers Servers handling many users Enterprise software Crysis 3 Aneesh Durg (UIUC) Virtualization February 13, / 14
31 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Problem: Modern world demands high computing powers Servers handling many users Enterprise software Crysis 3 Solution: Virtual Machines! Aneesh Durg (UIUC) Virtualization February 13, / 14
32 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Problem: Modern world demands high computing powers Servers handling many users Enterprise software Crysis 3 Solution: Virtual Machines! Legacy Apps! Aneesh Durg (UIUC) Virtualization February 13, / 14
33 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Problem: Modern world demands high computing powers Servers handling many users Enterprise software Crysis 3 Solution: Virtual Machines! Legacy Apps! What if we had more power than we need? Aneesh Durg (UIUC) Virtualization February 13, / 14
34 I think there is a world market for maybe five computers. - Thomas Watson You probably have 5 computers on your right now. Problem: Modern world demands high computing powers Servers handling many users Enterprise software Crysis 3 Solution: Virtual Machines! Legacy Apps! What if we had more power than we need? Offers isolation! Aneesh Durg (UIUC) Virtualization February 13, / 14
35 Challenges What are sensitive instructions? Aneesh Durg (UIUC) Virtualization February 13, / 14
36 Challenges What are sensitive instructions? All instructions are equal, but some are more equal than others Requires elevated privilages to execute - can t have everybody breaking the system all the time Aneesh Durg (UIUC) Virtualization February 13, / 14
37 Challenges What are sensitive instructions? All instructions are equal, but some are more equal than others Requires elevated privilages to execute - can t have everybody breaking the system all the time Trap is not just a kind of music Aneesh Durg (UIUC) Virtualization February 13, / 14
38 Challenges What are sensitive instructions? All instructions are equal, but some are more equal than others Requires elevated privilages to execute - can t have everybody breaking the system all the time Trap is not just a kind of music trap the kernel and execute the instruction there Aneesh Durg (UIUC) Virtualization February 13, / 14
39 Challenges What are sensitive instructions? All instructions are equal, but some are more equal than others Requires elevated privilages to execute - can t have everybody breaking the system all the time Trap is not just a kind of music trap the kernel and execute the instruction there e.g. direct access to hardware, enable/disable interrupts, etc. Aneesh Durg (UIUC) Virtualization February 13, / 14
40 History time! Problem: What happens if a user tries to execute privilaged instructions Aneesh Durg (UIUC) Virtualization February 13, / 14
41 History time! Problem: What happens if a user tries to execute privilaged instructions You d hope it traps to kernel Aneesh Durg (UIUC) Virtualization February 13, / 14
42 History time! Problem: What happens if a user tries to execute privilaged instructions You d hope it traps to kernel Intel disagrees. Aneesh Durg (UIUC) Virtualization February 13, / 14
43 History time! Problem: What happens if a user tries to execute privilaged instructions You d hope it traps to kernel Intel disagrees. Solution: Lol just silently ignore those pesky users Aneesh Durg (UIUC) Virtualization February 13, / 14
44 History time! Problem: What happens if a user tries to execute privilaged instructions You d hope it traps to kernel Intel disagrees. Solution: Lol just silently ignore those pesky users Problem: Some architechtures/oses check have instructions that can do some sensitive instructions Aneesh Durg (UIUC) Virtualization February 13, / 14
45 History time! Problem: What happens if a user tries to execute privilaged instructions You d hope it traps to kernel Intel disagrees. Solution: Lol just silently ignore those pesky users Problem: Some architechtures/oses check have instructions that can do some sensitive instructions Different behavior when executed by user vs. kernel Aneesh Durg (UIUC) Virtualization February 13, / 14
46 History time! Why do we care? Aneesh Durg (UIUC) Virtualization February 13, / 14
47 History time! Why do we care? This makes virtualization more confusing... Aneesh Durg (UIUC) Virtualization February 13, / 14
48 History time! Why do we care? This makes virtualization more confusing... What if the OS is in user mode? Aneesh Durg (UIUC) Virtualization February 13, / 14
49 10 kinds of people in this world... Let s build a hypervisor! Aneesh Durg (UIUC) Virtualization February 13, / 14
50 10 kinds of people in this world... Let s build a hypervisor! Smaller than a kernel Aneesh Durg (UIUC) Virtualization February 13, / 14
51 10 kinds of people in this world... Let s build a hypervisor! Smaller than a kernel Allows us to virtualize hardware Aneesh Durg (UIUC) Virtualization February 13, / 14
52 10 kinds of people in this world... Let s build a hypervisor! Smaller than a kernel Allows us to virtualize hardware Type 1 vs Type 2 Aneesh Durg (UIUC) Virtualization February 13, / 14
53 10 kinds of people in this world... Let s build a hypervisor! Smaller than a kernel Allows us to virtualize hardware Type 1 vs Type 2 Pros and cons to each Aneesh Durg (UIUC) Virtualization February 13, / 14
54 Type 1 The intuitive, hardware-based approach Aneesh Durg (UIUC) Virtualization February 13, / 14
55 Type 1 The intuitive, hardware-based approach Aneesh Durg (UIUC) Virtualization February 13, / 14
56 Type 1 The intuitive, hardware-based approach Guest OS/kernel hypervisor Aneesh Durg (UIUC) Virtualization February 13, / 14
57 Type 1 The intuitive, hardware-based approach Guest OS/kernel hypervisor Guest process CPU Aneesh Durg (UIUC) Virtualization February 13, / 14
58 Type 2 First made by VMWare in 2006 Aneesh Durg (UIUC) Virtualization February 13, / 14
59 Type 2 First made by VMWare in 2006 On first run needs to boot from disk and install the OS to it s own disk The disks are acutally just files Aneesh Durg (UIUC) Virtualization February 13, / 14
60 Type 2 First made by VMWare in 2006 On first run needs to boot from disk and install the OS to it s own disk The disks are acutally just files Emulates sensitive instructions Aneesh Durg (UIUC) Virtualization February 13, / 14
61 Type 2 First made by VMWare in 2006 On first run needs to boot from disk and install the OS to it s own disk The disks are acutally just files Emulates sensitive instructions Runs on top of Guest OS! Aneesh Durg (UIUC) Virtualization February 13, / 14
62 Type 2 First made by VMWare in 2006 On first run needs to boot from disk and install the OS to it s own disk The disks are acutally just files Emulates sensitive instructions Runs on top of Guest OS! Scan blocks of code in OS, if a block of kernel code needs a sensitive Aneesh Durg (UIUC) Virtualization February 13, / 14
63 Type 2 First made by VMWare in 2006 On first run needs to boot from disk and install the OS to it s own disk The disks are acutally just files Emulates sensitive instructions Runs on top of Guest OS! Scan blocks of code in OS, if a block of kernel code needs a sensitive If it s a user mode, do nothing... Aneesh Durg (UIUC) Virtualization February 13, / 14
64 Type 2 First made by VMWare in 2006 On first run needs to boot from disk and install the OS to it s own disk The disks are acutally just files Emulates sensitive instructions Runs on top of Guest OS! Scan blocks of code in OS, if a block of kernel code needs a sensitive If it s a user mode, do nothing... This is called binary translation Aneesh Durg (UIUC) Virtualization February 13, / 14
65 Why does binary translation work? Caching! Aneesh Durg (UIUC) Virtualization February 13, / 14
66 Why does binary translation work? Caching! Can generate a graph of blocks the OS needs as they are availible by following branches/jumps Aneesh Durg (UIUC) Virtualization February 13, / 14
67 Why does binary translation work? Caching! Can generate a graph of blocks the OS needs as they are availible by following branches/jumps Once the whole program is caches, should run at native speed Aneesh Durg (UIUC) Virtualization February 13, / 14
68 Why does binary translation work? Caching! Can generate a graph of blocks the OS needs as they are availible by following branches/jumps Once the whole program is caches, should run at native speed Some optimizations like jumping straight to cached blocks Aneesh Durg (UIUC) Virtualization February 13, / 14
69 Which one is better? Generally type 2 Aneesh Durg (UIUC) Virtualization February 13, / 14
70 Which one is better? Generally type 2 Type 1 causes too many traps :( Aneesh Durg (UIUC) Virtualization February 13, / 14
71 Which one is better? Generally type 2 Type 1 causes too many traps :( This leads to poor MMU performace, CPU caching, and branch prediction Aneesh Durg (UIUC) Virtualization February 13, / 14
72 More compilcated than we thought? Paravirtualization Aneesh Durg (UIUC) Virtualization February 13, / 14
73 More compilcated than we thought? Paravirtualization Hypervisor as a microkernel Abstraction around hardware interface Requires modified OS Virtualizing IO Aneesh Durg (UIUC) Virtualization February 13, / 14
74 More compilcated than we thought? Paravirtualization Hypervisor as a microkernel Abstraction around hardware interface Requires modified OS Virtualizing IO What about reading and writing from memory? Aneesh Durg (UIUC) Virtualization February 13, / 14
75 More compilcated than we thought? Paravirtualization Hypervisor as a microkernel Abstraction around hardware interface Requires modified OS Virtualizing IO What about reading and writing from memory? Licensing? Aneesh Durg (UIUC) Virtualization February 13, / 14
76 More compilcated than we thought? Paravirtualization Hypervisor as a microkernel Abstraction around hardware interface Requires modified OS Virtualizing IO What about reading and writing from memory? Licensing? If you have a licence to run an OS on one machine is it one real machine or one machine? Aneesh Durg (UIUC) Virtualization February 13, / 14
77 Containerization (The final frontier...) Docker! Aneesh Durg (UIUC) Virtualization February 13, / 14
78 Containerization (The final frontier...) Docker! Lots of overlapping features Isolation Low cost Multiple OSes Aneesh Durg (UIUC) Virtualization February 13, / 14
79 Containerization (The final frontier...) No need to virtualize all the hardware/entire OS Aneesh Durg (UIUC) Virtualization February 13, / 14
80 Containerization (The final frontier...) No need to virtualize all the hardware/entire OS Can share libraries, executables, drives, etc. Aneesh Durg (UIUC) Virtualization February 13, / 14
81 Containerization (The final frontier...) No need to virtualize all the hardware/entire OS Can share libraries, executables, drives, etc. Made possible by software like aufs Layered FS that can have another real fs underneath. Aneesh Durg (UIUC) Virtualization February 13, / 14
82 Containerization (The final frontier...) No need to virtualize all the hardware/entire OS Can share libraries, executables, drives, etc. Made possible by software like aufs Layered FS that can have another real fs underneath. choose the right tool for the right task. Aneesh Durg (UIUC) Virtualization February 13, / 14
83 Sources http: //searchservervirtualization.techtarget.com/answer/ How-is-containerization-different-from-virtualization Modern Operating Systems 3 rd edition. Andrew S. Tanenbaum Aneesh Durg (UIUC) Virtualization February 13, / 14
CS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University
Frequently asked questions from the previous class survey CS 370: OPERATING SYSTEMS [VIRTUALIZATION] Shrideep Pallickara Computer Science Colorado State University Difference between physical and logical
More informationCSC 5930/9010 Cloud S & P: Virtualization
CSC 5930/9010 Cloud S & P: Virtualization Professor Henry Carter Fall 2016 Recap Network traffic can be encrypted at different layers depending on application needs TLS: transport layer IPsec: network
More informationVirtualization. Pradipta De
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 informationModule 1: Virtualization. Types of Interfaces
Module 1: 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
More informationCSC 580 Cryptography and Computer Security
CSC 580 Cryptography and Computer Security Random Bit Generators (Sections 8.1-8.3) February 20, 2018 Overview Today: HW 4 solution discussion Pseudorandom generation - concepts and simple techniques Reminder:
More informationVirtual Machines. Part 2: starting 19 years ago. Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.
Virtual Machines Part 2: starting 19 years ago Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved. Operating Systems In Depth IX 2 Copyright 2018 Thomas W. Doeppner.
More informationSpring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand
Introduction to Virtual Machines Nima Honarmand Virtual Machines & Hypervisors Virtual Machine: an abstraction of a complete compute environment through the combined virtualization of the processor, memory,
More informationCS 350 Winter 2011 Current Topics: Virtual Machines + Solid State Drives
CS 350 Winter 2011 Current Topics: Virtual Machines + Solid State Drives Virtual Machines Resource Virtualization Separating the abstract view of computing resources from the implementation of these resources
More informationBackground. IBM sold expensive mainframes to large organizations. Monitor sits between one or more OSes and HW
Virtual Machines Background IBM sold expensive mainframes to large organizations Some wanted to run different OSes at the same time (because applications were developed on old OSes) Solution: IBM developed
More informationVirtualization. Operating Systems, 2016, Meni Adler, Danny Hendler & Amnon Meisels
Virtualization Operating Systems, 2016, Meni Adler, Danny Hendler & Amnon Meisels 1 What is virtualization? Creating a virtual version of something o Hardware, operating system, application, network, memory,
More informationCSCE 410/611: Virtualization
CSCE 410/611: Virtualization Definitions, Terminology Why Virtual Machines? Mechanics of Virtualization Virtualization of Resources (Memory) Some slides made available Courtesy of Gernot Heiser, UNSW.
More informationVirtualization. Virtualization
Virtualization Virtualization Memory virtualization Process feels like it has its own address space Created by MMU, configured by OS Storage virtualization Logical view of disks connected to a machine
More informationLecture 5: February 3
CMPSCI 677 Operating Systems Spring 2014 Lecture 5: February 3 Lecturer: Prashant Shenoy Scribe: Aditya Sundarrajan 5.1 Virtualization Virtualization is a technique that extends or replaces an existing
More informationECE 331 Hardware Organization and Design. UMass ECE Discussion 11 4/12/2018
ECE 331 Hardware Organization and Design UMass ECE Discussion 11 4/12/2018 Today s Discussion Topics Hamming Codes For error detection and correction Virtual Machines Virtual Memory The Hamming SEC Code
More informationVirtualization and memory hierarchy
Virtualization and memory hierarchy Computer Architecture J. Daniel García Sánchez (coordinator) David Expósito Singh Francisco Javier García Blas ARCOS Group Computer Science and Engineering Department
More informationVirtualization. Dr. Yingwu Zhu
Virtualization Dr. Yingwu Zhu Virtualization Definition Framework or methodology of dividing the resources of a computer into multiple execution environments. Types Platform Virtualization: Simulate a
More informationCOMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy
COMPUTER ARCHITECTURE Virtualization and Memory Hierarchy 2 Contents Virtual memory. Policies and strategies. Page tables. Virtual machines. Requirements of virtual machines and ISA support. Virtual machines:
More information1 Virtualization Recap
1 Virtualization Recap 2 Recap 1 What is the user part of an ISA? What is the system part of an ISA? What functionality do they provide? 3 Recap 2 Application Programs Libraries Operating System Arrows?
More informationVirtualization (II) SPD Course 17/03/2010 Massimo Coppola
Virtualization (II) SPD Course 17/03/2010 Massimo Coppola The players The Hypervisor (HV) implements the virtual machine emulation to run a Guest OS Provides resources and functionalities to the Guest
More informationreferences Virtualization services Topics Virtualization
references Virtualization services Virtual machines Intel Virtualization technology IEEE xplorer, May 2005 Comparison of software and hardware techniques for x86 virtualization ASPLOS 2006 Memory resource
More informationCSCE 410/611: Virtualization!
CSCE 410/611: Virtualization! Definitions, Terminology! Why Virtual Machines?! Mechanics of Virtualization! Virtualization of Resources (Memory)! Some slides made available Courtesy of Gernot Heiser, UNSW.!
More informationChapter 5 C. Virtual machines
Chapter 5 C Virtual machines Virtual Machines Host computer emulates guest operating system and machine resources Improved isolation of multiple guests Avoids security and reliability problems Aids sharing
More informationCHAPTER 16 - VIRTUAL MACHINES
CHAPTER 16 - VIRTUAL MACHINES 1 OBJECTIVES Explore history and benefits of virtual machines. Discuss the various virtual machine technologies. Describe the methods used to implement virtualization. Show
More informationCLOUD COMPUTING IT0530. G.JEYA BHARATHI Asst.Prof.(O.G) Department of IT SRM University
CLOUD COMPUTING IT0530 G.JEYA BHARATHI Asst.Prof.(O.G) Department of IT SRM University What is virtualization? Virtualization is way to run multiple operating systems and user applications on the same
More informationCHAPTER 16 - VIRTUAL MACHINES
CHAPTER 16 - VIRTUAL MACHINES 1 OBJECTIVES Explore history and bene ts of virtual machines. Discuss the various virtual machine technologies. Describe the methods used to implement virtualization. Show
More informationOS Virtualization. Why Virtualize? Introduction. Virtualization Basics 12/10/2012. Motivation. Types of Virtualization.
Virtualization Basics Motivation OS Virtualization CSC 456 Final Presentation Brandon D. Shroyer Types of Virtualization Process virtualization (Java) System virtualization (classic, hosted) Emulation
More information24-vm.txt Mon Nov 21 22:13: Notes on Virtual Machines , Fall 2011 Carnegie Mellon University Randal E. Bryant.
24-vm.txt Mon Nov 21 22:13:36 2011 1 Notes on Virtual Machines 15-440, Fall 2011 Carnegie Mellon University Randal E. Bryant References: Tannenbaum, 3.2 Barham, et al., "Xen and the art of virtualization,"
More informationVirtualization. ...or how adding another layer of abstraction is changing the world. CIS 399: Unix Skills University of Pennsylvania.
Virtualization...or how adding another layer of abstraction is changing the world. CIS 399: Unix Skills University of Pennsylvania April 6, 2009 (CIS 399 Unix) Virtualization April 6, 2009 1 / 22 What
More informationXen VGA passthrough. 1.1 VGA passthrough. 1 Introduction. 2 Xen architecture. 2.1 Structure
Xen VGA passthrough Author: Yuri Schaeffer BSc, yuri.schaeffer@os3.nl System & Network Engineering, Univeriteit van Amsterdam Supervisor: Mendel Mobach, Systemhouse Mobach bv Abstract After a small introduction
More informationThe Challenges of X86 Hardware Virtualization. GCC- Virtualization: Rajeev Wankar 36
The Challenges of X86 Hardware Virtualization GCC- Virtualization: Rajeev Wankar 36 The Challenges of X86 Hardware Virtualization X86 operating systems are designed to run directly on the bare-metal hardware,
More informationVirtual Machines Disco and Xen (Lecture 10, cs262a) Ion Stoica & Ali Ghodsi UC Berkeley February 26, 2018
Virtual Machines Disco and Xen (Lecture 10, cs262a) Ion Stoica & Ali Ghodsi UC Berkeley February 26, 2018 Today s Papers Disco: Running Commodity Operating Systems on Scalable Multiprocessors, Edouard
More informationLearning Outcomes. Extended OS. Observations Operating systems provide well defined interfaces. Virtual Machines. Interface Levels
Learning Outcomes Extended OS An appreciation that the abstract interface to the system can be at different levels. Virtual machine monitors (VMMs) provide a lowlevel interface An understanding of trap
More information/dev/random and Your FIPS Validation Can Be Friends
/dev/random and Your FIPS 140-2 Validation Can Be Friends Yes, Really Valerie Fenwick Manager, Solaris Cryptographic Technologies team Oracle May 19, 2016 Photo by CGP Grey, http://www.cgpgrey.com/ Creative
More informationLINUX Virtualization. Running other code under LINUX
LINUX Virtualization Running other code under LINUX Environment Virtualization Citrix/MetaFrame Virtual desktop under Windows NT. aka Windows Remote Desktop Protocol VNC, Dameware virtual console. XWindows
More informationICMC 2017 Washington DC
ICMC 2017 Washington DC Richard Moulds General Manager, Whitewood May 19th 2017 Keys to the kingdom Keys that need to be physically protected e.g. in an HSM Keys that need to be achvely managed Keys that
More informationPrinciples of Operating Systems CS 446/646
Principles of Operating Systems CS 446/646 5. Input/Output a. Overview of the O/S Role in I/O b. Principles of I/O Hardware c. I/O Software Layers Overview of the I/O software Interrupt handlers Device
More informationAdministrative Details. CS 140 Final Review Session. Pre-Midterm. Plan For Today. Disks + I/O. Pre-Midterm, cont.
Administrative Details CS 140 Final Review Session Final exam: 12:15-3:15pm, Thursday March 18, Skilling Aud (here) Questions about course material or the exam? Post to the newsgroup with Exam Question
More informationCSE 120 Principles of Operating Systems
CSE 120 Principles of Operating Systems Spring 2018 Lecture 16: Virtual Machine Monitors Geoffrey M. Voelker Virtual Machine Monitors 2 Virtual Machine Monitors Virtual Machine Monitors (VMMs) are a hot
More informationBjörn Döbel. Microkernel-Based Operating Systems. Exercise 3: Virtualization
Faculty of Computer Science Institute for System Architecture, Operating Systems Group Björn Döbel Microkernel-Based Operating Systems Exercise 3: Virtualization Emulation Virtualization Emulation / Simulation
More informationUNIT 9A Randomness in Computation: Random Number Generators Principles of Computing, Carnegie Mellon University - CORTINA
UNIT 9A Randomness in Computation: Random Number Generators 1 Course Announcements We are in the process of setting up the tutoring help system. PS7 is due Wednesday 3/20 in class Midterm 2 (written) is
More informationDan Noé University of New Hampshire / VeloBit
Dan Noé University of New Hampshire / VeloBit A review of how the CPU works The operating system kernel and when it runs User and kernel mode Device drivers Virtualization of memory Virtual memory Paging
More informationCSCI 8530 Advanced Operating Systems. Part 19 Virtualization
CSCI 8530 Advanced Operating Systems Part 19 Virtualization Virtualization This is a very old idea It appears in many different forms A variety of commercial products exist The idea has become hot again
More informationChapter 5 B. Large and Fast: Exploiting Memory Hierarchy
Chapter 5 B Large and Fast: Exploiting Memory Hierarchy Dependability 5.5 Dependable Memory Hierarchy Chapter 6 Storage and Other I/O Topics 2 Dependability Service accomplishment Service delivered as
More informationUNIT 9A Randomness in Computation: Random Number Generators
UNIT 9A Randomness in Computation: Random Number Generators 1 Last Unit Computer organization: what s under the hood 3 This Unit Random number generation Using pseudorandom numbers 4 Overview The concept
More informationXen and the Art of Virtualization
Xen and the Art of Virtualization Paul Barham,, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer,, Ian Pratt, Andrew Warfield University of Cambridge Computer Laboratory Presented
More informationVirtualization Introduction
Virtualization Introduction Simon COTER Principal Product Manager Oracle VM & VirtualBox simon.coter@oracle.com https://blogs.oracle.com/scoter November 21 st, 2016 Safe Harbor Statement The following
More informationVirtualization. Michael Tsai 2018/4/16
Virtualization Michael Tsai 2018/4/16 What is virtualization? Let s first look at a video from VMware http://www.vmware.com/tw/products/vsphere.html Problems? Low utilization Different needs DNS DHCP Web
More informationLecture 5. KVM for ARM. Christoffer Dall and Jason Nieh. 5 November, Operating Systems Practical. OSP Lecture 5, KVM for ARM 1/42
Lecture 5 KVM for ARM Christoffer Dall and Jason Nieh Operating Systems Practical 5 November, 2014 OSP Lecture 5, KVM for ARM 1/42 Contents Virtualization KVM Virtualization on ARM KVM/ARM: System architecture
More informationVirtual machines (e.g., VMware)
Case studies : Introduction to operating systems principles Abstraction Management of shared resources Indirection Concurrency Atomicity Protection Naming Security Reliability Scheduling Fairness Performance
More informationVM Migration, Containers (Lecture 12, cs262a)
VM Migration, Containers (Lecture 12, cs262a) Ali Ghodsi and Ion Stoica, UC Berkeley February 28, 2018 (Based in part on http://web.eecs.umich.edu/~mosharaf/slides/eecs582/w16/021516-junchenglivemigration.pptx)
More informationBackground: Operating Systems
Background: Operating Systems Brad Karp UCL Computer Science CS GZ03 / M030 9 th October 2015 Outline Goals of an operating system Sketch of UNIX User processes, kernel Process-kernel communication Waiting
More informationInformation Security CS526
Information CS 526 Topic 3 Ciphers and Cipher : Stream Ciphers, Block Ciphers, Perfect Secrecy, and IND-CPA 1 Announcements HW1 is out, due on Sept 10 Start early, late policy is 3 total late days for
More informationPorting bhyve on ARM. Mihai Carabas, Peter Grehan BSDCan 2016 University of Ottawa Ottawa, Canada June 10 11, 2016
Porting bhyve on ARM Mihai Carabas, Peter Grehan {mihai,grehan}@freebsd.org BSDCan 2016 University of Ottawa Ottawa, Canada June 10 11, 2016 About me University POLITEHNICA of Bucharest PhD Student: virtualization
More informationVirtual Machine Security
Virtual Machine Security CSE443 - Spring 2012 Introduction to Computer and Network Security Professor Jaeger www.cse.psu.edu/~tjaeger/cse443-s12/ 1 Operating System Quandary Q: What is the primary goal
More informationMultiprocessor Systems Continuous need for faster computers Multiprocessors: shared memory model, access time nanosec (ns) Multicomputers: message pas
Multiple processor systems 1 Multiprocessor Systems Continuous need for faster computers Multiprocessors: shared memory model, access time nanosec (ns) Multicomputers: message passing multiprocessor, access
More information64-bit ARM Unikernels on ukvm
64-bit ARM Unikernels on ukvm Wei Chen Senior Software Engineer Tokyo / Open Source Summit Japan 2017 2017-05-31 Thanks to Dan Williams, Martin Lucina, Anil Madhavapeddy and other Solo5
More informationVirtual Virtual Memory
Virtual Virtual Memory Jason Power 3/20/2015 With contributions from Jayneel Gandhi and Lena Olson 4/17/2015 UNIVERSITY OF WISCONSIN 1 Virtual Machine History 1970 s: VMMs 1997: Disco 1999: VMWare (binary
More informationOperating Systems, Fall Lecture 9, Tiina Niklander 1
Multiprocessor Systems Multiple processor systems Ch 8.1 8.3 1 Continuous need for faster computers Multiprocessors: shared memory model, access time nanosec (ns) Multicomputers: message passing multiprocessor,
More informationCloud & container monitoring , Lars Michelsen Check_MK Conference #4
Cloud & container monitoring 04.05.2018, Lars Michelsen Some cloud definitions Applications Data Runtime Middleware O/S Virtualization Servers Storage Networking Software-as-a-Service (SaaS) Applications
More informationIntroduction to Concurrency (Processes, Threads, Interrupts, etc.)
Introduction to Concurrency (Processes, Threads, Interrupts, etc.) CS-3013 Operating Systems Hugh C. Lauer (Slides include materials from Slides include materials from Modern Operating Systems, 3 rd ed.,
More informationAdvanced Operating Systems (CS 202) Virtualization
Advanced Operating Systems (CS 202) Virtualization Virtualization One of the natural consequences of the extensibility research we discussed What is virtualization and what are the benefits? 2 Virtualization
More informationI/O and virtualization
I/O and virtualization CSE-C3200 Operating systems Autumn 2015 (I), Lecture 8 Vesa Hirvisalo Today I/O management Control of I/O Data transfers, DMA (Direct Memory Access) Buffering Single buffering Double
More informationCS-580K/480K Advanced Topics in Cloud Computing. VM Virtualization II
CS-580K/480K Advanced Topics in Cloud Computing VM Virtualization II 1 How to Build a Virtual Machine? 2 How to Run a Program Compiling Source Program Loading Instruction Instruction Instruction Instruction
More informationCIS Operating Systems CPU Mode. Professor Qiang Zeng Spring 2018
CIS 3207 - Operating Systems CPU Mode Professor Qiang Zeng Spring 2018 CPU Modes Two common modes Kernel mode The CPU has to be in this mode to execute the kernel code User mode The CPU has to be in this
More informationAnalysis of Inherent Randomness of the Linux kernel
Analysis of Inherent Randomness of the Linux kernel Nicholas Mc Guire (DSLab Lanzhou University, China) Peter Okech (Strathmore University, Kenya) Georg Schiesser (Opentech, Austria) 11 th Real-Time Linux
More informationVirtualization. Starting Point: A Physical Machine. What is a Virtual Machine? Virtualization Properties. Types of Virtualization
Starting Point: A Physical Machine Virtualization Based on materials from: Introduction to Virtual Machines by Carl Waldspurger Understanding Intel Virtualization Technology (VT) by N. B. Sahgal and D.
More informationDistributed Systems COMP 212. Lecture 18 Othon Michail
Distributed Systems COMP 212 Lecture 18 Othon Michail Virtualisation & Cloud Computing 2/27 Protection rings It s all about protection rings in modern processors Hardware mechanism to protect data and
More informationIntroduction to Cloud Computing and Virtualization. Mayank Mishra Sujesha Sudevalayam PhD Students CSE, IIT Bombay
Introduction to Cloud Computing and Virtualization By Mayank Mishra Sujesha Sudevalayam PhD Students CSE, IIT Bombay Talk Layout Cloud Computing Need Features Feasibility Virtualization of Machines What
More informationVirtualization. ! Physical Hardware Processors, memory, chipset, I/O devices, etc. Resources often grossly underutilized
Starting Point: A Physical Machine Virtualization Based on materials from: Introduction to Virtual Machines by Carl Waldspurger Understanding Intel Virtualization Technology (VT) by N. B. Sahgal and D.
More informationDocker und IBM Digital Experience in Docker Container
Docker und IBM Digital Experience in Docker Container 20. 21. Juni 2017 IBM Labor Böblingen 1 What is docker Introduction VMs vs. containers Terminology v Docker components 2 6/22/2017 What is docker?
More informationVirtual Machine Virtual Machine Types System Virtual Machine: virtualize a machine Container: virtualize an OS Program Virtual Machine: virtualize a process Language Virtual Machine: virtualize a language
More informationVIRTUALIZATION: IBM VM/370 AND XEN
1 VIRTUALIZATION: IBM VM/370 AND XEN CS6410 Hakim Weatherspoon IBM VM/370 Robert Jay Creasy (1939-2005) Project leader of the first full virtualization hypervisor: IBM CP-40, a core component in the VM
More informationMonte Carlo Simulations
Monte Carlo Simulations DESCRIPTION AND APPLICATION Outline Introduction Description of Method Cost Estimating Example Other Considerations Introduction Most interesting things are probabilistic (opinion)
More informationHOWTO: A Simple Random Number Generator for the ATmega1280 Microcontroller under C and TinyOS
HOWTO: A Simple Random Number Generator for the ATmega1280 Microcontroller under C and TinyOS Patrik Fimml Martin Perner Bernhard Petschina May 21, 2015 (v2.0) Contents 1 Introduction 1 1.1 True randomness
More informationJan 20, 2005 Lecture 2: Multiprogramming OS
Jan 20, 2005 Lecture 2: Multiprogramming OS February 17, 2005 1 Review OS mediates between hardware and user software QUIZ: Q: What is the most important function in an OS? A: To support multiprogramming
More informationOverview of System Virtualization: The most powerful platform for program analysis and system security. Zhiqiang Lin
CS 6V81-05: System Security and Malicious Code Analysis Overview of System Virtualization: The most powerful platform for program analysis and system security Zhiqiang Lin Department of Computer Science
More informationThe Future of Virtualization
The "anyos" paradigm and its implications through virtualization 30 December 2005 22c3 Berlin Introduction Tools The Future Introduction Application Area Theorie What is Virtualization? Virtualization
More information16 Sharing Main Memory Segmentation and Paging
Operating Systems 64 16 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per
More informationCS 241 Honors Memory
CS 241 Honors Memory Ben Kurtovic Atul Sandur Bhuvan Venkatesh Brian Zhou Kevin Hong University of Illinois Urbana Champaign February 20, 2018 CS 241 Course Staff (UIUC) Memory February 20, 2018 1 / 35
More informationCS 261 Fall Mike Lam, Professor. Virtual Memory
CS 261 Fall 2016 Mike Lam, Professor Virtual Memory Topics Operating systems Address spaces Virtual memory Address translation Memory allocation Lingering questions What happens when you call malloc()?
More informationWheel of Fortune ANALYZING EMBEDDED OS (CS)PRNGS JOS WETZELS ALI ABBASI
Wheel of Fortune ANALYZING EMBEDDED OS (CS)PRNGS JOS WETZELS ALI ABBASI WHOIS Jos Wetzels 1,2 Researcher, MSc student samvartaka.github.io Ali Abbasi 1,3 Ph.D. candidate http://wwwhome.cs.utwente.nl/~abbasia/
More informationBackground. IBM sold expensive mainframes to large organiza<ons. Monitor sits between one or more OSes and HW
Virtual Machines Background IBM sold expensive mainframes to large organiza
More informationCrypto: Passwords and RNGs. CS 642 Guest Lecturer: Adam Everspaugh
Crypto: Passwords and RNGs CS 642 Guest Lecturer: Adam Everspaugh http://pages.cs.wisc.edu/~ace Topics! Password-based Crypto!! Random Number Generators Symmetric Key Encryption key generation R k Gen
More informationOPERATING SYSTEMS Chapter 13 Virtual Machines. CS3502 Spring 2017
OPERATING SYSTEMS Chapter 13 Virtual Machines CS3502 Spring 2017 Virtual Machines Allow you to run a Guest Operating System on top of a Host Operating System VMware (for most systems) Microsoft Virtual
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 27 Virtualization Slides based on Various sources 1 1 Virtualization Why we need virtualization? The concepts and
More informationHypervisor security. Evgeny Yakovlev, DEFCON NN, 2017
Hypervisor security Evgeny Yakovlev, DEFCON NN, 2017 whoami Low-level development in C and C++ on x86 UEFI, virtualization, security Jetico, Kaspersky Lab QEMU/KVM developer at Virtuozzo 2 Agenda Why hypervisor
More informationCOS 318: Operating Systems. Virtual Machine Monitors
COS 318: Operating Systems Virtual Machine Monitors Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Announcements Project
More informationXen and the Art of Virtualization. Nikola Gvozdiev Georgian Mihaila
Xen and the Art of Virtualization Nikola Gvozdiev Georgian Mihaila Outline Xen and the Art of Virtualization Ian Pratt et al. I. The Art of Virtualization II. Xen, goals and design III. Xen evaluation
More informationPseudorandom Number Generation
Pseudorandom Number Generation Thanks once again to A. Joseph, D. Tygar, U. Vazirani, and D. Wagner at the University of California, Berkeley 1 What Can Go Wrong? An example: This generates a 16 byte (128
More informationSecure Partitioning (s-par) for Enterprise-Class Consolidation
Secure Partitioning (s-par) for Enterprise-Class Consolidation How Partitioning Technology Delivers Consolidation Without Compromising Performance, Security, or Isolation White Paper The enterprise clients
More informationOPS-9: Fun With Virtualization. John Harlow. John Harlow. About John Harlow
OPS-9: Fun With Virtualization President, BravePoint, Inc. About Unix user since 1982 Progress developer since 1984 Linux Desktop and Server user since 1995 VMware user since earliest beta in 1999 Contact
More informationCS5460: Operating Systems. Lecture: Virtualization. Anton Burtsev March, 2013
CS5460: Operating Systems Lecture: Virtualization Anton Burtsev March, 2013 Traditional operating system Virtual machines A bit of history Virtual machines were popular in 60s-70s Share resources of mainframe
More informationOperating system hardening
Operating system Comp Sci 3600 Security Outline 1 2 3 4 5 6 What is OS? Hardening process that includes planning, ation, uration, update, and maintenance of the operating system and the key applications
More informationT Jarkko Turkulainen, F-Secure Corporation
T-110.6220 2010 Emulators and disassemblers Jarkko Turkulainen, F-Secure Corporation Agenda Disassemblers What is disassembly? What makes up an instruction? How disassemblers work Use of disassembly In
More informationA Survey on Virtualization Technologies
A Survey on Virtualization Technologies Virtualization is HOT Microsoft acquires Connectix Corp. EMC acquires VMware Veritas acquires Ejascent IBM, already a pioneer Sun working hard on it HP picking up
More informationMeltdown and Spectre - understanding and mitigating the threats (Part Deux)
Meltdown and Spectre - understanding and mitigating the threats (Part Deux) Gratuitous vulnerability logos Jake Williams @MalwareJake SANS / Rendition Infosec sans.org / rsec.us @SANSInstitute / @RenditionSec
More informationUNIT 9A Randomness in Computa5on: Random Number Generators. Randomness in Compu5ng
UNIT 9A Randomness in Computa5on: Random Number Generators 1 Randomness in Compu5ng Determinism -- in all algorithms and programs we have seen so far, given an input and a sequence of steps, we get a unique
More informationFast access ===> use map to find object. HW == SW ===> map is in HW or SW or combo. Extend range ===> longer, hierarchical names
Fast access ===> use map to find object HW == SW ===> map is in HW or SW or combo Extend range ===> longer, hierarchical names How is map embodied: --- L1? --- Memory? The Environment ---- Long Latency
More informationOperating System Overview
A Typical Computer from a Hardware Point of View... Operating System Overview Otto J. Anshus Memory Chipset I/O bus (including slides from, Princeton University) University of Tromsø Keyboard Network /OJA
More informationINNOV-4: Fun With Virtualization. Or, How I learned to love computers that don t really exist...
1 INNOV-4: Fun With Virtualization Or, How I learned to love computers that don t really exist... President, BravePoint, Inc. About Unix user since 1982 Progress developer since 1984 Linux Desktop and
More information