Cider. Native Execution of ios Apps on Android. Alexander Van't Hof, Naser AlDuaij, Christoffer Dall, Nicolas Viennot, Jason Nieh. Columbia University

Size: px
Start display at page:

Download "Cider. Native Execution of ios Apps on Android. Alexander Van't Hof, Naser AlDuaij, Christoffer Dall, Nicolas Viennot, Jason Nieh. Columbia University"

Transcription

1 Cider Native Execution of Apps on Jeremy Andrus Alexander Van't Hof, Naser AlDuaij, Christoffer Dall, Nicolas Viennot, Jason Nieh Columbia University In the City of New York March 4, 2014 ASPLOS 2014, Salt Lake City, UT!1

2

3 The Goal!3

4 Virtualization!4

5 Binary Compatibility Wine API Reimplementation immense implementation! 20 years later: still incomplete!5

6 Binary Compatibility Kernel ABI Compatibility BSD Linux Compatibility missing kernel subsystem! opaque driver interfaces!6

7 Cider : OS Compatibility Direct execution of unmodified apps" Reuse existing libraries" Reuse existing open source kernel code" apps can use libraries!7

8 Cider : OS Compatibility distinguish and Linux threads" " " XNU code in the Linux kernel" " apps use libraries!8

9 Cider : OS Compatibility XNU syscall Linux syscall Cider Linux Kernel Mach-O Loader!9

10 Per-Thread XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!10

11 Cider : OS Compatibility XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!11

12 Duct tape XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!12

13 Duct tape XNU Source Foreign Zone Mach IPC Zone Domestic Zone!13

14 Duct tape lck_mtx_lock() mutex_lock() lck_mtx_t struct mutex XNU Source Mach IPC Linux kernel" memory, synch," list management, etc. Synchronization, List Mgmt Mach Semantics Mach IPC syscall stubs kmalloc, spinlock, list!14

15 Duct tape XNU Source Mach IPC Cider" Linux" Kernel Synchronization, List Mgmt Mach Semantics kmalloc, spinlock, list Mach IPC syscall stubs!15

16 Cider : OS Compatibility OpenGL Apple GPU?! XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!16

17 Cider : OS Compatibility ELF?? OpenGL?? XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!17

18 Cider : OS Compatibility OpenGL?? XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!18

19 Libraries diplomats XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!19

20 App links against diplomats - not symbols! diplomats Libraries afunc() XNU syscall Persona Management Linux syscall Cider Linux Kernel!20

21 Cider : Architecture launchd Mach" IPC Services configd Libraries diplomats XNU Source Mach IPC XNU syscall Linux syscall Cider Linux Kernel Persona Management Mach-O Loader!21

22 Cider: Prototype Apps! Nexus 7 (Tegra)" Integrated app launch Apps!!22

23 Cider: Prototype Nexus 7 (Tegra)" Full multi-touch support" OpenGL for 2D/3D graphics!23

24 Cider: Experimental Results PassMark benchmark application" App" Stock Nexus 7" Cider" App" Cider" ipad mini!24

25 PassMark Benchmark 20! Cider! 15! Cider!! 10! 5! 0! 4! 3! 2! 1! om pr es si on St! or ag e W rit e! St or ag e Re ad M em! or y W rit M e! em or y Re ad! io n! pt! So rt C En cr y D at a D at a nd om St r in g Pr im es! nd Fi Ra Fl oa t in g In t eg e Po in t! r! 0! Normalized Performance Normalized Performance Cider: Experimental Results!25

26 eg e Fl r! oa So tin lid g Po V ec in Tr to t! an F rs sp ind! Ra ar P nd en rim om t V es ec! S tr tor C om in s! g D pl So at ex a V rt! En e cr cto IDm yp rs atag tio! a e n! CR ome pnrde esri sing on! SIm to! arag gee FW iltr eirte S s! Si to m ra pl g e er 3D e ad M T C em es! om o t! r pl y ex W M 3D rite em Te! or st! y Re ad! In t 15! Cider!! Cider: Experimental Results PassMark Benchmark 20! 2.0! Cider!! Cider!! 1.5! 10! 5! 1.0! 0! 4! 3! 0.5! 2! 1! 0.0! 0! 54

27 Cider: Experimental Results PassMark Benchmark 2.0! Cider! Cider!! 1.5! 1.0! 0.5! Tr a So lid Ve ct or s! ns pa re nt Ve ct or C om s! pl ex Ve ct Im or s! ag e Re nd er in g! Im ag e Fi lte rs Si! m pl e 3D Te C st om! pl ex 3D Te st! 0.0!!27

28 Conclusion Direct execution of unmodified apps" Per-thread " "!28

29 Thank You Cider Logo design by: Steve Lovelace (

Columbia University in the city of new york

Columbia University in the city of new york A virtual Smartphone Architecture Jeremy Andrus Christoffer Dall Alexander Van t Hof Oren Laadan Jason Nieh Columbia University in the city of new york 1 23rd ACM Symposium on Operating Systems Principles,

More information

POSIX Abstractions in Modern Operating Systems: The Old, the New, and the Missing

POSIX Abstractions in Modern Operating Systems: The Old, the New, and the Missing POSIX Abstractions in Modern Operating Systems: The Old, the New, and the Missing Vaggelis Atlidakis, Jeremy Andrus, Roxana Geambasu, Dimitris Mitropoulos, and Jason Nieh Columbia University Motivating

More information

L4/Darwin: Evolving UNIX. Charles Gray Research Engineer, National ICT Australia

L4/Darwin: Evolving UNIX. Charles Gray Research Engineer, National ICT Australia L4/Darwin: Evolving UNIX Charles Gray Research Engineer, National ICT Australia charles.gray@nicta.com.au Outline 1. Project Overview 2. BSD on the Mach microkernel 3. Porting Darwin to the L4 microkernel

More information

TMCH Report March February 2017

TMCH Report March February 2017 TMCH Report March 2013 - February 2017 Contents Contents 2 1 Trademark Clearinghouse global reporting 3 1.1 Number of jurisdictions for which a trademark record has been submitted for 3 2 Trademark Clearinghouse

More information

MICROKERNELS: MACH AND L4

MICROKERNELS: MACH AND L4 1 MICROKERNELS: MACH AND L4 CS6410 Hakim Weatherspoon Introduction to Kernels Different Types of Kernel Designs Monolithic kernel Microkernel Hybrid Kernel Exokernel Virtual Machines? Monolithic Kernels

More information

PRODUCT CATALOG 2018

PRODUCT CATALOG 2018 PRODUCT CATALOG 2018 BROADCAST QUALITY MADE AFFORDABLE 2 Welcome We invite you to explore our 2018 Product Catalog. Here at PTZOptics we pride ourselves on providing Broadcast quality equipment, made affordable.

More information

LoGA: Low-Overhead GPU Accounting Using Events

LoGA: Low-Overhead GPU Accounting Using Events 10th ACM International Systems and Storage Conference, (KIT) KIT The Research University in the Helmholtz Association www.kit.edu GPU Sharing GPUs increasingly popular in computing Not every application

More information

Vulkan: Scaling to Multiple Threads. Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics

Vulkan: Scaling to Multiple Threads. Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics Vulkan: Scaling to Multiple Threads Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics www.imgtec.com Introduction Who am I? Kevin Sun Working at Imagination Technologies Take responsibility

More information

GPUfs: Integrating a file system with GPUs

GPUfs: Integrating a file system with GPUs ASPLOS 2013 GPUfs: Integrating a file system with GPUs Mark Silberstein (UT Austin/Technion) Bryan Ford (Yale), Idit Keidar (Technion) Emmett Witchel (UT Austin) 1 Traditional System Architecture Applications

More information

The Design, Implementation, and Evaluation of Cells: A Virtual Smartphone Architecture

The Design, Implementation, and Evaluation of Cells: A Virtual Smartphone Architecture The Design, Implementation, and Evaluation of Cells: A Virtual Smartphone Architecture 9 CHRISTOFFER DALL, JEREMY ANDRUS, ALEXANDER VAN T HOF, OREN LAADAN, and JASON NIEH, Columbia University Smartphones

More information

Four Components of a Computer System

Four Components of a Computer System Four Components of a Computer System Operating System Concepts Essentials 2nd Edition 1.1 Silberschatz, Galvin and Gagne 2013 Operating System Definition OS is a resource allocator Manages all resources

More information

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services Operating System Services One set of services for users The other set of services for system operations Operating Systems Structures Notice: This set of slides is based on the notes by Professor Perrone

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures 1. Operating System Services 2. User Operating System

More information

Although Mac OS X is a relatively new operating system, its lineage is rather

Although Mac OS X is a relatively new operating system, its lineage is rather Preface Although Mac OS X is a relatively new operating system, its lineage is rather colorful, and the history of most of its components is much older. Mac OS X, and Apple in general, has attracted a

More information

GPU Computing Master Clss. Development Tools

GPU Computing Master Clss. Development Tools GPU Computing Master Clss Development Tools Generic CUDA debugger goals Support all standard debuggers across all OS Linux GDB, TotalView and DDD Windows Visual studio Mac - XCode Support CUDA runtime

More information

Operating System Virtualization: Practice and Experience

Operating System Virtualization: Practice and Experience Operating System Virtualization: Practice and Experience Oren Laadan and Jason Nieh Columbia University {orenl,nieh}@cs.columbia.edu SYSTOR 2010, Haifa, Israel 1 orenl@cs.columbia.edu SYSTOR 2010, Haifa,

More information

Lecture 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. 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 information

Structure of OS. After knowing a bit of OS Review of different computing environment

Structure of OS. After knowing a bit of OS Review of different computing environment CS341: Operating System Lect08 : 19 th Aug 2014 Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Structure of OS Simple structure MS DOS More complex UNIX Layered an abstraction

More information

Lecture 2 Fundamental OS Concepts. Bo 2018, Spring

Lecture 2 Fundamental OS Concepts. Bo 2018, Spring Lecture 2 Fundamental OS Concepts Bo Tang @ 2018, Spring Our Roadmap Computer Organization Revision Kernel Data Structures in OS OS History Four fundamental OS concepts Thread Address space (with translation)

More information

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

OS Structure. Kevin Webb Swarthmore College January 25, Relevant xkcd:

OS Structure. Kevin Webb Swarthmore College January 25, Relevant xkcd: OS Structure Kevin Webb Swarthmore College January 25, 2018 Relevant xkcd: One of the survivors, poking around in the ruins with the point of a spear, uncovers a singed photo of Richard Stallman. They

More information

Threads. Thread Concept Multithreading Models User & Kernel Threads Pthreads Threads in Solaris, Linux, Windows. 2/13/11 CSE325 - Threads 1

Threads. Thread Concept Multithreading Models User & Kernel Threads Pthreads Threads in Solaris, Linux, Windows. 2/13/11 CSE325 - Threads 1 Threads Thread Concept Multithreading Models User & Kernel Threads Pthreads Threads in Solaris, Linux, Windows 2/13/11 CSE325 - Threads 1 Threads The process concept incorporates two abstractions: a virtual

More information

Facing the Reality: Virtualization in a Microkernelbased Operating System. Matthias Lange, MOS, January 26th, 2016

Facing the Reality: Virtualization in a Microkernelbased Operating System. Matthias Lange, MOS, January 26th, 2016 Facing the Reality: Virtualization in a Microkernelbased Operating System Matthias Lange, MOS, January 26th, 2016 matthias.lange@kernkonzept.com Today's take aways Microkernel systems are used to build

More information

The Performance of µ-kernel-based Systems

The Performance of µ-kernel-based Systems Liedtke et al. presented by: Ryan O Connor October 7 th, 2009 Motivation By this time (1997) the OS research community had virtually abandoned research on pure µ-kernels. due primarily

More information

ARM Virtualization: Performance and Architectural Implications. Christoffer Dall, Shih-Wei Li, Jin Tack Lim, Jason Nieh, and Georgios Koloventzos

ARM Virtualization: Performance and Architectural Implications. Christoffer Dall, Shih-Wei Li, Jin Tack Lim, Jason Nieh, and Georgios Koloventzos ARM Virtualization: Performance and Architectural Implications Christoffer Dall, Shih-Wei Li, Jin Tack Lim, Jason Nieh, and Georgios Koloventzos ARM Servers ARM Network Equipment Virtualization Virtualization

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 1: Mobile Applications Development Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Evaluation Individual

More information

Realize the True Potential of Server Virtualization with Oracle VM. Rossella Bellini Principal Sales Consultant HW Business Uniti

Realize the True Potential of Server Virtualization with Oracle VM. Rossella Bellini Principal Sales Consultant HW Business Uniti Realize the True Potential of Server Virtualization with Oracle Rossella Bellini Principal Sales Consultant HW Business Uniti Virtualization Budgets Are Increasing Virtualization Is a Key Driver for Lowering

More information

OS DESIGN PATTERNS II. CS124 Operating Systems Fall , Lecture 4

OS DESIGN PATTERNS II. CS124 Operating Systems Fall , Lecture 4 OS DESIGN PATTERNS II CS124 Operating Systems Fall 2017-2018, Lecture 4 2 Last Time Began discussing general OS design patterns Simple structure (MS-DOS) Layered structure (The THE OS) Monolithic kernels

More information

Tolerating Malicious Drivers in Linux. Silas Boyd-Wickizer and Nickolai Zeldovich

Tolerating Malicious Drivers in Linux. Silas Boyd-Wickizer and Nickolai Zeldovich XXX Tolerating Malicious Drivers in Linux Silas Boyd-Wickizer and Nickolai Zeldovich How could a device driver be malicious? Today's device drivers are highly privileged Write kernel memory, allocate memory,...

More information

Alfredo Pesoli LaCon 2008

Alfredo Pesoli LaCon 2008 Alfredo Pesoli LaCon 2008 OS X Rootkits - ical Once upon a time XNU Hacking KSpace Hooking Mach vs. BSD Process Infection Thank you very Mach High-Level Hooking Bundle Injection in Cocoa Apps 2 OS X Rootkits

More information

Chapter 2: System Structures

Chapter 2: System Structures Chapter 2: Operating System Structures Operating System Services System Calls Chapter 2: System Structures System Programs Operating System Design and Implementation Operating System Structure Virtual

More information

Another difference is that the kernel includes only the suspend to memory mechanism, and not the suspend to hard disk, which is used on PCs.

Another difference is that the kernel includes only the suspend to memory mechanism, and not the suspend to hard disk, which is used on PCs. 9. Android is an open-source operating system for mobile devices. Nowadays, it has more than 1.4 billion monthly active users (statistic from September 2015) and the largest share on the mobile device

More information

Operating System Architecture. CS3026 Operating Systems Lecture 03

Operating System Architecture. CS3026 Operating Systems Lecture 03 Operating System Architecture CS3026 Operating Systems Lecture 03 The Role of an Operating System Service provider Provide a set of services to system users Resource allocator Exploit the hardware resources

More information

International Telecommunication Union. The Methodology for NGN Technical Means Testing (Q and Resolution 17 of WTDC 06)

International Telecommunication Union. The Methodology for NGN Technical Means Testing (Q and Resolution 17 of WTDC 06) International Telecommunication Union Ministry of information technologies and communications of the Russian Federation Central Research Telecommunication Institute of the Russian Federation The Methodology

More information

Lionbridge ondemand for Adobe Experience Manager

Lionbridge ondemand for Adobe Experience Manager Lionbridge ondemand for Adobe Experience Manager Version 1.1.0 Configuration Guide October 24, 2017 Copyright Copyright 2017 Lionbridge Technologies, Inc. All rights reserved. Published in the USA. March,

More information

Practical and Efficient Exploit Mitigation for Embedded Devices

Practical and Efficient Exploit Mitigation for Embedded Devices Practical and Efficient Exploit Mitigation for Embedded Devices Matthias Neugschwandtner IBM Research, Zurich Collin Mulliner Northeastern University, Boston Qualcomm Mobile Security Summit 2015 1 Embedded

More information

Cl. Cl. ..., V, V, -I..., - QJ d.

Cl. Cl. ..., V, V, -I..., - QJ d. )> Cl. Cl...., m V, V, -I..., QJ :J V, - QJ d. 0 :J Main Points Address Translation Concept - How do we convert a virtual address to a physical address? Flexible Address Translation I R. lz G.z: f1..t:?z:.mo/2_'-(

More information

Operating System Concepts Ch. 2: Operating System Structures

Operating System Concepts Ch. 2: Operating System Structures Operating System Concepts Ch. 2: Operating System Structures Silberschatz, Galvin & Gagne Content This chapter goes into more detail on the structure of Operating Systems. - Organization of the different

More information

Architectural Design

Architectural Design Architectural Design Establishing the overall structure of a software system Ian Sommerville - Software Engineering 1 Software architecture The design process for identifying the sub-systems making up

More information

Next. Welcome! This guide will get you started down the path to bulk text messaging excellence. Let s start by going over the basics of the system

Next. Welcome! This guide will get you started down the path to bulk text messaging excellence. Let s start by going over the basics of the system A-PDF Merger DEMO : Purchase from www.a-pdf.com to remove the watermark User Guide Next Welcome! This guide will get you started down the path to bulk text messaging excellence. Let s start by going over

More information

Component-based software engineering 2. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1

Component-based software engineering 2. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 Component-based software engineering 2 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 The CBSE process When reusing components, it is essential to make trade-offs between ideal

More information

Computer Science. ! Other approaches:! Special systems designed for extensibility

Computer Science. ! Other approaches:! Special systems designed for extensibility Application-Specific Service Technologies for Commodity OSes in Real-Time Environments Richard West and Gabriel Parmer Boston University Boston, MA {richwest,gabep1}@cs.bu.edu Introduction! Leverage commodity

More information

VEOS high level design. Revision 2.1 NEC

VEOS high level design. Revision 2.1 NEC high level design Revision 2.1 NEC Table of contents About this document What is Components Process management Memory management System call Signal User mode DMA and communication register Feature list

More information

Supported Devices, OS, and Browsers

Supported Devices, OS, and Browsers Kony Visualizer Supported Devices, OS, and Browsers Release V8 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and the document version stated

More information

CCS 1000 D Digital Discussion System. Release Notes

CCS 1000 D Digital Discussion System. Release Notes CCS 1000 D Digital Discussion System en Release Notes CCS 1000 D Digital Discussion System Release Notes 2 Table of Contents 1 History... 3 2 GUI languages... 3 3 Upgrade software... 3 4 Known issues...

More information

CSE 4/521 Introduction to Operating Systems

CSE 4/521 Introduction to Operating Systems CSE 4/521 Introduction to Operating Systems Lecture 3 Operating Systems Structures (Operating-System Services, User and Operating-System Interface, System Calls, Types of System Calls, System Programs,

More information

Performance Tuning Linux Applications With DTrace

Performance Tuning Linux Applications With DTrace Performance Tuning Linux Applications With DTrace Adam Leventhal Solaris Kernel Development Sun Microsystems http://blogs.sun.com/ahl Application Sprawl Applications are no longer simple entities Complex

More information

Faculty of Computer Science Institute for System Architecture, Operating Systems Group. Virtualization. Henning Schild. Dresden,

Faculty of Computer Science Institute for System Architecture, Operating Systems Group. Virtualization. Henning Schild. Dresden, Faculty of Computer Science Institute for System Architecture, Operating Systems Group Virtualization Henning Schild Dresden, 2009-12-01 So Far... Basics Introduction Threads & synchronization Memory Real-time

More information

Binary compatibility on NetBSD. Emmanuel Dreyfus, july 2014

Binary compatibility on NetBSD. Emmanuel Dreyfus, july 2014 Binary compatibility on NetBSD Emmanuel Dreyfus, july 2014 About me Emmanuel Dreyfus IT manager at ESPCI ParisTech as daylight job NetBSD contributor since 2001 Milter-greylist since

More information

Introducing LLDB for Linux on Arm and AArch64. Omair Javaid

Introducing LLDB for Linux on Arm and AArch64. Omair Javaid Introducing LLDB for Linux on Arm and AArch64 Omair Javaid Agenda ENGINEERS AND DEVICES WORKING TOGETHER Brief introduction and history behind LLDB Status of LLDB on Linux and Android Linaro s contributions

More information

How the Other Half Lives

How the Other Half Lives How the Other Half Lives Developing SDR Software for the Macintosh Platform Jeremy C. McDermond, J.D. 1 (NH6Z) 1. As of May 22, 2010 About the Author Licensed in 1986 at age 14 as KB7AKH Began to program

More information

CCS 1000 D Digital Discussion System. Release Notes

CCS 1000 D Digital Discussion System. Release Notes CCS 1000 D Digital Discussion System en Release Notes CCS 1000 D Digital Discussion System Release Notes 2 Table of Contents 1 History... 3 2 GUI languages... 3 3 Upgrade software... 3 4 Known issues...

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

OS Extensibility: SPIN and Exokernels. Robert Grimm New York University

OS Extensibility: SPIN and Exokernels. Robert Grimm New York University OS Extensibility: SPIN and Exokernels Robert Grimm New York University The Three Questions What is the problem? What is new or different? What are the contributions and limitations? OS Abstraction Barrier

More information

A Lightweight OS-Level Virtualization Architecture Based on Android Bo-wen LIU, Nai-jie GU and De-he GU

A Lightweight OS-Level Virtualization Architecture Based on Android Bo-wen LIU, Nai-jie GU and De-he GU 2017 2nd International Conference on Computer, Network Security and Communication Engineering (CNSCE 2017) ISBN: 978-1-60595-439-4 A Lightweight OS-Level Virtualization Architecture Based on Android Bo-wen

More information

Embedded HW/SW Co-Development

Embedded HW/SW Co-Development Embedded HW/SW Co-Development It May be Driven by the Hardware Stupid! Frank Schirrmeister EDPS 2013 Monterey April 18th SPMI USB 2.0 SLIMbus RFFE LPDDR 2 LPDDR 3 emmc 4.5 UFS SD 3.0 SD 4.0 UFS Bare Metal

More information

Graphene-SGX. A Practical Library OS for Unmodified Applications on SGX. Chia-Che Tsai Donald E. Porter Mona Vij

Graphene-SGX. A Practical Library OS for Unmodified Applications on SGX. Chia-Che Tsai Donald E. Porter Mona Vij Graphene-SGX A Practical Library OS for Unmodified Applications on SGX Chia-Che Tsai Donald E. Porter Mona Vij Intel SGX: Trusted Execution on Untrusted Hosts Processing Sensitive Data (Ex: Medical Records)

More information

Copyright 2017 Samsung. All Rights Reserved. O-Hoon Kwon, Ph.D. Samsung Electronics

Copyright 2017 Samsung. All Rights Reserved. O-Hoon Kwon, Ph.D. Samsung Electronics 1 Copyright 2017 Samsung. All Rights Reserved. O-Hoon Kwon, Ph.D. Samsung Electronics Intro Tizen Linux kernel based Embedded OS for wide range of devices, where Mobile, Wearable, TV are maintained as

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Linux Driver and Embedded Developer

Linux Driver and Embedded Developer Linux Driver and Embedded Developer Course Highlights The flagship training program from Veda Solutions, successfully being conducted from the past 10 years A comprehensive expert level course covering

More information

Parallel architectures are enforcing the need of managing parallel software efficiently Sw design, programming, compiling, optimizing, running

Parallel architectures are enforcing the need of managing parallel software efficiently Sw design, programming, compiling, optimizing, running S.Bartolini Department of Information Engineering University of Siena, Italy C.A. Prete Department of Information Engineering University of Pisa, Italy GREPS Workshop (PACT 07) Brasov, Romania. 16/09/2007

More information

Module 1: Virtualization. Types of Interfaces

Module 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 information

EGLSTREAMS: INTEROPERABILITY FOR CAMERA, CUDA AND OPENGL. Debalina Bhattacharjee Sharan Ashwathnarayan

EGLSTREAMS: INTEROPERABILITY FOR CAMERA, CUDA AND OPENGL. Debalina Bhattacharjee Sharan Ashwathnarayan 53023 - EGLSTREAMS: INTEROPERABILITY FOR CAMERA, CUDA AND OPENGL Debalina Bhattacharjee Sharan Ashwathnarayan Tegra SOC and typical use-cases Why Interops EGLStream and Its Key Features Agenda Examples

More information

How the Other Half Lives

How the Other Half Lives How the Other Half Lives Developing SDR Software for the Macintosh Platform Jeremy C. McDermond, J.D. (NH6Z) Cocoa Based on the NextStep tech (you can tell by the NS prefix to classes like NSView) Standard

More information

Microkernel Construction. Introduction. Michael Hohmuth. Lars Reuther. TU Dresden Operating Systems Group

Microkernel Construction. Introduction. Michael Hohmuth. Lars Reuther. TU Dresden Operating Systems Group Introduction Lecture Goals Provide deeper understanding of OS mechanisms Make all of you enthusiastic kernel hackers Illustrate alternative system design concepts Promote OS research at 2 Administration

More information

GPUfs: Integrating a file system with GPUs

GPUfs: Integrating a file system with GPUs GPUfs: Integrating a file system with GPUs Mark Silberstein (UT Austin/Technion) Bryan Ford (Yale), Idit Keidar (Technion) Emmett Witchel (UT Austin) 1 Traditional System Architecture Applications OS CPU

More information

Mac OS X 10.4 Tiger. What's New for UNIX Users?

Mac OS X 10.4 Tiger. What's New for UNIX Users? Mac OS X 10.4 Tiger What's New for UNIX Users? General Highlights Pervasive Searching Automator VoiceOver Parental Controls SyncSer vices New and Upgraded Apps Dashboard ichat AV conferencing Safari RSS

More information

Annotations: Enriching a Digital Library

Annotations: Enriching a Digital Library UNIVERSITY OF PADUA Department of Information Engineering Maristella Agosti maristella.agosti@unipd.it Nicola Ferro nicola.ferro@unipd.it Information Management Systems Research Group Contents of Presentation

More information

Introduction. COMP /S2 Week Gernot Heiser UNSW/NICTA/OKL. Distributed under Creative Commons Attribution License 1

Introduction. COMP /S2 Week Gernot Heiser UNSW/NICTA/OKL. Distributed under Creative Commons Attribution License 1 Introduction COMP9242 2008/S2 Week 1 2008 Gernot Heiser UNSW/NICTA/OKL. Distributed under Creative Commons Attribution License 1 Copyright Notice These slides are distributed under the Creative Commons

More information

ANSYS SCADE 17.0 Solutions for ARINC 661-Compliant Systems

ANSYS SCADE 17.0 Solutions for ARINC 661-Compliant Systems Technical Data Sheet ANSYS SCADE 17.0 Solutions for Design Environment for Aircraft Manufacturers, CDS and UA Suppliers ANSYS SCADE Solutions for is a tool chain that empowers users to prototype and design

More information

Linux Boot Process. Nassim Eddequiouaq LSE Summer Week 2015

Linux Boot Process. Nassim Eddequiouaq LSE Summer Week 2015 Linux Boot Process Nassim Eddequiouaq LSE Summer Week 2015 Why does boot matter? No boot No boot! OS uses evolving hardware features Faster and more secure please What does Linux need? Hardware initialization

More information

Introduction to TrustedBSD Audit + OpenBSM. Wayne Salamon Robert Watson

Introduction to TrustedBSD Audit + OpenBSM. Wayne Salamon Robert Watson Introduction to TrustedBSD Audit + OpenBSM Wayne Salamon (wsalamon@freebsd.org) Robert Watson (rwatson@freebsd.org) Introduction What is TrustedBSD? What is event auditing? CC + CAPP evaluation requirements

More information

Operating Systems. Lab. Class Week 14

Operating Systems. Lab. Class Week 14 Operating Systems Lab. Class Week 14 Project Plan 6 projects 0. Install xv6 1. System call 2. Scheduling 3. Virtual memory 1 4. Virtual memory 2 5. Concurrency 1 6. Concurrency 2 Individual projects 2016-06-01

More information

The L4 microkernel. Garland, Mehta, Roehricht, Schulze. CS-450 Section 3 Operating Systems Fall 2003 James Madison University Harrisonburg, VA

The L4 microkernel. Garland, Mehta, Roehricht, Schulze. CS-450 Section 3 Operating Systems Fall 2003 James Madison University Harrisonburg, VA Garland, Mehta, Roehricht, Schulze The L4 microkernel Harrisonburg, November 29, 2003 CS-450 Section 3 Operating Systems Fall 2003 James Madison University Harrisonburg, VA Contents 1 An Introduction to

More information

Sugar: Secure GPU Acceleration in Web Browsers

Sugar: Secure GPU Acceleration in Web Browsers Sugar: Secure GPU Acceleration in Web Browsers Zhihao Yao, Zongheng Ma, Yingtong Liu, Ardalan Amiri Sani, Aparna Chandramowlishwaran Trustworthy Systems Lab, UC Irvine 1 WebGL was released in 2011 2 Source:

More information

System requirements. Display requirements. PDF reader requirements. Fingerprint Login/Touch Authentication requirements

System requirements. Display requirements. PDF reader requirements. Fingerprint Login/Touch Authentication requirements System requirements The computer you use must meet the following minimum requirements: PC or Mac with at least a 1-GHz processor and 1 GB of RAM. Available browser updates applied for improved security

More information

Load-Sto-Meter: Generating Workloads for Persistent Memory Damini Chopra, Doug Voigt Hewlett Packard (Enterprise)

Load-Sto-Meter: Generating Workloads for Persistent Memory Damini Chopra, Doug Voigt Hewlett Packard (Enterprise) Load-Sto-Meter: Generating Workloads for Persistent Memory Damini Chopra, Doug Voigt Hewlett Packard (Enterprise) Application vs. Pure Workloads Benchmarks that reproduce application workloads Assist in

More information

Case Study Committed to Connecting the World ITU WORLD TELECOMMUNICATION DEVELOPMENT CONFERENCE 2014

Case Study Committed to Connecting the World ITU WORLD TELECOMMUNICATION DEVELOPMENT CONFERENCE 2014 Case Study Committed to Connecting the World ITU WORLD TELECOMMUNICATION DEVELOPMENT CONFERENCE 2014 DESTINATION OF CHOICE Challenge All eyes were on Dubai World Trade Centre as it hosted the sixth International

More information

Introduction. Lecture 1. Operating Systems Practical. 5 October 2016

Introduction. Lecture 1. Operating Systems Practical. 5 October 2016 Introduction Lecture 1 Operating Systems Practical 5 October 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.

More information

Simplified design flow for embedded systems

Simplified design flow for embedded systems Simplified design flow for embedded systems 2005/12/02-1- Reuse of standard software components Knowledge from previous designs to be made available in the form of intellectual property (IP, for SW & HW).

More information

Operating System Kernels

Operating System Kernels Operating System Kernels Presenter: Saikat Guha Cornell University CS 614, Fall 2005 Operating Systems Initially, the OS was a run-time library Batch ( 55 65): Resident, spooled jobs Multiprogrammed (late

More information

Flutter Kasper Lund, Google

Flutter Kasper Lund, Google Flutter Kasper Lund, Google The best way to build for mobile? We need to talk about American politics... The Founding Father Alexander Hamilton's life is now a hip-hop musical... Hamilton! So you have

More information

Cellular Platform Access

Cellular Platform Access Cellular Platform Access A Cellular Framework for OS Integration Lars Sorensen Cellular Division Systems Architect Business Opportunity Smartphones in the Mainstream The Software Problem No Free Lunch

More information

Deterministic Futexes Revisited

Deterministic Futexes Revisited A. Zuepke Deterministic Futexes Revisited Alexander Zuepke, Robert Kaiser first.last@hs-rm.de A. Zuepke Futexes Futexes: underlying mechanism for thread synchronization in Linux libc provides: Mutexes

More information

How To Manually Program A Motorola Droid Razr Maxx Hd 4.1.2

How To Manually Program A Motorola Droid Razr Maxx Hd 4.1.2 How To Manually Program A Motorola Droid Razr Maxx Hd 4.1.2 The program specifically states it will not work for Droid Razr HD. I have ver 4.1.2, 912xt, connected as media device, latest drivers from Motorola

More information

Dynamic Translator-Based Virtualization

Dynamic Translator-Based Virtualization Dynamic Translator-Based Virtualization Yuki Kinebuchi 1,HidenariKoshimae 1,ShuichiOikawa 2, and Tatsuo Nakajima 1 1 Department of Computer Science, Waseda University {yukikine, hide, tatsuo}@dcl.info.waseda.ac.jp

More information

Introduction. COMP9242 Advanced Operating Systems 2010/S2 Week 1

Introduction. COMP9242 Advanced Operating Systems 2010/S2 Week 1 Introduction COMP9242 Advanced Operating Systems 2010/S2 Week 1 2010 Gernot Heiser UNSW/NICTA/OK Labs. Distributed under Creative Commons Attribution License 1 Copyright Notice These slides are distributed

More information

Setting Up read&write for ipad

Setting Up read&write for ipad Setting Up read&write for ipad 1. Open up Settings 2. Tap on General. 3. Move down until you find the keyboard button. Tap on it. 1. 2. 3. Settings Keyboards 3. 4. 3. Tap on Keyboards. Then Add New Keyboard

More information

Unit OS2: Operating System Principles. Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze

Unit OS2: Operating System Principles. Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Unit OS2: Operating System Principles 2.5. Quiz Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Copyright Notice 2000-2005 David A. Solomon and Mark

More information

A New Method of Using Polytomous Independent Variables with Many Levels for the Binary Outcome of Big Data Analysis

A New Method of Using Polytomous Independent Variables with Many Levels for the Binary Outcome of Big Data Analysis Paper 2641-2015 A New Method of Using Polytomous Independent Variables with Many Levels for the Binary Outcome of Big Data Analysis ABSTRACT John Gao, ConstantContact; Jesse Harriott, ConstantContact;

More information

How To Update Samsung Galaxy Ace Jelly Bean 4.2.2

How To Update Samsung Galaxy Ace Jelly Bean 4.2.2 How To Update Samsung Galaxy Ace 4.0 4.1 1 Jelly Bean 4.2.2 Android has launched its newer version. Learn how to install Android 4.2.2 jelly bean on Samsung Galaxy Ace plus s7500. How To UPDATE / Samsung

More information

GPUfs: Integrating a file system with GPUs

GPUfs: Integrating a file system with GPUs GPUfs: Integrating a file system with GPUs Mark Silberstein (UT Austin/Technion) Bryan Ford (Yale), Idit Keidar (Technion) Emmett Witchel (UT Austin) 1 Building systems with GPUs is hard. Why? 2 Goal of

More information

Online and Mobile Banking Requirements Guide

Online and Mobile Banking Requirements Guide Online and Mobile Banking Requirements Guide Introduction This document explains the hardware and software requirements for Valley First Credit Union s Online and Mobile Banking Experience. Members are

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Programming with QtSpim: A User s Manual

Programming with QtSpim: A User s Manual Programming with QtSpim: A User s Manual John McCranie November 15, 2013 1 1 Introduction to SPIM Spim is a self-contained simulator that runs MIPS32 programs. It utilizes the instruction set originally

More information

Mobile Print Guide for Brother iprint&label (Apple Devices)

Mobile Print Guide for Brother iprint&label (Apple Devices) Mobile Print Guide for Brother iprint&label (Apple Devices) Before You Use Your Brother Label Printer Definitions of Notes We use the following symbol and convention throughout this User's Guide: Tips

More information

April 4-7, 2016 Silicon Valley

April 4-7, 2016 Silicon Valley April 4-7, 2016 Silicon Valley TEGRA PLATFORMS GAMING DRONES ROBOTICS IVA AUTOMOTIVE 2 Compile Debug Profile Trace C/C++ NVTX NVIDIA Tools extension Getting Started CodeWorks JetPack Installers IDE Integration

More information

Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering)

Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering) A. Multiple Choice Questions (60 questions) Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering) Unit-I 1. What is operating system? a) collection of programs that manages hardware

More information

Ipod Touch 4 Manual Firmware Custom >>>CLICK HERE<<<

Ipod Touch 4 Manual Firmware Custom >>>CLICK HERE<<< Ipod Touch 4 Manual Firmware 4.2 1 Custom i recently bought an ipod touch 4g for my wife but it was locked! so i tried old revisions 4.2.1 / 4.3.3 / 5.1.1 (and of course 6.1.6) without succes If the ipod

More information

An overview of mobile and embedded platforms

An overview of mobile and embedded platforms ES3 Lecture 2 An overview of mobile and embedded platforms Basic Classes Embedded devices: These are in toasters, cars, mice, etc. Usually very real-time focused (us accuracy) Very small memory, not usually

More information