Wind River. All Rights Reserved.

Size: px
Start display at page:

Download "Wind River. All Rights Reserved."

Transcription

1 1

2 Using Simulation to Develop and Maintain a System of Connected Devices Didier Poirot Simics Technical Account Manager

3 THE CHALLENGES OF DEVELOPING CONNECTED ELECTRONIC SYSTEMS 3

4 Mobile Networks Update - Lessons Learned Mobile Networks can be extremely complex: Huge number of deployed devices: > Device and Infrastructure are heterogeneous Vendor Customization Complexity must be managed to be successful Roles and responsibilities have to be defined Role activities have to be decoupled Development cycles are shorter and shorter Cost of change must be low Introducing a change should have a low impact, No disruption of Service Must be scalable How can I manage change, test, validation, What if? Wind River. All Rights Reserved.

5 What Is Wind River Simics? Wind River Simics is a full system simulator used by software developers to simulate the hardware of large and complex electronic systems. Any Target System Wind River Simics Simulate any size of target system. Run unmodified target binaries. Simics allows you to break the rules of embedded product development. 6

6 Complete Virtualization User program All software: arbitrary & unmodified. Same as on a real system. Target operating system & Middleware Simulated target hardware Arbitrary; ARM, x86, x86-64, SparcV8, SparcV9, MIPS32, MIPS64, PPC32, PPC64, H8, SH, C64, Simics Host operating system Linux, Windows Host hardware 32-bit and 64-bit PCs 7

7 Simulating the Electronic System Run your system software on your desktop The software can t tell the difference Java VM DB User program Runs binaries from real target Android HW/SW interface Complete production software Operating system Drivers Hardware abstraction layer Boot firmware Identical build tools chain Simulated (virtual) hardware CPU CPU RAM ROM Bus Disk PCI Disk Ctrl I 2 C Flash Simics Network User Intf device A/D 8

8 Simics Can Model Any System or Networked Systems Ethernet, wifi, serial, etc Simics Virtual Platform Simulate multiple networked devices Mixed architectures, mixed software Multi-core, multiprocessor, multi-board Control all boards as a single entity Breakpoint stops all Save and restore system state of all boards 9

9 COOL SIMICS FEATURES 10

10 System-Level Features Checkpoint and restore Multicore, Processor, Board Real-World Connections Repeatable fault injection on any system component Scripting con0.wait-for-string "$ con0.record-start con0.input "./ptest.elf 5\n" con0.wait-for-string "." $r = con0.record-stop if ($r == "fail. ) { echo test failed } Mixed endianness, word sizes, heterogeneity 11

11 Simulation provides cool debugging features Synchronous stop for entire system Determinism and repeatability Reverse execution Unlimited and powerful breakpoints Trace anything Insight into all devices break x 0x0000->0x1F00 break-io uart0 break-exception int13 12

12 Repeatability and Reverse Debugging Repeat any run trivially No need to rerun and hope for bug to reoccur Stop and go back in time No rerunning program from start Breakpoints and watchpoints backward in time Investigate exactly what happened this time This control and reliable repeatability is very powerful for parallel code. Discover Bug Rerun, bug doesn t show up Rerun, bug doesn t show up Rerun, different bug Discover Bug Reverse execute and find source of bug Rerun, initial bug occurs On hardware, only some runs reproduce an error. On virtual hardware, debugging is much easier. 13

13 EXAMPLE 14

14 A Simulated Networked Target System Three target machines running any Android stack, A management machine to push updates, All interconnected in a single network, with external world connectivity, All contained inside a single simulation session IP Android App. IP Android Server Software Manager Server OS PC Server IP IP My Android App. Android ARM926 Android App. Android ARM Cortex WindRiver PFA ARM1176 Ethernet Simics IP Service node Host OS Host PC 15

15 Run the Simulation Run the simulation again Watch serial/graphic consoles as the machines start to boot On a multicore host, Simics will use multiple processor cores to run the simulation in parallel Note: The speed of this simulation is directly impacted by the horsepower of your laptop 16

16 Network Fault Injection Causing faults at the machine s network interface Simics Ethernet probe attached to the network interface Fault injection module randomly dropping 20% of packets or corrupt packets randomly See how Software react IP Android App. IP Android Server Software Manager Server OS PC Server IP My Android App. Android ARM926 Fault injection module Probe IP Android App. Android ARM Cortex WindRiver PFA ARM1176 Ethernet Simics IP Service node Host OS Host PC 17

17 Simics Fault Injection Simics target control Access any part of target Change any part of target state or configuration Scripting for precise targeting and replay of faults No permanent damage to target Purpose Test system-level fault handling Test fault low-level fault detection Model failing hardware Example fault actions: Dropping packets on networks Injecting bad checksums Network partitioning Delaying hardware replies Transient memory corruption Permanent memory corruption Transient register corruption Permanent register corruption Data bus transmission errors Address bus transmission errors Triggering spurious interrupts Permanent subsystem failures (disconnecting from system) Processor crash Temperature sensor reporting overheating Error reporting registers flagged 18

18 19

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors Patrick Keliher, Simics Field Application Engineer Software Development Using Full System Simulation with Freescale QorIQ Communications Processors 1 2013 Wind River. All Rights Reserved. Agenda Introduction

More information

Software Quality is Directly Proportional to Simulation Speed

Software Quality is Directly Proportional to Simulation Speed Software Quality is Directly Proportional to Simulation Speed CDNLive! 11 March 2014 Larry Lapides Page 1 Software Quality is Directly Proportional to Test Speed Intuitively obvious (so my presentation

More information

Workshops Hands-on With Virtutech Simics Jakob Engblom

Workshops Hands-on With Virtutech Simics Jakob Engblom Workshops Hands-on With Virtutech Simics Jakob Engblom Welcome What will we do today? A hands-on look at Virtutech Simics Compile, download, and execute programs For cross-targets running (embedded) Linux

More information

Using a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager

Using a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager Using a Hypervisor to Manage Multi-OS Systems Cory Bialowas, Product Manager cory.bialowas@windriver.com Trends, Disruptions and Opportunity Wasn t life simple? Single-OS: SMP OS OS CPU Single Core Virtualization

More information

10 Steps to Virtualization

10 Steps to Virtualization AN INTEL COMPANY 10 Steps to Virtualization WHEN IT MATTERS, IT RUNS ON WIND RIVER EXECUTIVE SUMMARY Virtualization the creation of multiple virtual machines (VMs) on a single piece of hardware, where

More information

Why Use Simulation? Simics & dark2 Assignment 1. What is a Simulator? Full-System Simulation

Why Use Simulation? Simics & dark2 Assignment 1. What is a Simulator? Full-System Simulation Simics & dark2 Assignment 1 Håkan Zeffer Uppsala University, Sweden zeffer@it.uu.se Why Use Simulation? Understanding real systems More inspectable Less dangerous Fault injection Debugging Prototype HW

More information

Wind River Simics for Software Development

Wind River Simics for Software Development Wind River Simics for Software Development Jakob Engblom, Technical Marketing Manager, Wind River Simics Table of Contents Executive Summary...1 The Power of a Virtual Platform...1 Simics Features for

More information

Simplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools

Simplifying the Development and Debug of 8572-Based SMP Embedded Systems. Wind River Workbench Development Tools Simplifying the Development and Debug of 8572-Based SMP Embedded Systems Wind River Workbench Development Tools Agenda Introducing multicore systems Debugging challenges of multicore systems Development

More information

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC

Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Joseph Yiu, ARM Ian Johnson, ARM January 2013 Abstract: While the majority of Cortex -M processor-based microcontrollers are

More information

Embedded Linux Architecture

Embedded Linux Architecture Embedded Linux Architecture Types of Operating Systems Real-Time Executive Monolithic Kernel Microkernel Real-Time Executive For MMU-less processors The entire address space is flat or linear with no memory

More information

Using Virtual Platforms To Improve Software Verification and Validation Efficiency

Using Virtual Platforms To Improve Software Verification and Validation Efficiency Using Virtual Platforms To Improve Software Verification and Validation Efficiency Odin Shen Staff FAE Arm Arm Tech Symposia Taiwan 2017 Software complexity and best practices Software Costs Increasing

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

Welcome to the Software Overview section of the MIPS Software Training course. In this section I will discuss software and software tools you can use

Welcome to the Software Overview section of the MIPS Software Training course. In this section I will discuss software and software tools you can use Welcome to the Software Overview section of the MIPS Software Training course. In this section I will discuss software and software tools you can use in developing software for MIPS Cores 1 I want to make

More information

Simulation Based Analysis and Debug of Heterogeneous Platforms

Simulation Based Analysis and Debug of Heterogeneous Platforms Simulation Based Analysis and Debug of Heterogeneous Platforms Design Automation Conference, Session 60 4 June 2014 Simon Davidmann, Imperas Page 1 Agenda Programming on heterogeneous platforms Hardware-based

More information

ML410 VxWorks Workbench BSP and System Image Creation for the BSB Design Using EDK 8.2i SP2. April

ML410 VxWorks Workbench BSP and System Image Creation for the BSB Design Using EDK 8.2i SP2. April ML410 VxWorks Workbench BSP and System Image Creation for the BSB Design Using EDK 8.2i SP2 April 2007 Overview Hardware Setup Software Setup & Requirements Generate VxWorks BSP Create VxWorks Project

More information

WIND RIVER SIMICS TABLE OF CONTENTS WHEN IT MATTERS, IT RUNS ON WIND RIVER FULL SYSTEM SIMULATION

WIND RIVER SIMICS TABLE OF CONTENTS WHEN IT MATTERS, IT RUNS ON WIND RIVER FULL SYSTEM SIMULATION AN INTEL COMPANY WIND RIVER SIMICS Wind River Simics creates a shared platform for software development by simulating your full target system. A Simics simulation of a target system can run unmodified

More information

Systems Programming and Computer Architecture ( ) Timothy Roscoe

Systems Programming and Computer Architecture ( ) Timothy Roscoe Systems Group Department of Computer Science ETH Zürich Systems Programming and Computer Architecture (252-0061-00) Timothy Roscoe Herbstsemester 2016 AS 2016 Exceptions 1 17: Exceptions Computer Architecture

More information

Debugging uclinux on Coldfire

Debugging uclinux on Coldfire Debugging uclinux on Coldfire By David Braendler davidb@emsea-systems.com What is uclinux? uclinux is a version of Linux for CPUs without virtual memory or an MMU (Memory Management Unit) and is typically

More information

Using kgdb and the kgdb Internals

Using kgdb and the kgdb Internals Using kgdb and the kgdb Internals Jason Wessel jason.wessel@windriver.com Tom Rini trini@kernel.crashing.org Amit S. Kale amitkale@linsyssoft.com Using kgdb and the kgdb Internals by Jason Wessel by Tom

More information

Designing with ALTERA SoC Hardware

Designing with ALTERA SoC Hardware Designing with ALTERA SoC Hardware Course Description This course provides all theoretical and practical know-how to design ALTERA SoC devices under Quartus II software. The course combines 60% theory

More information

Simics Feature List. Simics Version 4.2. Revision 3030 Date

Simics Feature List. Simics Version 4.2. Revision 3030 Date Simics Feature List Simics Version 4.2 Revision 3030 Date 2009-10-16 1998 2009 Virtutech AB Drottningholmsvägen 22, SE-112 42 Stockholm, Sweden Trademarks Virtutech, the Virtutech logo, Simics, Hindsight,

More information

2011 IBM Research Strategic Initiative: Workload Optimized Systems

2011 IBM Research Strategic Initiative: Workload Optimized Systems PIs: Michael Hind, Yuqing Gao Execs: Brent Hailpern, Toshio Nakatani, Kevin Nowka 2011 IBM Research Strategic Initiative: Workload Optimized Systems Yuqing Gao IBM Research 2011 IBM Corporation Motivation

More information

Samuel T. King, George W. Dunlap, and Peter M. Chen University of Michigan. Presented by: Zhiyong (Ricky) Cheng

Samuel T. King, George W. Dunlap, and Peter M. Chen University of Michigan. Presented by: Zhiyong (Ricky) Cheng Samuel T. King, George W. Dunlap, and Peter M. Chen University of Michigan Presented by: Zhiyong (Ricky) Cheng Outline Background Introduction Virtual Machine Model Time traveling Virtual Machine TTVM

More information

Chap.6 Limited Direct Execution. Dongkun Shin, SKKU

Chap.6 Limited Direct Execution. Dongkun Shin, SKKU Chap.6 Limited Direct Execution 1 Problems of Direct Execution The OS must virtualize the CPU in an efficient manner while retaining control over the system. Problems how can the OS make sure the program

More information

Introduction to gem5. Nizamudheen Ahmed Texas Instruments

Introduction to gem5. Nizamudheen Ahmed Texas Instruments Introduction to gem5 Nizamudheen Ahmed Texas Instruments 1 Introduction A full-system computer architecture simulator Open source tool focused on architectural modeling BSD license Encompasses system-level

More information

Checking out" the hypervisor

Checking out the hypervisor Debugging in virtual worlds: Checking out" the hypervisor In order to save money, the functions from several electronic devices are consolidated on a common hardware unit. A hypervisor separates the functions

More information

HITB Amsterdam

HITB Amsterdam Closer to metal: Reverse engineering the Broadcom NetExtreme s firmware Guillaume Delugré Sogeti / ESEC R&D guillaume(at)security-labs.org HITB 2011 - Amsterdam Purpose of this presentation G. Delugré

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

Echo Digital Audio Corporation AudioFire 2 AudioFire 4 AudioFire 8 AudioFire 12 Release for Mac OS X

Echo Digital Audio Corporation AudioFire 2 AudioFire 4 AudioFire 8 AudioFire 12 Release for Mac OS X Echo Digital Audio Corporation AudioFire 2 AudioFire 4 AudioFire 8 AudioFire 12 Release 3.1.1 for Mac OS X DISCLAIMER... 2 RELEASE INFORMATION... 2 SUPPORTED OPERATING SYSTEMS... 2 CHANGES... 3 KNOWN ISSUES...

More information

High Performance Microprocessor Emulation for Software Validation Facilities and Operational Simulators. Dr. Mattias Holm

High Performance Microprocessor Emulation for Software Validation Facilities and Operational Simulators. Dr. Mattias Holm High Performance Microprocessor Emulation for Software Validation Facilities and Operational Simulators Dr. Mattias Holm Boot Firmware Computer Architecture Compiler Technology Interpreters

More information

Lecture 7: February 10

Lecture 7: February 10 CMPSCI 677 Operating Systems Spring 2016 Lecture 7: February 10 Lecturer: Prashant Shenoy Scribe: Tao Sun 7.1 Server Design Issues 7.1.1 Server Design There are two types of server design choices: Iterative

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

Deterministic Replay and Reverse Debugging for QEMU

Deterministic Replay and Reverse Debugging for QEMU Deterministic Replay and Reverse Debugging for QEMU P. Dovgalyuk Novgorod State University Institute for System Programming of the Russian Academy of Sciences Our projects Working on QEMU projects since

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

Software Driven Verification at SoC Level. Perspec System Verifier Overview

Software Driven Verification at SoC Level. Perspec System Verifier Overview Software Driven Verification at SoC Level Perspec System Verifier Overview June 2015 IP to SoC hardware/software integration and verification flows Cadence methodology and focus Applications (Basic to

More information

Charm: Facilitating Dynamic Analysis of Device Drivers of Mobile Systems

Charm: Facilitating Dynamic Analysis of Device Drivers of Mobile Systems Charm: Facilitating Dynamic Analysis of Device Drivers of Mobile Systems Seyed Mohammadjavad Seyed Talebi, Hamid Tavakoli, Hang Zhang, Zheng Zhang, Ardalan Amiri Sani, Zhiyun Qian UC Irvine UC Riverside

More information

Scalable embedded Realtime

Scalable embedded Realtime Scalable embedded Realtime with OpenComRTOS Bernhard H.C. Sputh bernhard.sputh@altreonic.com, http://www.altreonic.com From Deep Space to Deep Sea Push Button High Reliability Outline History of Altreonic

More information

RTOS, Linux & Virtualization Wind River Systems, Inc.

RTOS, Linux & Virtualization Wind River Systems, Inc. taeyong.kim@windriver.com RTOS, Linux & Virtualization 2008 Wind River Systems, Inc. Simple Board Simple Code 2 2008 Wind River Systems, Inc. start: /* disable interrupts in CPU and switch to SVC32 mode

More information

ARM TrustZone for ARMv8-M for software engineers

ARM TrustZone for ARMv8-M for software engineers ARM TrustZone for ARMv8-M for software engineers Ashok Bhat Product Manager, HPC and Server tools ARM Tech Symposia India December 7th 2016 The need for security Communication protection Cryptography,

More information

Quobyte The Data Center File System QUOBYTE INC.

Quobyte The Data Center File System QUOBYTE INC. Quobyte The Data Center File System QUOBYTE INC. The Quobyte Data Center File System All Workloads Consolidate all application silos into a unified highperformance file, block, and object storage (POSIX

More information

Parallel Simulation Accelerates Embedded Software Development, Debug and Test

Parallel Simulation Accelerates Embedded Software Development, Debug and Test Parallel Simulation Accelerates Embedded Software Development, Debug and Test Larry Lapides Imperas Software Ltd. larryl@imperas.com Page 1 Modern SoCs Have Many Concurrent Processing Elements SMP cores

More information

Streaming mode snapshot mode Faster Troubleshooting Higher Quality Better Performance Control System Tuning Other Benefits

Streaming mode snapshot mode Faster Troubleshooting Higher Quality Better Performance Control System Tuning Other Benefits Tracealyzer provides an unprecedented level of insight into the runtime world of your embedded software system. Tracealyzer allows you to solve complex software problems in a fraction of the time otherwise

More information

Developing on DragonBoard

Developing on DragonBoard Developing on DragonBoard Getting Started with APQ8060 and Pragmatux+Android Bill Gatliff bgat@billgatliff.com Ryan Kuester rkuester@insymbols.com 1 2 CPU Daughterboard APQ8060 ARMv7 Dual core 1.5 GHz

More information

Software Based Fault Injection Framework For Storage Systems Vinod Eswaraprasad Smitha Jayaram Wipro Technologies

Software Based Fault Injection Framework For Storage Systems Vinod Eswaraprasad Smitha Jayaram Wipro Technologies Software Based Fault Injection Framework For Storage Systems Vinod Eswaraprasad Smitha Jayaram Wipro Technologies The agenda Reliability in Storage systems Types of errors/faults in distributed storage

More information

To observe relevant aspects of reality Fewer assumptions High computational workload

To observe relevant aspects of reality Fewer assumptions High computational workload On Simulation Jakob Engblom, PhD Virtutech & Uppsala University jakob@virtutech.com Simulation: Modeling + Execution Build a model of the system Try various scenarios on this model Experimental, not analytical

More information

Virtual Platform Software Simulation for Enhanced Multi-core Software Verification

Virtual Platform Software Simulation for Enhanced Multi-core Software Verification Virtual Platform Software Simulation for Enhanced Multi-core Software Verification Simon Davidmann Company: Imperas Software Ltd, 17 March 2014 Event: TVS Software Testing Location: UWE Conference Centre,

More information

TRACE32 as GDB Back-End

TRACE32 as GDB Back-End TRACE32 as GDB Back-End TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... GDB Support... TRACE32 as GDB Back-End... 1 Basic Concepts... 2 Introduction 2 Operating of the API Requests

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

EDGE COMPUTING & IOT MAKING IT SECURE AND MANAGEABLE FRANCK ROUX MARKETING MANAGER, NXP JUNE PUBLIC

EDGE COMPUTING & IOT MAKING IT SECURE AND MANAGEABLE FRANCK ROUX MARKETING MANAGER, NXP JUNE PUBLIC EDGE COMPUTING & IOT MAKING IT SECURE AND MANAGEABLE FRANCK ROUX MARKETING MANAGER, NXP JUNE 6 2018 PUBLIC PUBLIC 2 Key concerns with IoT.. PUBLIC 3 Why Edge Computing? CLOUD Too far away Expensive connectivity

More information

WHY APPLICATIONS ARE STILL DRAINING OUR BATTERIES and how we can help. Aaron Schulman & Sachin Katti

WHY APPLICATIONS ARE STILL DRAINING OUR BATTERIES and how we can help. Aaron Schulman & Sachin Katti WHY APPLICATIONS ARE STILL DRAINING OUR BATTERIES and how we can help. Aaron Schulman & Sachin Katti We cannot rely on improvements in battery technology In past 30 years: only 4x improvement in energy

More information

ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay

ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay Or We Can Remember It for You Wholesale (with apologies to Philip K. Dick) George Dunlap, Sam King, SukruCinar, MurtazaBasraiand

More information

24-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: 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 information

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics INTRODUCTION Emulators, like Mentor Graphics Veloce, are able to run designs in RTL orders of magnitude faster than logic

More information

Software Development. Integrated Software Environment

Software Development. Integrated Software Environment Software Development Integrated Software Environment Source Code vs. Machine Code What is source code? Source code and object code refer to the "before" and "after" versions of a computer program that

More information

CROSSWARE 7 V8051NT Virtual Workshop for Windows. q Significantly reduces software development timescales

CROSSWARE 7 V8051NT Virtual Workshop for Windows. q Significantly reduces software development timescales CROSSWARE 7 V8051NT HIGHLIGHTS q Significantly reduces software development timescales q Enables debug and verification without hardware q Allows programmers to simulate complete target system 8051 Virtual

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

Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models. Jason Andrews

Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models. Jason Andrews Performance Optimization for an ARM Cortex-A53 System Using Software Workloads and Cycle Accurate Models Jason Andrews Agenda System Performance Analysis IP Configuration System Creation Methodology: Create,

More information

ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1. April

ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1. April ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1 April 2007 Overview Hardware Setup Software Setup & Requirements Generate VxWorks BSP Create VxWorks Project Create VxWorks

More information

Live Demo: A New Hardware- Based Approach to Secure the Internet of Things

Live Demo: A New Hardware- Based Approach to Secure the Internet of Things SESSION ID: CCS-W04 Live Demo: A New Hardware- Based Approach to Secure the Internet of Things Cesare Garlati Chief Security Strategist prpl Foundation @CesareGarlati Securing the Internet of (broken)

More information

_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes

_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes _ V9.12. 225 Technical Notes Renesas R8C In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document assumes knowledge

More information

Virtualization and HA PI Systems: Three strategies to keep your PI System available, scalable, and portable

Virtualization and HA PI Systems: Three strategies to keep your PI System available, scalable, and portable Virtualization and HA PI Systems: Three strategies to keep your PI System available, scalable, and portable Empowering Business in Real Time. Copyright 2009, OSIsoft Inc. All rights Reserved. Why Virtualization

More information

Performance Considerations of Network Functions Virtualization using Containers

Performance Considerations of Network Functions Virtualization using Containers Performance Considerations of Network Functions Virtualization using Containers Jason Anderson, et al. (Clemson University) 2016 International Conference on Computing, Networking and Communications, Internet

More information

Enhanced Debugging with Traces

Enhanced Debugging with Traces Enhanced Debugging with Traces An essential technique used in emulator development is a useful addition to any programmer s toolbox. Peter Phillips Creating an emulator to run old programs is a difficult

More information

Exercise Session 6 Computer Architecture and Systems Programming

Exercise Session 6 Computer Architecture and Systems Programming Systems Group Department of Computer Science ETH Zürich Exercise Session 6 Computer Architecture and Systems Programming Herbstsemester 2016 Agenda GDB Outlook on assignment 6 GDB The GNU Debugger 3 Debugging..

More information

Virtual Hardware ECU How to Significantly Increase Your Testing Throughput!

Virtual Hardware ECU How to Significantly Increase Your Testing Throughput! Virtual Hardware ECU How to Significantly Increase Your Testing Throughput! Elektrobit Tech Day Jason Niatas Synopsys Inc. July 27, 2017 2017 Synopsys, Inc. 1 Agenda Automotive electronic evolution and

More information

Lab Install Windows 8

Lab Install Windows 8 Introduction In this lab, you will install Windows 8.1 and 8.0. Recommended Equipment A computer with a blank hard disk drive Windows 8.1 and 8.0 installation DVD or USB flash drive Step 1: Starting the

More information

SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems

SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems University of Toronto FPGA Seminar SimXMD Co-Debugging Software and Hardware in FPGA Embedded Systems Ruediger Willenberg and Paul Chow High-Performance Reconfigurable Computing Group University of Toronto

More information

Configuring Security with Passwords, Privileges, and Logins

Configuring Security with Passwords, Privileges, and Logins Configuring Security with Passwords, Privileges, and Logins Cisco IOS based networking devices provide several features that can be used to implement basic security for CLI sessions using only the operating

More information

L2 - C language for Embedded MCUs

L2 - C language for Embedded MCUs Formation C language for Embedded MCUs: Learning how to program a Microcontroller (especially the Cortex-M based ones) - Programmation: Langages L2 - C language for Embedded MCUs Learning how to program

More information

Multicore Challenges and Choices: Deciding Which Solution Is Right for You

Multicore Challenges and Choices: Deciding Which Solution Is Right for You Multicore Challenges and Choices: Deciding Which Solution Is Right for You Tomas Evensen Chief Technology Officer, Wind River Table of Contents Executive Summary... 1 Business and Technology Trends...

More information

Lecture 5: February 3

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

SIMICS: A COMMERCIALLY PROVEN FULL-SYSTEM SIMULATION FRAMEWORK

SIMICS: A COMMERCIALLY PROVEN FULL-SYSTEM SIMULATION FRAMEWORK SIMICS: A COMMERCIALLY PROVEN FULL-SYSTEM SIMULATION FRAMEWORK Jakob Engblom and Dan Ekblom Virtutech AB Norrtullsgatan 15 113 29 Stockholm Sweden email: jakob.engblom@virtutech.com, dan.ekblom@virtutech.com

More information

Practical Malware Analysis

Practical Malware Analysis Practical Malware Analysis Ch 4: A Crash Course in x86 Disassembly Revised 1-16-7 Basic Techniques Basic static analysis Looks at malware from the outside Basic dynamic analysis Only shows you how the

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

Lessons learned from Lustre file system operation

Lessons learned from Lustre file system operation Lessons learned from Lustre file system operation Roland Laifer STEINBUCH CENTRE FOR COMPUTING - SCC KIT University of the State of Baden-Württemberg and National Laboratory of the Helmholtz Association

More information

Intro to Segmentation Fault Handling in Linux. By Khanh Ngo-Duy

Intro to Segmentation Fault Handling in Linux. By Khanh Ngo-Duy Intro to Segmentation Fault Handling in Linux By Khanh Ngo-Duy Khanhnd@elarion.com Seminar What is Segmentation Fault (Segfault) Examples and Screenshots Tips to get Segfault information What is Segmentation

More information

INFLUENTIAL OPERATING SYSTEM RESEARCH: SECURITY MECHANISMS AND HOW TO USE THEM CARSTEN WEINHOLD

INFLUENTIAL OPERATING SYSTEM RESEARCH: SECURITY MECHANISMS AND HOW TO USE THEM CARSTEN WEINHOLD Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group INFLUENTIAL OPERATING SYSTEM RESEARCH: SECURITY MECHANISMS AND HOW TO USE THEM CARSTEN WEINHOLD OVERVIEW Fundamental

More information

Malware

Malware reloaded Malware Research Team @ @xabiugarte Motivation Design principles / architecture Features Use cases Future work Dynamic Binary Instrumentation Techniques to trace the execution of a binary (or

More information

Debugging Applications in Pervasive Computing

Debugging Applications in Pervasive Computing Debugging Applications in Pervasive Computing Larry May 1, 2006 SMA 5508; MIT 6.883 1 Outline Video of Speech Controlled Animation Survey of approaches to debugging Turning bugs into features Speech recognition

More information

Contents. Cortex M On-Chip Emulation. Technical Notes V

Contents. Cortex M On-Chip Emulation. Technical Notes V _ Technical Notes V9.12.225 Cortex M On-Chip Emulation Contents Contents 1 1 Introduction 2 2 Access Breakpoints 3 3 Trace 5 4 NXP LPC 5 4.1 Boot and Memory Remapping 5 4.2 LPC17xx Startup 5 4.1 LPC11A02/04

More information

Virtualization. Application Application Application. MCSN - N. Tonellotto - Distributed Enabling Platforms OPERATING SYSTEM OPERATING SYSTEM

Virtualization. Application Application Application. MCSN - N. Tonellotto - Distributed Enabling Platforms OPERATING SYSTEM OPERATING SYSTEM Virtualization lication lication lication lication lication lication OPERATING SYSTEM OPERATING SYSTEM VIRTUALIZATION 1 Basic Idea Observation Hardware resources are typically under-utilized Hardware resources

More information

HKG : OpenAMP Introduction. Wendy Liang

HKG : OpenAMP Introduction. Wendy Liang HKG2018-411: OpenAMP Introduction Wendy Liang Agenda OpenAMP Projects Overview OpenAMP Libraries Changes in Progress Future Improvements OpenAMP Projects Overview Introduction With today s sophisticated

More information

HIVE: Fault Containment for Shared-Memory Multiprocessors J. Chapin, M. Rosenblum, S. Devine, T. Lahiri, D. Teodosiu, A. Gupta

HIVE: Fault Containment for Shared-Memory Multiprocessors J. Chapin, M. Rosenblum, S. Devine, T. Lahiri, D. Teodosiu, A. Gupta HIVE: Fault Containment for Shared-Memory Multiprocessors J. Chapin, M. Rosenblum, S. Devine, T. Lahiri, D. Teodosiu, A. Gupta CSE 598C Presented by: Sandra Rueda The Problem O.S. for managing FLASH architecture

More information

Pregel: A System for Large- Scale Graph Processing. Written by G. Malewicz et al. at SIGMOD 2010 Presented by Chris Bunch Tuesday, October 12, 2010

Pregel: A System for Large- Scale Graph Processing. Written by G. Malewicz et al. at SIGMOD 2010 Presented by Chris Bunch Tuesday, October 12, 2010 Pregel: A System for Large- Scale Graph Processing Written by G. Malewicz et al. at SIGMOD 2010 Presented by Chris Bunch Tuesday, October 12, 2010 1 Graphs are hard Poor locality of memory access Very

More information

MPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine

MPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine MPLAB SIM MPLAB IDE Software Simulation Engine 2004 Microchip Technology Incorporated MPLAB SIM Software Simulation Engine Slide 1 Welcome to this web seminar on MPLAB SIM, the software simulator that

More information

ML410 VxWorks BSP and System Image Creation for the BSB DDR2 Design Using EDK 8.2i SP1. April

ML410 VxWorks BSP and System Image Creation for the BSB DDR2 Design Using EDK 8.2i SP1. April ML410 VxWorks BSP and System Image Creation for the BSB DDR2 Design Using EDK 8.2i SP1 April 2007 Overview Hardware Setup Software Setup & Requirements Generate VxWorks BSP Create VxWorks Project Create

More information

Product Data Sheet: Ignition 8 Industrial Application Platform. A Whole New View

Product Data Sheet: Ignition 8 Industrial Application Platform. A Whole New View Product Data Sheet: Ignition 8 Industrial Application Platform A Whole New View With the powerful tools, web technologies, and next-generation visualization system we re building in Ignition 8, you ll

More information

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010 Open Mobile Platforms EE 392I, Lecture-6 May 4 th, 2010 Open Mobile Platforms The Android Initiative T-Mobile s ongoing focus on Android based devices in US and EU markets In Nov 2007, Google announced

More information

RM4 - Cortex-M7 implementation

RM4 - Cortex-M7 implementation Formation Cortex-M7 implementation: This course covers the Cortex-M7 V7E-M compliant CPU - Processeurs ARM: ARM Cores RM4 - Cortex-M7 implementation This course covers the Cortex-M7 V7E-M compliant CPU

More information

Commercial Real-time Operating Systems An Introduction. Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory

Commercial Real-time Operating Systems An Introduction. Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory Commercial Real-time Operating Systems An Introduction Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory swamis@iastate.edu Outline Introduction RTOS Issues and functionalities LynxOS

More information

UART Thou Mad? An Introduction to the UART Hardware Interface. Mickey Shkatov. Toby Kohlenberg

UART Thou Mad? An Introduction to the UART Hardware Interface. Mickey Shkatov. Toby Kohlenberg UART Thou Mad? An Introduction to the UART Hardware Interface Mickey Shkatov Toby Kohlenberg 1 Table of Contents Abstract... 2 Introduction to UART... 2 Essential Tools... 4 UART and Security... 5 Conclusion...

More information

Infrastructure Middleware (Part 1): Hardware Abstraction Layer (HAL)

Infrastructure Middleware (Part 1): Hardware Abstraction Layer (HAL) Infrastructure Middleware (Part 1): Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA

More information

_ V ST STM8 Family On-Chip Emulation. Contents. Technical Notes

_ V ST STM8 Family On-Chip Emulation. Contents. Technical Notes _ V9.12. 225 Technical Notes ST STM8 Family On-Chip Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document assumes knowledge

More information

ARM CORTEX-R52. Target Audience: Engineers and technicians who develop SoCs and systems based on the ARM Cortex-R52 architecture.

ARM CORTEX-R52. Target Audience: Engineers and technicians who develop SoCs and systems based on the ARM Cortex-R52 architecture. ARM CORTEX-R52 Course Family: ARMv8-R Cortex-R CPU Target Audience: Engineers and technicians who develop SoCs and systems based on the ARM Cortex-R52 architecture. Duration: 4 days Prerequisites and related

More information

Operating Systems. read the warning about the size of the project make sure you get the 6 th edition (or later) of the book

Operating Systems. read the warning about the size of the project make sure you get the 6 th edition (or later) of the book Review Syllabus Operating Systems read the warning about the size of the project make sure you get the 6 th edition (or later) of the book Class Grades Server Grades.cs.umd.edu Program #0 Handout its due

More information

The Kernel Abstraction

The Kernel Abstraction The Kernel Abstraction Debugging as Engineering Much of your time in this course will be spent debugging In industry, 50% of software dev is debugging Even more for kernel development How do you reduce

More information

LAB #8. GDB can do four main kinds of things (plus other things in support of these) to help you catch bugs in the act:

LAB #8. GDB can do four main kinds of things (plus other things in support of these) to help you catch bugs in the act: LAB #8 Each lab will begin with a brief demonstration by the TAs for the core concepts examined in this lab. As such, this document will not serve to tell you everything the TAs will in the demo. It is

More information

GFS: The Google File System. Dr. Yingwu Zhu

GFS: The Google File System. Dr. Yingwu Zhu GFS: The Google File System Dr. Yingwu Zhu Motivating Application: Google Crawl the whole web Store it all on one big disk Process users searches on one big CPU More storage, CPU required than one PC can

More information

GDB Tutorial. A Walkthrough with Examples. CMSC Spring Last modified March 22, GDB Tutorial

GDB Tutorial. A Walkthrough with Examples. CMSC Spring Last modified March 22, GDB Tutorial A Walkthrough with Examples CMSC 212 - Spring 2009 Last modified March 22, 2009 What is gdb? GNU Debugger A debugger for several languages, including C and C++ It allows you to inspect what the program

More information

Renesas 78K/78K0R/RL78 Family In-Circuit Emulation

Renesas 78K/78K0R/RL78 Family In-Circuit Emulation _ Technical Notes V9.12.225 Renesas 78K/78K0R/RL78 Family In-Circuit Emulation This document is intended to be used together with the CPU reference manual provided by the silicon vendor. This document

More information