Linux Embedded System Design Workshop

Total Page:16

File Type:pdf, Size:1020Kb

Linux Embedded System Design Workshop ti Linux Embedded System Design Workshop Designing with Texas Instruments ARM and ARM+DSP Systems Student Guide Workshop Student Notes Revision 2.10 August 2010 Technical Training Workshop Goals Notice Creation of derivative works unless agreed to in writing by the copyright owner is forbidden. No portion of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, without the prior written permission from the copyright holder. Texas Instruments reserves the right to update this Guide to reflect the most current product information for the spectrum of users. If there are any differences between this Guide and a technical reference manual, references should always be made to the most current reference manual. Information contained in this publication is believed to be accurate and reliable. However, responsibility is assumed neither for its use nor any infringement of patents or rights of others that may result from its use. No license is granted by implication or otherwise under any patent or patent right of Texas Instruments or others. Copyright © 2006 - 2010 by Texas Instruments Incorporated. All rights reserved. Training Technical Organization Texas Instruments, Incorporated 7834 Churchill Way, MS 3984 Dallas, TX 75251-1903 (972) 917-3889 Revision History October 2006, Version 0.80 (alpha) December 2006, Versions 0.90/0.91 (alpha2) January 2007, Version 0.92 (beta) February 2007, Version 0.95 March 2008, Versions 0.96 (errata) April 2008, Version 0.98 (chapter rewrites & errata) September 2008, Version 1.30 (beta 1 & 2) October 2008, Version 1.30 (beta 3) February 2010, Version 2.00 August 2010, Version 2.10 0 - 2 DM644x DaVinci Workshop - Introduction Workshop Goals Welcome Topics Workshop Goals...................................................................................................................................... 0-4 Where To Get Additional Information/Training? ...................................................................................0-6 Workshop Outline ................................................................................................................................... 0-7 About You................................................................................................................................................ 0-8 Administrative Topics ............................................................................................................................. 0-8 DM644x DaVinci Workshop - Introduction 0 - 3 Workshop Goals Workshop Goals Workshop Goal “Learn how to put together a ARM-based Linux embedded system.” Given that you already know: How to program in C Basics of Linux Understand basic embedded system concepts Provided with: Linux Distribution for ARM TI foundation software, incl: Codec Engine, Codecs (i.e. Algo’s) Tools: DVEVM, SDK/DVSDK In this workshop, you’ll learn the essential skills required to put together a Linux ARM or ARM+DSP based system Workshop Prerequisites Pre-requisite Skills Required Some knowledge of C programming Basic Linux skills (i.e. shell commands, etc.) Recommended Embedded system basics (memory map, linking, etc.) Basic Linux programming (processes, threads, etc.) Nice to have C6x DSP programming Understanding of Linux device drivers Video Application/System Knowledge Not Required No H/W design experience required 0 - 4 DM644x DaVinci Workshop - Introduction Workshop Goals Focus of Linux/ARM Workshop This workshop focuses on applications which plan to use TI’s ARM or ARM+DSP software model: ARM running embedded Linux DSP running DSP/BIOS Signal processing (and IPC) via Codec Engine (VISA API) Signal Processing Layer (CODECs and algorithms) built using xDM/xDAIS API Building programs with GNU Make (gMake) and TI’s Real-Time Software XDC tools What Will You Accomplish? When you leave the workshop, you should be able to… Describe the basic silicon features and options of the TI high-performance ARM and ARM+DSP processors Draw a diagram describing the building blocks used in TI’s ARM+DSP foundation software Build a Linux application which uses: The audio and video Linux drivers provided in the Linux distribution Invoke local (ARM-based) and remote (DSP-based) signal processing algorithms via Codec Engine (VISA API) Create the building-blocks used by the Codec Engine: Use gMake & Configuro to build a signal processing Engine and DSP Server Algorithms/Codecs: Describe the xDM/xDAIS API’s used to access algorithms Write an algorithm following the XDM API Tools: Setup the DVEVM hardware tool by configuring various U-Boot parameters DM644x DaVinci Workshop - Introduction 0 - 5 Where To Get Additional Information/Training? Where To Get Additional Information/Training? Why Don’t We Cover Everything? • In 4 days, it is impossible to cover everything. However, we do cover about an equivalent of a college semester course on the DM644x. • We provide the following lists as a starting place for additional information. Where can I get additional skills? (from TI) Texas Instruments Curriculum DaVinci / OMAP / Sitara System Integration Building Linux based Systems Workshop using Linux (4-days) ( ARM or ARM+DSP processors ) www.ti.com/training System Integration Workshop using DSP/BIOS Building BIOS based Systems (4-days) ( DSP processors ) www.ti.com/training Developing Algo’s for C6x DSP’s C6000 Optimization Workshop (4-days) ( Are you writing/optimizing algorithms www.ti.com/training for latest C64x+ or C674x DSP’s CPU’s ) Online Resources: DaVinci Open-Source Linux Mail List OMAP / Sitara / DaVinci Wiki http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source http://processors.wiki.ti.com Gstreamer and other projects http://linux.davincidsp.com or https://gforge.ti.com/gf/ TI E2E Community (videos, forums, blogs) TI Software http://e2e.ti.com http://www.ti.com/dvevmupdates, http://www.ti.com/dms http://www.ti.com/myregisteredsoftware This workshop presentation & exercises http://processors.wiki.ti.com/index.php/OMAP™/DaVinci™_System_Integration_using_Linux_Workshop Where can I get additional skills? (Non-TI) Non-TI Curriculum A few references, to get you started: “Linux For Dummies”, by Dee-Ann LeBlanc “Linux Pocket Guide”, by Daniel J. Barrett free-electrons.com/training Linux www.linux-tutorial.info/index.php www.oreilly.com/pub/topic/linux The Linux Documentation Project: www.tldp.org Rute Linux Tutorial: http://rute.2038bug.com/index.html.gz “Building Embedded Linux Systems”, by Karim Yaghmour Embedded Linux “Embedded Linux Primer”, by Christopher Hallinan free-electrons.com/training “Beginning Linux Programming” Third Edition, by Neil Linux Application Programming Matthew and Richard Stones ARM Programming http://www.arm.com/ (not required for Linux based designs) “Linux Device Drivers” Third Edition, by Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman Writing Linux Drivers http://lwn.net/Kernel/LDD3/ www.adeneo.com “The Art of Digital Video”, John Watkinson “Digital Television”, H. Benoit Video “Video Demystified”, Keith Jack “Video Compression Demystified”, Peter Symes 0 - 6 DM644x DaVinci Workshop - Introduction Workshop Outline Workshop Outline Linux Embedded System Design Workshop Introduction 0. Welcome 1. Device Families Overview 2. TI Foundation Software 3. Introduction to Linux/U-Boot 4. Tools Overview Application Coding 5. Building Programs with gMake 6. Device Driver Introduction 7. Video Drivers : V4L2 and FBdev 8. Multi-Threaded Systems Using the Codec Engine 9. Local Codecs : Given an Engine 10. Local Codecs : Building an Engine 11. Remote Codecs : Given a DSP Server 12. Remote Codecs : Building a DSP Server Algorithms 13. xDAIS and xDM Authoring 14. (Optional) Using DMA in Algorithms 15. (Optional) Intro to DSPLink Copyright © 2010 Texas Instruments. All rights reserved. Lab Exercises Introduction 3. Configure U-Boot and boot the DVEVM Application 5. Building programs with XDC; explore XDC pkg files Programming 6. Given: File ? Audio; Build: Audio In ? Audio Out 7. Setup an On-Screen Display banner Video In ? Video Out 8. Concurrently run audio and video loop-thru programs Using the 9. Use a provided Engine (containing local codecs) Codec Engine 10. Build an Engine (given local codecs) 11. Use remote codecs (using a provided DSP Server) 12. Build a DSP Server (given DSP-based codecs) Optional: Swap out video_copy codec for H.264 codec Optional: H.264 A/V record & playback Copyright © 2010 Texas Instruments. All rights reserved. DM644x DaVinci Workshop - Introduction 0 - 7 About You About You About your Experience – A Show Of Hands (No right or wrong answers, we just want to know where you’re coming from) Who is building a Video application If not, what other types of applications Experienced with Linux Linux command line (Bash) Mounting drives, NFS Linux C Programmer GCC, gMake Linux threads (processes, pThread) Previous TI DSP developer? Another TI processor Competitor’s processor Experience building Embedded Systems Memory maps and linking Bootloading a processor Administrative Topics Administrative Topics Name Tags Start & End Times Bathrooms Phone calls Lunch !!! Let us know if you’ll miss part of the workshop TTO Technical Training Organization 0 - 8 DM644x DaVinci Workshop - Introduction TI ARM/ARM+DSP Devices Introduction In this chapter a cursory overview of Texas Instruments ARM and ARM+DSP devices by examining
Recommended publications
  • Embedded Linux Systems with the Yocto Project™
    OPEN SOURCE SOFTWARE DEVELOPMENT SERIES Embedded Linux Systems with the Yocto Project" FREE SAMPLE CHAPTER SHARE WITH OTHERS �f, � � � � Embedded Linux Systems with the Yocto ProjectTM This page intentionally left blank Embedded Linux Systems with the Yocto ProjectTM Rudolf J. Streif Boston • Columbus • Indianapolis • New York • San Francisco • Amsterdam • Cape Town Dubai • London • Madrid • Milan • Munich • Paris • Montreal • Toronto • Delhi • Mexico City São Paulo • Sidney • Hong Kong • Seoul • Singapore • Taipei • Tokyo Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein. For information about buying this title in bulk quantities, or for special sales opportunities (which may include electronic versions; custom cover designs; and content particular to your business, training goals, marketing focus, or branding interests), please contact our corporate sales depart- ment at [email protected] or (800) 382-3419. For government sales inquiries, please contact [email protected]. For questions about sales outside the U.S., please contact [email protected]. Visit us on the Web: informit.com Cataloging-in-Publication Data is on file with the Library of Congress.
    [Show full text]
  • Microsoft and Wind River Are Currently in a "Dead Heat" For
    Microsoft and Wind River are currently in a "dead heat" for the top position in sales of embedded operating system software and toolkits, according to Stephen Balacco, embedded software analyst at Venture Development Corp. (VDC). In terms of the sale of real-time operating systems, on the other hand, Balacco said Wind River still maintains a "commanding market leadership position," but noted that Wind River has been "as challenged as any supplier in this market space over the last two years in the face of a slumping telecommunications industry, where they have been highly leveraged for sales, as well as [from] increased competition from royalty-free and Linux OS vendors making inroads." While not disclosing specific market share numbers publicly, VDC provided the following list indicating the market share position in terms of sales revenue, for the leading vendors in the embedded operating system market . 1. Microsoft 2. Wind River 3. Symbian 4. Palm 5. QNX 6. Enea Data 7. Green Hills Software 8. LynuxWorks 9. MontaVista Software 10. Accelerated Technology (Mentor Graphics) Included among key factors identified by VDC as impacting this market were . • Increased focus and emphasis on bundling integrated development solutions that minimize unnecessary and repetitive development and allow OEMs to focus on their core competencies in differentiating their product through the application; • Ability of OS vendors to adapt business models that are flexible in their pricing and terms and conditions in response to a changing set of market requirements spurred on by competitive market forces; and • A telecommunications market that continues to struggle has affected investments in new projects.
    [Show full text]
  • ADSP-BF537 EZ-KIT Lite® Evaluation System Manual
    ADSP-BF537 EZ-KIT Lite® Evaluation System Manual Revision 2.4, April 2008 Part Number 82-000865-01 Analog Devices, Inc. One Technology Way Norwood, Mass. 02062-9106 a Copyright Information ©2008 Analog Devices, Inc., ALL RIGHTS RESERVED. This document may not be reproduced in any form without prior, express written consent from Analog Devices, Inc. Printed in the USA. Limited Warranty The EZ-KIT Lite evaluation system is warranted against defects in materi- als and workmanship for a period of one year from the date of purchase from Analog Devices or from an authorized dealer. Disclaimer Analog Devices, Inc. reserves the right to change this product without prior notice. Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use; nor for any infringement of patents or other rights of third parties which may result from its use. No license is granted by impli- cation or otherwise under the patent rights of Analog Devices, Inc. Trademark and Service Mark Notice The Analog Devices icon bar and logo, VisualDSP++, the VisualDSP++ logo, Blackfin, the Blackfin logo, the CROSSCORE logo, EZ-KIT Lite, and EZ-Extender are registered trademarks of Analog Devices, Inc. All other brand and product names are trademarks or service marks of their respective owners. Regulatory Compliance The ADSP-BF537 EZ-KIT Lite is designed to be used solely in a labora- tory environment. The board is not intended for use as a consumer end product or as a portion of a consumer end product. The board is an open system design which does not include a shielded enclosure and therefore may cause interference to other electrical devices in close proximity.
    [Show full text]
  • Green Hills Software INTEGRITY-178B Separation Kernel, Comprising
    CCEVS APPROVED ASSURANCE CONTINUITY MAINTENANCE REPORT ASSURANCE CONTINUITY MAINTENANCE REPORT FOR TM Green Hills Software INTEGRITY-178B Separation Kernel, comprising: INTEGRITY-178B Real Time Operating System (RTOS), version IN-ISP448-0100-SK_LMFWPCD2_Rel running on JSF PCD System Processor CCA, version 437140-007 with PowerPC, version 7448 Maintenance Report Number: CCEVS-VR-VID10119-2008a Date of Activity: 31 July 2009 References: Common Criteria document CCIMB-2004-02-009 “Assurance Continuity: CCRA Requirements”, version 1.0, February 2004; Impact Analysis Report, “High Assurance Security Products GHS JSF Panoramic Cockpit Display Separation Kernel Security Impact Analysis, DO-ISP448-0100- SK_LMFWPCD2SIA” High Assurance Security Products GHS Assurance Maintenance Plan, IN-INNNNN- 0101-HASPAMP Documentation Updated: Green Hills Software INTEGRITY-178B Separation Kernel developer evidence Assurance Continuity Maintenance Report: The vendor for the Green Hills Software INTEGRITY-178B Separation Kernel Operating System, submitted an Impact Analysis Report (IAR) to CCEVS for approval on 09 July 2009. The IAR is intended to satisfy requirements outlined in Common Criteria document CCIMB-2004-02-009, “Assurance Continuity: CCRA Requirements”, version 1.0, February 2004. In accordance with those requirements, the IAR describes the changes made to the certified TOE and the security impact of the changes. Changes to TOE: This maintenance activity consists of a functional and hardware platform modification to the Green Hills Software (GHS)
    [Show full text]
  • Research Purpose Operating Systems – a Wide Survey
    GESJ: Computer Science and Telecommunications 2010|No.3(26) ISSN 1512-1232 RESEARCH PURPOSE OPERATING SYSTEMS – A WIDE SURVEY Pinaki Chakraborty School of Computer and Systems Sciences, Jawaharlal Nehru University, New Delhi – 110067, India. E-mail: [email protected] Abstract Operating systems constitute a class of vital software. A plethora of operating systems, of different types and developed by different manufacturers over the years, are available now. This paper concentrates on research purpose operating systems because many of them have high technological significance and they have been vividly documented in the research literature. Thirty-four academic and research purpose operating systems have been briefly reviewed in this paper. It was observed that the microkernel based architecture is being used widely to design research purpose operating systems. It was also noticed that object oriented operating systems are emerging as a promising option. Hence, the paper concludes by suggesting a study of the scope of microkernel based object oriented operating systems. Keywords: Operating system, research purpose operating system, object oriented operating system, microkernel 1. Introduction An operating system is a software that manages all the resources of a computer, both hardware and software, and provides an environment in which a user can execute programs in a convenient and efficient manner [1]. However, the principles and concepts used in the operating systems were not standardized in a day. In fact, operating systems have been evolving through the years [2]. There were no operating systems in the early computers. In those systems, every program required full hardware specification to execute correctly and perform each trivial task, and its own drivers for peripheral devices like card readers and line printers.
    [Show full text]
  • MILS Architectural Approach Supporting Trustworthiness of the Iiot Solutions
    MILS Architectural Approach Supporting Trustworthiness of the IIoT Solutions An Industrial Internet Consortium Whitepaper Rance J. DeLong (The Open Group); Ekaterina Rudina (Kaspersky) MILS Architectural Approach Context and Overview 1 Context and Overview ...................................................................................................... 4 1.1 Need for Trustworthy System Operation ............................................................................. 5 1.2 What is MILS today .............................................................................................................. 6 1.3 How MILS Addresses Safety ................................................................................................. 7 1.4 How MILS Addresses Security .............................................................................................. 8 1.5 How MILS Supports Reliability, Resilience, and Privacy ........................................................ 9 2 MILS Concepts .................................................................................................................. 9 2.1 Centralized vs Distributed Security Architecture .................................................................. 9 2.1.1 Domain Isolation .................................................................................................................................. 10 2.1.2 Isolation and Information Flow Control ............................................................................................... 11 2.1.3 Separation
    [Show full text]
  • Selection of a New Hardware and Software Platform for Railway Interlocking
    Selection of a new hardware and software platform for railway interlocking Arghya Kamal Bhattacharya School of Electrical Engineering Thesis submitted for examination for the degree of Master of Science in Technology. Espoo 27.04.2020 Supervisor Prof. Valeriy Vyatkin Advisor MSc. Tommi Kokkonen Copyright ⃝c 2020 Arghya Kamal Bhattacharya Aalto University, P.O. BOX 11000, 00076 AALTO www.aalto.fi Abstract of the master’s thesis Author Arghya Kamal Bhattacharya Title Selection of a new hardware and software platform for railway interlocking Degree programme Automation and Electrical Engineering Major Control, Robotics and Autonomous Systems Code of major ELEC3025 Supervisor Prof. Valeriy Vyatkin Advisor MSc. Tommi Kokkonen Date 27.04.2020 Number of pages 82+34 Language English Abstract The interlocking system is one of the main actors for safe railway transportation. In most cases, the whole system is supplied by a single vendor. The recent regulations from the European Union direct for an “open” architecture to invite new game changers and reduce life-cycle costs. The objective of the thesis is to propose an alternative platform that could replace a legacy interlocking system. In the thesis, various commercial off-the-shelf hardware and software products are studied which could be assembled to compose an alternative interlocking platform. The platform must be open enough to adapt to any changes in the constituent elements and abide by the proposed baselines of new standardization initiatives, such as ERTMS, EULYNX, and RCA. In this thesis, a comparative study is performed between these products based on hardware capacity, architecture, communication protocols, programming tools, security, railway certifications, life-cycle issues, etc.
    [Show full text]
  • Microkernel Construction Introduction
    Microkernel Construction Introduction Nils Asmussen 04/06/2017 1 / 28 Outline Introduction Goals Administration Monolithic vs. Microkernel Overview About L4/NOVA 2 / 28 Goals 1 Provide deeper understanding of OS mechanisms 2 Look at the implementation details of microkernels 3 Make you become enthusiastic microkernel hackers 4 Propaganda for OS research at TU Dresden 3 / 28 Administration Thursday, 4th DS, 2 SWS Slides: www.tudos.org ! Teaching ! Microkernel Construction Subscribe to our mailing list: www.tudos.org/mailman/listinfo/mkc2017 In winter term: Microkernel-based operating systems (MOS) Various labs 4 / 28 Outline Introduction Monolithic vs. Microkernel Kernel design comparison Examples for microkernel-based systems Vision vs. Reality Challenges Overview About L4/NOVA 5 / 28 Monolithic Kernel System Design u s Application Application Application e r k Kernel e r File Network n e Systems Stacks l m Memory Process o Drivers Management Management d e Hardware 6 / 28 Monolithic Kernel OS (Propaganda) System components run in privileged mode No protection between system components Faulty driver can crash the whole system Malicious app could exploit bug in faulty driver More than 2=3 of today's OS code are drivers No need for good system design Direct access to data structures Undocumented and frequently changing interfaces Big and inflexible Difficult to replace system components Difficult to understand and maintain Why something different? ! Increasingly difficult to manage growing OS complexity 7 / 28 Microkernel System Design Application
    [Show full text]
  • Partitioned System with Xtratum on Powerpc
    Tesina de M´asteren Autom´aticae Inform´aticaIndustrial Partitioned System with XtratuM on PowerPC Author: Rui Zhou Advisor: Prof. Alfons Crespo i Lorente December 2009 Contents 1. Introduction1 1.1. MILS......................................2 1.2. ARINC 653..................................3 1.3. PikeOS.....................................6 1.4. ADEOS....................................7 2. Overview of XtratuM 11 2.1. Virtualization and Hypervisor........................ 11 2.2. XtratuM.................................... 12 3. Overview of PowerPC 16 3.1. POWER.................................... 16 3.2. PowerPC.................................... 17 3.3. PowerPC in Safety-critical.......................... 19 4. Main PowerPC Drivers to Virtualize 20 4.1. Processors................................... 20 4.2. Timer..................................... 21 4.3. Interrupt.................................... 23 4.4. Memory.................................... 24 5. Porting Implementation 25 5.1. Hypercall................................... 26 5.2. Timer..................................... 27 5.3. Interrupt.................................... 28 5.4. Memory.................................... 31 5.5. Partition.................................... 32 6. Benchmark 34 7. Conclusions and Future Work 38 Abstract Nowadays, the diversity of embedded applications has been developed into a new stage with the availability of various new high-performance processors and low cost on-chip memory. As the result of these new advances in hardware, there is a
    [Show full text]
  • Future-Proofing the Connected World: 13 Steps to Developing Secure Iot Products
    Future-proofing the Connected World: 13 Steps to Developing Secure IoT Products Presented by the IoT Working Group Table of Contents Forward Introduction Document Scope The Need for IoT Security IoT Products Can Compromise Privacy IoT products can lend their computing power to launch DDoS Attacks Medical Devices and Medical Standard Protocols are Vulnerable to Attack Drones Are Approaching Mainstream Status and Being Used as a Platform for Reconnaissance Critical national infrastructure can rely on the IoT ecosystem Cars are becoming connected and autonomous Moving Forward Why Development Organizations Should Care About Securing IoT Products IoT Device Security Challenges IoT products may be deployed in insecure or physically exposed environments Security is new to many manufacturers and there is limited security planning in development methodologies Security is not a business driver and there is limited security sponsorship and management support in development of IoT products There is a lack of defined standards and reference architecture for secure IoT development There are difficulties recruiting and retaining requisite skills for IoT development teams including architects, secure software engineers, hardware security engineers, and security testing staff The low price point increases the potential adversary pool Resource constraints in embedded systems limit security options IoT Security Survey Guidance for Secure IoT Development 1. Start with a Secure Development Methodology Security Requirements Security Processes Perform Safety Impact Assessment Perform Threat Modeling 2. Implement a Secure Development and Integration Environment Evaluate Programming Languages OWASP Python Security Project Link Integrated Development Environments Continuous Integration Plugins Testing and Code Quality Processes 3. Identify Framework and Platform Security Features Selecting an Integration Framework Evaluate Platform Security Features 4.
    [Show full text]
  • 0137017839.Pdf
    Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein. The publisher offers excellent discounts on this book when ordered in quantity for bulk purchases or special sales, which may include electronic versions and/or custom covers and content particular to your business, training goals, marketing focus, and branding interests. For more information, please contact: U.S. Corporate and Government Sales (800) 382-3419 [email protected] For sales outside the United States, please contact: International Sales [email protected] Visit us on the Web: informit.com/aw Library of Congress Cataloging-in-Publication Data: Hallinan, Christopher. Embedded Linux primer : a practical real-world approach / Christopher Hallinan. p. cm. ISBN 978-0-13-701783-6 (hardback : alk. paper) 1. Linux. 2. Operating systems (Computers) 3. Embedded computer systems--Programming. I. Title. QA76.76.O63H34462 2011 005.4’32--dc22 2010032891 Copyright © 2011 Pearson Education, Inc. All rights reserved. Printed in the United States of America. This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise.
    [Show full text]
  • Embedded Operating Systems and Linux
    Embedded Operating Systems and Linux Amir Hossein Payberah [email protected] 1 Agenda ➲ Embedded Systems ➲ Real Time Systems ➲ Who Are The Players? ➲ Linux As An Embedded OS ➲ Kernel 2.4 vs. 2.6 ➲ Applications And Products ➲ The Embedded OS Market 2 Embedded Systems 3 What is an Embedded OS? ➲ An "embedded system" is any computer sys- tem or computing device that performs a ded- icated function or is designed for use with a specific embedded software application. ➲ Embedded systems may use a ROM-based op- erating system or they may use a disk-based system, like a PC. But an embedded system is not usable as a general purpose computers or devices. 4 What makes a good Embedded OS? ➲ Modular ➲ Scalable ➲ Configurable ➲ Small footprint ➲ Device drivers ➲ etc, etc, etc... 5 Real Time Systems 6 What is Real Time? “A real time system is one in which the correct- ness of the computations not only depends upon the logical correctness of the computation but also upon the time at which the result is produced. If the timing constraints of the sys- tem are not met, system failure is said to have occurred.” Donald Gillies 7 What is Real Time? “Real time in operating systems: The ability of the operating system to provide a required level of service in a bounded re- sponse time.” POSIX Standard 1003.1 8 Hard vs. Soft Real Time ➲ Hard ● Absolute deadlines that must be met ● Example: Braking system controller ➲ Soft ● Time tolerance within which an event can occur ● Example: Multimedia streaming 9 What makes a good Real Time OS? ➲ Multi-threaded and pre-emptible
    [Show full text]