Hard Real-Time Linux for Off-The-Shelf Multicore Architectures

Total Page:16

File Type:pdf, Size:1020Kb

Hard Real-Time Linux for Off-The-Shelf Multicore Architectures Universität Bremen Fachbereich 3 Hard Real-Time Linux for Off-The-Shelf Multicore Architectures Dissertation zur Erlangung des Grades eines Doktors der Ingenieurwissenschaften – Dr.-Ing. – vorgelegt von Dirk Radder im Fachbereich 3 der Universität Bremen am 19. Mai 2015 Datum des Promotionskolloquiums: 10.11.2015 Gutachter: Prof. Dr. Jan Peleska (Universität Bremen) Prof. Dr.-Ing. Görschwin Fey (Universität Bremen) Zusammenfassung In dieser Dissertation werden die Forschungsergebnisse bezüglich der Entwicklung einer Echtzeiterweiterung für das Linux Betriebssystem vorgestellt. Die Arbeit beschreibt eine vollständige Erweiterung das Kernels, welche hartes Echtzeitverhalten auf einer 64 Bit x86 Architektur ermöglicht. Im ersten Teil dieser Arbeit werden Echtzeit-Systeme kategorisiert und Konzepte von Echtzeit-Betriebssystemen eingeführt. Im Weiteren werden zahlreiche bekannte Echtzeit-Betriebssysteme betrachtet. QNX Neutrino, RT_PREEMPT Linux Patch sowie HLRT Linux Patch werden detailiert analysiert und deren Kernkonzepte ausführlich diskutiert. Darüber hinaus wird eine Test-Suite erarbeitet, mit der aussagekrätige Benchmarks der analysierten Systeme erstellt werden. Die Systeme werden anhand dieser Benchmarks evaluiert und mit der in dieser Arbeit entwickelten Echtzeit- Erweiterung verglichen. Anhand der vorausgegangenen Analysen der genannten Systeme wird ein Katalog von Anforderungen definiert, den die entwickelte Echtzeit-Erweiterung umsetzen wird. Basierend auf diesem Anforderungs-Katalog und den identifizierten Kernkonzepten der analysierten Systeme wird der Entwurf der Echtzeit-Erweiterung erarbeitet und deren konkrete Implementierung dargestellt. Abschließend werden die Benchmarks aller analysierten Systeme, einschließlich der erarbeiteten Echtzeit-Erweiterung, miteinander verglichen und bewertet. iii Abstract This document describes the research results that were obtained from the development of a real-time extension for the Linux operating system. The paper describes a full extension of the kernel, which enables hard real-time performance on a 64-bit x86 architecture. In the first part of this study, real-time systems are categorized and concepts of real-time operating systems are introduced to the reader. In addition, numerous well-known real-time operating systems are considered. QNX Neutrino, RT_PREEMPT Linux Patch and HLRT Linux Patch are analyzed in detail. The core concepts of these systems are shown and discussed. Furthermore, a test suite is developed, which is used to obtain expressive benchmarks from the systems that were analyzed before. The systems are evaluated on the basis of these benchmarks and compared to the real-time extension which is developed in this work. A requirements catalogue is defined based on the analysis of the stated operating systems. The design of a real-time extension is developed based on the specification catalogue and the identified core concepts. Furthermore, the concrete implementation of the developed real-time extension is presented in detail. Finally, the benchmarks of all analyzed systems, including the developed real-time extension, are compared to each other and evaluated. v Contents List of Figures xiii List of Tables xv 1 Introduction 1 1.1 Objectives .................................. 2 1.2 Main Contributions ............................. 2 1.3 Related Work ................................ 3 1.4 Structure of this Document ........................ 6 I Background and Components 9 2 Concepts of Real-Time Systems 11 2.1 Definition and Classification of Real-Time Systems ........... 11 2.1.1 Proprietary versus Open ...................... 12 2.1.2 Centralized versus Distributed .................. 13 2.1.3 Fail-Safe versus Fail-Operational ................. 13 2.1.4 Hard versus Soft Real-Time .................... 14 2.1.5 Event-Triggered versus Time-Triggered .............. 15 2.2 Requirements of Real-Time Systems ................... 16 2.2.1 Functional Requirements ...................... 17 2.2.2 Temporal Requirements ...................... 17 2.2.3 Dependability Requirements .................... 18 2.2.4 Architectural Requirements .................... 18 2.3 Hardware for Real-Time Systems ..................... 19 2.4 x86 Instruction Set Architecture ..................... 20 2.4.1 General Remarks and Design ................... 20 2.4.2 Hyper-Threading Technology ................... 21 2.4.3 APIC Architecture ......................... 21 2.4.4 Time Stamp Counter ........................ 22 2.4.5 Problems with Hard Real-Time on the x86 Architecture .... 22 3 Real-Time Operating Systems 23 3.1 Task Management ............................. 23 vii Contents 3.1.1 Task States ............................. 24 3.1.2 Task Hierarchy ........................... 24 3.1.3 Task Types ............................. 25 3.2 Scheduling .................................. 25 3.2.1 Clock Driven Scheduling Strategies ................ 26 3.2.2 Event Driven Scheduling Strategies ................ 26 3.2.2.1 Earliest-Deadline-First Scheduling ........... 26 3.2.2.2 Rate-Monotonic Scheduling ............... 26 3.2.3 Hybrid Scheduling Strategies ................... 27 3.2.3.1 First-In-First-Out Scheduling .............. 27 3.2.3.2 Round-Robin Scheduling ................ 28 3.3 Partitioning ................................. 28 3.4 Main System Services ........................... 29 3.5 POSIX Standard .............................. 29 3.5.1 Real-Time System Profiles ..................... 30 3.6 Real-Time and Linux ............................ 31 3.6.1 Real-Time Kernel .......................... 31 3.6.2 Kernel Preemption ......................... 32 3.6.3 Resource Reservation ........................ 32 II Real-Time Operating Systems Analysis 33 4 Overview of Available Real-Time Operating Systems 35 4.1 Atomthreads ................................ 39 4.1.1 Structure of the Kernel ...................... 39 4.1.2 CPU Architecture Ports ...................... 41 4.2 eCos ..................................... 41 4.2.1 Design ................................ 42 4.3 VxWorks .................................. 42 4.3.1 Protection Domains Architecture ................. 43 4.4 μC/OS-III .................................. 43 4.4.1 Design ................................ 44 4.5 MontaVistaLinux .............................. 44 4.6 ThreadX ................................... 44 4.6.1 Pico Kernel ............................. 45 4.7 RTLinux ................................... 45 4.7.1 Structure of the Kernel ...................... 45 4.8 QNX, HLRT and RT-Preempt ....................... 46 5 Evaluating (POSIX) Real-Time Operating Systems 49 5.1 Unconsidered Aspects ........................... 49 5.2 Identify Technical Values .......................... 50 5.2.1 Benchmark Methodology ...................... 51 viii Contents 5.3 Case Scenarios for Real-Time Systems .................. 53 5.3.1 Development Board ........................ 54 5.4 Benchmark Test Framework ........................ 55 5.4.1 Measurement Details ........................ 55 5.4.2 Operating System Overhead .................... 57 5.4.3 Test Design ............................. 58 5.4.3.1 Task Period Accuracy .................. 59 5.4.3.2 Task Change Times ................... 60 5.4.3.3 Task Creation Time ................... 62 5.4.3.4 Interrupt Times ..................... 63 6 Case Study 1: RT-Preempt Patch 67 6.1 Background and Overview ......................... 67 6.2 Preemptable In-Kernel Locking Primitives ................ 68 6.2.1 Priority Inheritance for In-Kernel Locking Primitives ...... 70 6.3 Interrupt Handlers as Kernel Threads .................. 72 6.4 Real-Time Application Programming ................... 75 6.5 Benchmarking ................................ 75 6.5.1 Task Period Tests ......................... 76 6.5.2 Task Switch Tests ......................... 79 6.5.3 Task Creation Test ......................... 84 6.5.4 Interrupt Tests ........................... 86 6.6 Summary .................................. 89 7 Case Study 2: HaRTLinC 91 7.1 Background and Overview ......................... 91 7.2 CPU Reservation .............................. 92 7.2.1 The SCHED_HLRT Scheduling Policy ............... 92 7.2.2 Interrupt Routing ......................... 96 7.2.3 Necessary Adjustments ....................... 97 7.3 Time-Triggered Architecture ........................ 98 7.4 Real-Time Application Programming ................... 99 7.5 Benchmarking ................................100 7.5.1 Task Period Tests .........................100 7.5.2 Interrupt Tests ...........................103 7.6 Summary ..................................105 8 Case Study 3: QNX Neutrino 107 8.1 Background and Overview .........................107 8.2 Microkernel Architecture ..........................107 8.2.1 Process Management ........................108 8.2.2 Interrupt Handling .........................110 8.2.3 Message Passing ..........................110 8.3 Adaptive Partitioning Scheduler ......................111 ix Contents 8.4 Benchmarking ................................114 8.4.1 Task Period Tests .........................115 8.4.2 Task Switch Tests .........................117 8.4.3 Task Creation Test .........................121 8.4.4 Interrupt Tests ...........................121 8.5 Summary ..................................124 III A Hard Real-Time Linux Operating System 125 9 Requirements Discussion 127 9.1 Analysis ...................................130 9.2 Coverage ...................................131 10 Hard Real-Time Linux System Design 133
Recommended publications
  • Real-Time, Safe and Certified OS
    Real-Time, Safe and Certified OS Roman Kapl <[email protected]> drivers, customer projects, development Tomas Martinec <[email protected]> testing and certification © SYSGO AG · INTERNAL 1 Introduction • PikeOS – real-time, safety certified OS • Desktop and Server vs. • Embedded • Real-Time • Safety-Critical • Certified • Differences • Scheduling • Resource management • Features • Development © SYSGO AG · INTERNAL 2 Certification • Testing • Analysis • Lot of time • Even more paper • Required for safety-critical systems • Trains • Airplanes © SYSGO AG · INTERNAL 3 PikeOS • Embedded, real-time, certified OS • ~150 people (not just engineers) • Rail • Avionics • Space • This presentation is not about PikeOS specifically © SYSGO AG · INTERNAL 4 PikeOS technical • Microkernel • Inspired by L4 • Memory protection (MMU) • More complex than FreeRTOS • Virtualization hypervisor • X86, ARM, SPARC, PowerPC • Eclipse IDE for development © SYSGO AG · INTERNAL 5 Personalities • General • POSIX • Linux • Domain specific • ARINC653 • PikeOS native • Other • Ada, RT JAVA, AUTOSAR, ITRON, RTEMS © SYSGO AG · INTERNAL 6 PikeOS Architecture App. App. App. App. App. App. Volume Syste m Provider Partition PikeOS Para-Virtualized HW Virtualized File System (Native, POSIX, Guest OS PikeOS Native ARINC653, ...) Guest OS Linux, Android Linux, Android Device Driver User Space / Partitions Syste m PikeOS System Software ExtensionSyste m Extension PikeOS Microkernel Kernel Space / Hypervisor Architecture Platform Kernel Level Support Package Support Package Driver SoC /
    [Show full text]
  • Sistemi Operativi Real-Time Marco Cesati Lezione R13 Sistemi Operativi Real-Time – II Schema Della Lezione
    Sistemi operativi real-time Marco Cesati Lezione R13 Sistemi operativi real-time – II Schema della lezione Caratteristiche comuni VxWorks LynxOS Sistemi embedded e real-time QNX eCos Windows Linux come RTOS 15 gennaio 2013 Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT’13 R13.1 Sistemi operativi Di cosa parliamo in questa lezione? real-time Marco Cesati In questa lezione descriviamo brevemente alcuni dei più diffusi sistemi operativi real-time Schema della lezione Caratteristiche comuni VxWorks LynxOS 1 Caratteristiche comuni degli RTOS QNX 2 VxWorks eCos 3 LynxOS Windows Linux come RTOS 4 QNX Neutrino 5 eCos 6 Windows Embedded CE 7 Linux come RTOS SERT’13 R13.2 Sistemi operativi Caratteristiche comuni dei principali RTOS real-time Marco Cesati Corrispondenza agli standard: generalmente le API sono proprietarie, ma gli RTOS offrono anche compatibilità (compliancy) o conformità (conformancy) allo standard Real-Time POSIX Modularità e Scalabilità: il kernel ha una dimensione Schema della lezione Caratteristiche comuni (footprint) ridotta e le sue funzionalità sono configurabili VxWorks Dimensione del codice: spesso basati su microkernel LynxOS QNX Velocità e Efficienza: basso overhead per cambi di eCos contesto, latenza delle interruzioni e primitive di Windows sincronizzazione Linux come RTOS Porzioni di codice non interrompibile: generalmente molto corte e di durata predicibile Gestione delle interruzioni “separata”: interrupt handler corto e predicibile, ISR lunga
    [Show full text]
  • POLITECNICO DI MILANO DEPARTMENT of CIVIL and ENVIRONMENTAL ENGINEERING – Environmental Section
    POLITECNICO DI MILANO DEPARTMENT OF CIVIL AND ENVIRONMENTAL ENGINEERING – Environmental Section AWARE – Assessment on Waste and Resources – Research group LITERATURE REVIEW ON THE ASSESSMENT OF THE CARBONATION POTENTIAL OF LIME IN DIFFERENT MARKETS AND BEYOND Customer: EuLA – the European Lime Association Authors: Prof. Mario Grosso (Principal Investigator) Eng. Laura Biganzoli, Francesco Pietro Campo, Sara Pantini, Camilla Tua July 2020 Report n. 845.0202.70.02 To refer to this report, please use the following reference: Grosso M., Biganzoli L., Campo F. P., Pantini S., Tua C. 2020. Literature review on the assessment of the carbonation potential of lime in different markets and beyond. Report prepared by Assessment on Waste and Resources (AWARE) Research Group at Politecnico di Milano (PoliMI), for the European Lime Association (EuLA). Pp. 333. CHAPTER AUTHORS 1 EXECUTIVE SUMMARY F. P. Campo, C. Tua, M. Grosso 2 METHODOLOGY AND SCOPE OF THE WORK F. P. Campo, M. Grosso 3 INTRODUCTION: LIME USE AND APPLICATIONS F. P. Campo, M. Grosso 3.1 USE OF LIME IN IRON AND STEEL INDUSTRY L. Biganzoli, M. Grosso 3.2.1 USE OF LIME IN SAND LIME BRICK C. Tua, M. Grosso APPLICATION 3.2.2 USE OF LIME IN LIGHT-WEIGHT LIME C. Tua, M. Grosso CONCRETE 3.2.3 USE OF LIME IN MORTARS F. P. Campo, M. Grosso 3.2.4 USE OF LIME IN HEMP LIME F. P. Campo, M. Grosso 3.2.5 USE OF LIME IN OTHER CONSTRUCTION F. P. Campo, M. Grosso MATERIALS 3.3.1 USE OF LIME IN SOIL STABILISATION F. P. Campo, C.
    [Show full text]
  • Performance Study of Real-Time Operating Systems for Internet Of
    IET Software Research Article ISSN 1751-8806 Performance study of real-time operating Received on 11th April 2017 Revised 13th December 2017 systems for internet of things devices Accepted on 13th January 2018 E-First on 16th February 2018 doi: 10.1049/iet-sen.2017.0048 www.ietdl.org Rafael Raymundo Belleza1 , Edison Pignaton de Freitas1 1Institute of Informatics, Federal University of Rio Grande do Sul, Av. Bento Gonçalves, 9500, CP 15064, Porto Alegre CEP: 91501-970, Brazil E-mail: [email protected] Abstract: The development of constrained devices for the internet of things (IoT) presents lots of challenges to software developers who build applications on top of these devices. Many applications in this domain have severe non-functional requirements related to timing properties, which are important concerns that have to be handled. By using real-time operating systems (RTOSs), developers have greater productivity, as they provide native support for real-time properties handling. Some of the key points in the software development for IoT in these constrained devices, like task synchronisation and network communications, are already solved by this provided real-time support. However, different RTOSs offer different degrees of support to the different demanded real-time properties. Observing this aspect, this study presents a set of benchmark tests on the selected open source and proprietary RTOSs focused on the IoT. The benchmark results show that there is no clear winner, as each RTOS performs well at least on some criteria, but general conclusions can be drawn on the suitability of each of them according to their performance evaluation in the obtained results.
    [Show full text]
  • Security Target Pikeos Separation Kernel V4.2.2
    Security Target PikeOS Separation Kernel v4.2.2 Document ID Revision DOORS Baseline Date State 00101-8000-ST 20.6 N.A. 2018-10-10 App Author: Dominic Eschweiler SYSGO AG Am Pfaffenstein 14, D-55270 Klein-Winternheim Notice: The contents of this document are proprietary to SYSGO AG and shall not be disclosed, disseminated, copied, or used except for purposes expressly authorized in writing by SYSGO AG. Doc. ID: 00101-8000-ST Revision: 20.6 This page intentionally left blank Copyright 2018 Page 2 of 47 All rights reserved. SYSGO AG Doc. ID: 00101-8000-ST Revision: 20.6 This page intentionally left blank Copyright 2018 Page 3 of 47 All rights reserved. SYSGO AG Doc. ID: 00101-8000-ST Revision: 20.6 Table of Contents 1 Introduction .................................................................................................................... 6 1.1 Purpose of this Document ........................................................................................... 6 1.2 Document References ................................................................................................ 6 1.2.1 Applicable Documents......................................................................................... 6 1.2.2 Referenced Documents ....................................................................................... 6 1.3 Abbreviations and Acronyms ....................................................................................... 6 1.4 Terms and Definitions................................................................................................
    [Show full text]
  • Soft Tools for Robotics and Controls Implementations
    Soft Tools for Robotics and Controls Implementations A Thesis Submitted to the Faculty of Drexel University by Robert M. Sherbert in partial fulfillment of the requirements for the degree of Master of Science in Electrical Engineering June 2011 c Copyright 2011 Robert M. Sherbert. All rights reserved. ii Dedications To the parents who placed me on my path, to the mentors who guided me along its many turns, and to the friends who made the long journey swift. iii Acknowledgments There are a number of people to whom I owe a great deal of thanks in completing this document. While the labor has been my own, the inspiration for it and the support to finish it have come from the community around me. In creating this work I have taken on the role of toolsmith and, as tools are worthless without their users, it is to these individuals that I am especially indebted. I would like to thank Dr. Oh for lending his vision of robotics testing and prototyping which inspired this work. You have taught me more than I realized there was to know about the modern practice of science. I would also like to thank Dr. Chmielewski for lending his experience, insight, and enthusiasm to the project. Having these ideas weighed against and improved by your practical knowledge has provided a very important validation for me. Above all I would like to thank my friends at DASL, without whom the entirety of this project would have been consigned to the dust bin long ago. You have given me not only critical feedback and suggestions but also the support and encouragement that has helped me carry this to completion.
    [Show full text]
  • CSE I Sem Question Bank
    M.Tech (Computer Science and Engineering) R-15 MALLA REDDY COLLEGE OF ENGINEERING & TECHNOLOGY (Autonomous Institution – UGC, Govt. of India) Sponsored by CMR Educational Society (Affiliated to JNTU, Hyderabad, Approved by AICTE - Accredited by NBA & NAAC – ‘A’ Grade - ISO 9001:2008 Certified) Maisammaguda, Dhulapally (Post Via Hakimpet), Secunderabad – 500100, Telangana State, India. Contact Number: 040-23792146/64634237, E-Mail ID: [email protected], website: www.mrcet.ac.in MASTER OF TECHNOLOGY COMPUTER SCIENCE AND ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING ACADEMIC REGULATIONS COURSE STRUCTURE AND SYLLABUS (Batches admitted from the academic year 2016 - 2017) Note: The regulations hereunder are subject to amendments as may be made by the Academic Council of the College from time to time. Any or all such amendments will be effective from such date and to such batches of candidates (including those already pursuing the program) as may be decided by the Academic Council. Malla Reddy College of Engineering & Technology Page 0 M.Tech (Computer Science and Engineering) R-15 CONTENTS S.No Name of the Subject Page no 1 Advanced Data Structures and Algorithms 7 2 Course Coverage 9 3 Question Bank 10 4 Advanced Operating System 19 5 Course Coverage 20 6 Question Bank 21 7 Computer System Design 31 8 Course Coverage 33 9 Question Bank 34 10 Software Process And Project Management 39 11 Course Coverage 41 12 Question Bank 42 13 Natural Language Processing 49 14 Internet of Things 51 15 Machine Learning 52 16 Software Architecture
    [Show full text]
  • Firmware Pro Robotické Vozítko
    VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV AUTOMATIZACE A MĚŘICÍ TECHNIKY FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF CONTROL AND INSTRUMENTATION FIRMWARE PRO ROBOTICKÉ VOZÍTKO FIRMWARE FOR THE ROBOTIC VEHICLE DIPLOMOVÁ PRÁCE MASTER'S THESIS AUTOR PRÁCE Bc. LUKÁŠ OTAVA AUTHOR VEDOUCÍ PRÁCE Ing. PAVEL KUČERA, Ph.D. SUPERVISOR BRNO 2013 ABSTRAKT Tato práce je zaměřena na vytvoření firmware pro robotické vozítko, založené na ar- chitektuře ARM Cortex-M3, který využívá operační systém reálného času. Úvodní část obsahuje informace o dostupných operačních systémech reálného času pro malé vestavné systémy, popis architektury ARM Cortex-M3 a hardwarového řešení řídicího systému. Praktická část se zabývá výběrem a měřením zvolených operačních systémů reálného času. Výsledkem práce je firmware složený z programových modulů, které slouží kovlá- dání jednotlivých HW prvků. Je vytvořena také ukázková aplikace, která umožňuje na dálku ovládat pohyb robota a ukládat provozní data robota. KLÍČOVÁ SLOVA ARM, Cortex M3, LM3S8962, reálný čas, RTOS, FreeRTOS, CooCox, CoOS, uC/OSIII, absolutní časování, přepnutí kontextu, DC motor, akcelerometr, FreeRTOS+TRACE, synchronizace, regulátor, SLIP, diagnostika RTOS ABSTRACT This thesis is focused on a firmware for robotic vehicle based on the ARM Cortex- M3 architecture that is running a real-time operating system (RTOS). Theoretical part describes available solutions of embedded RTOS and concrete HW implementation of the robotic vehicle. There is also comparison of the three selected RTOS with their measurements. Result of this thesis is base firmware compounded by a program modules that controls HW parts. There is also a sample PC and firmware application that extends base firmware.
    [Show full text]
  • Us 2019 / 0319868 A1
    US 20190319868A1 ( 19) United States (12 ) Patent Application Publication ( 10) Pub . No. : US 2019 /0319868 A1 Svennebring et al. ( 43 ) Pub . Date : Oct. 17 , 2019 ( 54 ) LINK PERFORMANCE PREDICTION (52 ) U . S . CI. TECHNOLOGIES CPC .. .. H04L 43/ 0882 (2013 . 01 ); H04W 24 /08 ( 2013 . 01 ) (71 ) Applicant : Intel Corporation , Santa Clara , CA (57 ) ABSTRACT (US ) Various systems and methods for determining and commu nicating Link Performance Predictions (LPPs ), such as in ( 72 ) Inventors : Jonas Svennebring , Sollentuna (SE ) ; connection with management of radio communication links, Antony Vance Jeyaraj, Bengaluru ( IN ) are discussed herein . The LPPs are predictions of future network behaviors /metrics ( e . g . , bandwidth , latency , capac (21 ) Appl . No. : 16 /452 , 352 ity , coverage holes , etc . ) . The LPPs are communicated to applications and /or network infrastructure, which allows the applications/ infrastructure to make operational decisions for ( 22 ) Filed : Jun . 25 , 2019 improved signaling / link resource utilization . In embodi ments , the link performance analysis is divided into multiple layers that determine their own link performance metrics, Publication Classification which are then fused together to make an LPP. Each layer (51 ) Int . Cl. runs different algorithms, and provides respective results to H04L 12 / 26 ( 2006 .01 ) an LPP layer /engine that fuses the results together to obtain H04W 24 / 08 (2006 .01 ) the LPP . Other embodiments are described and / or claimed . 700 Spatio - Temporal History Data Tx1 : C1 TIDE _ 1, DE _ 2 . .. Txt : C2 T2 DE _ 1 , DE _ 2 , . .. win Txs : C3 122 T : DE _ 1, DE _ 2 , .. TN DE _ 1 , DE _ 2 .. TxN : CN CELL LOAD MODEL 710 Real- Time Data 744 704 Patent Application Publication Oct.
    [Show full text]
  • Embedded Operating Systems
    7 Embedded Operating Systems Claudio Scordino1, Errico Guidieri1, Bruno Morelli1, Andrea Marongiu2,3, Giuseppe Tagliavini3 and Paolo Gai1 1Evidence SRL, Italy 2Swiss Federal Institute of Technology in Zurich (ETHZ), Switzerland 3University of Bologna, Italy In this chapter, we will provide a description of existing open-source operating systems (OSs) which have been analyzed with the objective of providing a porting for the reference architecture described in Chapter 2. Among the various possibilities, the ERIKA Enterprise RTOS (Real-Time Operating System) and Linux with preemption patches have been selected. A description of the porting effort on the reference architecture has also been provided. 7.1 Introduction In the past, OSs for high-performance computing (HPC) were based on custom-tailored solutions to fully exploit all performance opportunities of supercomputers. Nowadays, instead, HPC systems are being moved away from in-house OSs to more generic OS solutions like Linux. Such a trend can be observed in the TOP500 list [1] that includes the 500 most powerful supercomputers in the world, in which Linux dominates the competition. In fact, in around 20 years, Linux has been capable of conquering all the TOP500 list from scratch (for the first time in November 2017). Each manufacturer, however, still implements specific changes to the Linux OS to better exploit specific computer hardware features. This is especially true in the case of computing nodes in which lightweight kernels are used to speed up the computation. 173 174 Embedded Operating Systems Figure 7.1 Number of Linux-based supercomputers in the TOP500 list. Linux is a full-featured OS, originally designed to be used in server or desktop environments.
    [Show full text]
  • Järjestelmä Multikopterin Lennonohjaustietokoneessa
    REAALIAIKAKÄYTTÖ- JÄRJESTELMÄ MULTIKOPTERIN LENNONOHJAUSTIETOKONEESSA Olli Paloniemi Opinnäytetyö Toukokuu 2015 Tietotekniikka Sulautetut järjestelmät ja elektroniikka TIIVISTELMÄ Tampereen ammattikorkeakoulu Tietotekniikka Sulautetut järjestelmät ja elektroniikka PALONIEMI, OLLI: Reaaliaikakäyttöjärjestelmä multikopterin lennonohjaustietokoneessa Opinnäytetyö 48 sivua, joista liitteitä 9 sivua Toukokuu 2015 Tämän opinnäytetyön tarkoituksena oli tarkastella multikopterin lennonohjaustietoko- neelle tehdyn laiteohjelmiston suunnitteluun liittyviä asioita. Laiteohjelmiston pohjana toimi avoimen lähdekoodin FreeRTOS-reaaliaikakäyttöjärjestelmä. Laiteohjelmiston testaus tapahtui tarkoitusta varten rakennetussa lennonohjaustietokoneessa, joka asen- nettiin neliroottoriseen multikopteriin. Työssä tutkittiin multikopterien ohjausmenetelmiä. Radio-ohjauselektroniikasta tuttua pulssinleveyden modulaatioon perustuvaa signaalia käytettiin yhdistämään lennonoh- jaustietokone multikopterin muihin komponentteihin. Lennonohjaustietokoneen anturei- ta ja radiovastaanottimelta tulevaa ohjausta hyödynnettiin PID-säätimissä, joiden on tarkoitus vakauttaa multikopterin lento. Antureiden mittaustulokset yhdistettiin anturi- fuusiolla käyttäen Complementary-suodinta. Säätimiä ja anturifuusiota käytettiin eri ohjaustiloissa, jotka määrittävät sen, miten multikopterin lennonohjausjärjestelmä toi- mii. Lennonohjausjärjestelmän toiminnan reaaliaikaisuus todettiin mittaamalla käyttö- järjestelmän suoritus- ja vasteajat. Opinnäytetyön avulla saatiin tietoa muun
    [Show full text]
  • Parallel Processing with the MPPA Manycore Processor
    Parallel Processing with the MPPA Manycore Processor Kalray MPPA® Massively Parallel Processor Array Benoît Dupont de Dinechin, CTO 14 Novembre 2018 Outline Presentation Manycore Processors Manycore Programming Symmetric Parallel Models Untimed Dataflow Models Kalray MPPA® Hardware Kalray MPPA® Software Model-Based Programming Deep Learning Inference Conclusions Page 2 ©2018 – Kalray SA All Rights Reserved KALRAY IN A NUTSHELL We design processors 4 ~80 people at the heart of new offices Grenoble, Sophia (France), intelligent systems Silicon Valley (Los Altos, USA), ~70 engineers Yokohama (Japan) A unique technology, Financial and industrial shareholders result of 10 years of development Pengpai Page 3 ©2018 – Kalray SA All Rights Reserved KALRAY: PIONEER OF MANYCORE PROCESSORS #1 Scalable Computing Power #2 Data processing in real time Completion of dozens #3 of critical tasks in parallel #4 Low power consumption #5 Programmable / Open system #6 Security & Safety Page 4 ©2018 – Kalray SA All Rights Reserved OUTSOURCED PRODUCTION (A FABLESS BUSINESS MODEL) PARTNERSHIP WITH THE WORLD LEADER IN PROCESSOR MANUFACTURING Sub-contracted production Signed framework agreement with GUC, subsidiary of TSMC (world top-3 in semiconductor manufacturing) Limited investment No expansion costs Production on the basis of purchase orders Page 5 ©2018 – Kalray SA All Rights Reserved INTELLIGENT DATA CENTER : KEY COMPETITIVE ADVANTAGES First “NVMe-oF all-in-one” certified solution * 8x more powerful than the latest products announced by our competitors**
    [Show full text]