Android Virtualization from Sierraware. Simply Secure



Similar documents
Sierraware Overview. Simply Secure

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Virtualization: Hypervisors for Embedded and Safe Systems. Hanspeter Vogel Triadem Solutions AG

Android on i.mx Applications Processors

Full and Para Virtualization

ARM TrustZone and KVM Coexistence with RTOS For Automotive

Virtualization for Cloud Computing

7 Things You Need to Know about Virtual Mobile Infrastructure

The MeeGo Multimedia Stack. Dr. Stefan Kost Nokia - The MeeGo Multimedia Stack - CELF Embedded Linux Conference Europe

Using Mobile Processors for Cost Effective Live Video Streaming to the Internet

The QEMU/KVM Hypervisor

COS 318: Operating Systems. Virtual Machine Monitors

Performance tuning Xen

Hardware accelerated Virtualization in the ARM Cortex Processors

BHyVe. BSD Hypervisor. Neel Natu Peter Grehan

VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D

Running Windows 8 on top of Android with KVM. 21 October Zhi Wang, Jun Nakajima, Jack Ren

Hardware Based Virtualization Technologies. Elsie Wahlig Platform Software Architect

KVM Architecture Overview

Inside Android's UI Embedded Linux Conference Europe 2012 Karim

Red Hat VDI. David Simmons

Next Generation Operating Systems

Virtualization in the ARMv7 Architecture Lecture for the Embedded Systems Course CSD, University of Crete (May 20, 2014)

Chapter 11 I/O Management and Disk Scheduling

CLOUD GAMING WITH NVIDIA GRID TECHNOLOGIES Franck DIARD, Ph.D., SW Chief Software Architect GDC 2014

Rackspace Cloud Databases and Container-based Virtualization

Example of Standard API

Berlin Institute of Technology FG Security in Telecommunications

CSE597a - Cell Phone OS Security. Cellphone Hardware. William Enck Prof. Patrick McDaniel

SECURE IMPLEMENTATIONS OF CONTENT PROTECTION (DRM) SCHEMES ON CONSUMER ELECTRONIC DEVICES

Android Architecture. Alexandra Harrison & Jake Saxton

Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:

evm Virtualization Platform for Windows

Virtual Machines. COMP 3361: Operating Systems I Winter

Virtualization and Performance NSRC

Virtualization: Know your options on Ubuntu. Nick Barcet. Ubuntu Server Product Manager

Enterprise-Class Virtualization with Open Source Technologies

Leveraging Thin Hypervisors for Security on Embedded Systems

Virtualization is set to become a key requirement

Virtualizing a Virtual Machine

The Xen of Virtualization

Knut Omang Ifi/Oracle 19 Oct, 2015

PROCESSOR VIRTUALIZATION ON EMBEDDED LINUX SYSTEMS

High Performance or Cycle Accuracy?

OS Concepts and structure

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

ANDROID OPERATING SYSTEM

Architecture (SOSP 2011) 11/11/2011 Minsung Jang

Xen and the Art of. Virtualization. Ian Pratt

Cloud^H^H^H^H^H Virtualization Technology. Andrew Jones May 2011

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

Hybrid Platform Application in Software Debug

Performance Optimization and Debug Tools for mobile games with PlayCanvas

Application of Android OS as Real-time Control Platform**

MODULE 3 VIRTUALIZED DATA CENTER COMPUTE

Models For Modeling and Measuring the Performance of a Xen Virtual Server

How To Write A Windows Operating System (Windows) (For Linux) (Windows 2) (Programming) (Operating System) (Permanent) (Powerbook) (Unix) (Amd64) (Win2) (X

Virtual Machine Security

H MICRO CASE STUDY. Device API + IPC mechanism. Electrical and Functional characterization of HMicro s ECG patch

A hypervisor approach with real-time support to the MIPS M5150 processor

Red Hat Linux Internals

Chapter 5 Cloud Resource Virtualization

Prototype of Light-weight Hypervisor for ARM Server Virtualization

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

Virtualization. Dr. Yingwu Zhu

Developing a dynamic, real-time IT infrastructure with Red Hat integrated virtualization

IBM Software Group. Lotus Domino 6.5 Server Enablement

Harmonizing policy management with Murphy in GENIVI, AGL and TIZEN IVI

Virtualization. Jia Rao Assistant Professor in CS

Embedded Virtualization & Cyber Security for Industrial Automation HyperSecured PC-based Control and Operation

Mobile Devices and Systems Lesson 02 Handheld Pocket Computers and Mobile System Operating Systems

Virtualization. Michael Tsai 2015/06/08

Module I-7410 Advanced Linux FS-11 Part1: Virtualization with KVM

Overview of CS 282 & Android

The Microsoft Windows Hypervisor High Level Architecture

Virtualization Technology. Zhiming Shen

ivms-4500(android) Mobile Client Software User Manual (V1.0)

CS5460: Operating Systems. Lecture: Virtualization 2. Anton Burtsev March, 2013

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?

Chapter 14 Virtual Machines

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems

Hypervisors. Introduction. Introduction. Introduction. Introduction. Introduction. Credits:

ANDROID DEVELOPER TOOLS TRAINING GTC Sébastien Dominé, NVIDIA

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development

Here is a demonstration of the Aqua Accelerated Protocol (AAP) software see the Aqua Connect YouTube Channel

CELLS A Virtual Mobile Smartphone Architecture

Embedded Development Tools

Virtualization. Explain how today s virtualization movement is actually a reinvention

GPU File System Encryption Kartik Kulkarni and Eugene Linkov

Chapter 16: Virtual Machines. Operating System Concepts 9 th Edition

Virtualization and the U2 Databases

Enhancing Hypervisor and Cloud Solutions Using Embedded Linux Iisko Lappalainen MontaVista

Get the Best out of NVIDIA GPUs for 3D Design and Engineering in the Cloud

Lecture 1 Introduction to Android

Datacenter Operating Systems

big.little Technology Moves Towards Fully Heterogeneous Global Task Scheduling Improving Energy Efficiency and Performance in Mobile Devices

Date: December 2009 Version: 1.0. How Does Xen Work?

Virtualization and Other Tricks.

Transcription:

Android Virtualization from Sierraware Simply Secure

Integration Challenges DRM Mandates TrustZone TEE Hypervisor provides the flexibility and security needed for BYOD Power management, responsibility spread across Multiple entities. TrustZone Monitor and Android Guests need co-operate. Efficient integration between TEE and Hypervisor is must to ensure seamless 1080p@60 video performance High performance GPU stack allowing for the ability to run un-modified apps on games.

Dual Android SierraTEE Secure OS Malware Protection DRM & Crypto Secure Boot Android - Primary User Applications GLES/EGL Proxy Pulseaudio Proxy OMX Proxy VFB Driver Kernel IPC Driver Extractor Media Extractor Containers Codec Media Player Audio Track Video Track Virtual Network OMX Android Secondary (Guest1) Para virtualized IL OMX Codec IL Proxy Context Manager Audio Source Video Source Color Renderer Virtual Storage Media Player Kernel Media Recorder Audio Flinger Audio Flinger HW Interface Audio Proxy Driver Android Java Applications JNI Interface EGL/GLES 2.0 Library EGL/GLES Encoder Gralloc Lib Virtual Frame Buffer SierraVisor ARM Hypervisor Android Work and Play. Bring Your Own Device to work

Dual Persona Android Primary Android Full access to all the devices like Camera, LTE, SD Card Hypervisor overhead is below 0.5% Near native performance on GPU benchmarks and CPU benchmarks like Lmbench Secondary Android Virtual Network, Virtual Block Minimal changes to native Android stack Full GPU access; all games and apps can use GPU Gfxbenchmark with low overhead. Triangle, fill rate are near native performance.

Difficulties of Integrating TEE and Hypervisor TEE needs to be aware of 2 level memory translation Virtual Interrupts and VGIC are not directly visible for TEE Asynchronous task scheduling. Hypervisor scheduler needs to work with TEE scheduler to ensure one guest doesn t starve the other guest by residing in secure world for too long Global Platform APIs and SMC calling conventions were not designed with multiple guests and TEE domains

How to secure the devices from Malware? TrustZone Malware Protection File System Scanner Insecure Android Filesystem, VFS Live Process Scanner Page Table, TLB Interrupt Table Scanner Kernel Scanner KernelSystemCall, KernelSyscallTable, KernelProcRoot, KernelProcRootIops, KernelProcRootLookup Offline FS Integrity TrustZone TEE Scan Success Interrupt Table Kernel Memory map Hypervisor Translated Memory Normal World

Difficulties of Integrating Android on a Hypervisor Linux Kernel is very conducive and been the most used guest operating system Android on the other hand is heavily tied to the hardware Media Player DRM Power Management Disk and I/O and so many other things. Paravirtualizing all them and making sure they play well with TEE requires good pre-plan and well thought out design.

Integrating Remote GPU Rendering and Android Android is tightly integrated with OpenGLES & egl. Even simple things like cursor movement rely on Android GPU A 1080p frame is 7+MB of data. So moving 60 frames per second via paravirtualized drivers incurs huge cost penalty.

GPU Rendering App 1 OpenGL EGL AGL HGL Surface App 2 OpenGL EGL AGL HGL Surface SGL - Images Surface Gralloc Surface SurfaceFlinger Render Loop Layer Stack Layer Stack Rendering Stack Color Buffer Manager OpenGL/EGL Remote Remote Rendering Thread

Paravirtualizing Android Audio Media Player Android Guest (Slave) Recorder Master Guest0 Audio Flinger Audio Flinger HW Interface Para virtualized /dev/eac Proxy driver Shared Memory & IPC Audio Proxy Pulse Audio ALSA Driver IPC Driver Kernel

DRM Secure Video Data path DRM Mandates that both compressed and unencrypted content must be kept out of guest memory space A Single Video Rendering path executed on TEE must serve multiple Guest OSes Physical memory translation between guest and TEE has to handled by a Integrated Solution Arbitration of resources is also important Ability to share hardware codecs and devices like speakers between multiple guests in a secure way is critical

DRM: TEE and Hypervisor Android Android SierraTEE Media Player Media Player Extractor Audio Track Video Track Audio Source Video Source Extractor Audio Track Video Track Audio Source Video Source HDCP, DRM Stub Agents Media Extractor Para virtualized IL Media Extractor Para virtualized IL Video, Audio Data Sync Containers Codec OMX Codec IL Proxy Context Manager Color Rend erer Containers Codec OMX Codec IL Proxy Context Manager Color Rend erer Translated Memory VFP Kernel Shared Memory VFP Kernel Shared Memory Secure Video Buffer SierraVisor ARM Hypervisor

Wireless Video/Miracast HDCP Android libstagefright WIFI Display HDCP API Libstagefright_hdcp.so Controller & Session SierraTEE (Secure OS) HDCP 2.0 SKE/AKE Key Management Time and Locality Check Cipher Session Crypto RNG, RSA, AES, SHA256 TEE Shared Queue TEE Shared Queue SierraVisor ARM Hypervisor

Other I/O Devices that needs to be para-virtualized Mouse/Keyboard/Touch screen USB, SDIO. External Storage Android Debugging and Shell Power Management like idle screen time out LTE, Telephony stack

Virtio Storage, Network, IPC Para virtualized I/O: virtio provides an efficient abstraction for hypervisors and a common set of I/O APIs Components of Virt I/O: - Full support for SDIO, NAND, USB based storage devices - RPMSG for IPC between guests. Provide high multi-gigabit performance. - Virtual Network with Jumbo frame support. Ability to bridge Ethernet, WIFI, LTE and other network interfaces

Support and Services Simply Secure

Software Suite SierraVisor: Hypervisor for ARM Para-Virtualizaiton, TrustZone Virtualization, HW Virtualization 64 bit Support for Cortex A5x cores Linux, ucos and various RTOS SierraTEE/Micro Kernel TrustZone/GlobalPlatform TEE Android, ucos and various other Oses Runs on various CPUs from ARM11, Cortex A9, A15 and Cortex A53/57 SierraSHIELD: Integrity Management Linux Kernel Integrity Management Application Rootkit Scanner Incremental Log Scanner DRM and Content Protection : Hardware accelerated media streaming and DTCP toolkit Integration with Microsoft Playready

Professional Services Custom Services ARM Design Expertise Project Management Porting software to processors Integrating TEE and SierraVisor with applications Developing drivers, encoders or apps Extensive experience with ARM processors and kernel code Android, Linux, BSD, and VxWorks development Hardware & FPGA Phased approach from planning and development to testing & certification Carefully defined schedules and communication with customers to avoid surprises & delays

Technical Support Telephone and Email Support Online technical documentation Software updates for commercial products Previews of upcoming releases Ability to influence feature enhancements Commitment to Quality Service Level Agreement (SLA) details support response times and escalation levels

Thank You! sales@sierraware.com, +1 408 337 6400