Fakultät für informatik informatik 12 technische universität dortmund Universität Dortmund Embedded & Real- time Operating Systems Peter Marwedel TU Dortmund,

Slides:



Advertisements
Ähnliche Präsentationen
P. Marwedel Informatik 12, U. Dortmund
Advertisements

Embedded & Real-time Operating Systems
Fakultät für informatik informatik 12 technische universität dortmund Optimizations Peter Marwedel TU Dortmund Informatik 12 Germany 2009/01/17 Graphics:
fakultät für informatik informatik 12 technische universität dortmund Optimizations Peter Marwedel TU Dortmund Informatik 12 Germany 2009/01/10 Graphics:
Fakultät für informatik informatik 12 technische universität dortmund Mapping of Applications to Platforms Peter Marwedel TU Dortmund, Informatik 12 Germany.
Fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik 12 Graphics: © Alexandra Nolte,
Peter Marwedel TU Dortmund, Informatik 12
Fakultät für informatik informatik 12 technische universität dortmund Hardware/Software Partitioning Peter Marwedel Informatik 12 TU Dortmund Germany Chapter.
Can you think of some KEY phrases which would be useful in multiple contexts? Take 2 minutes with a partner and come up with as many as you can!
Laurie Clarcq The purpose of language, used in communication, is to create a picture in the mind and/or the heart of another.
Institut AIFB, Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Towards Automatic Composition of Processes based on Semantic.
BAS5SE | Fachhochschule Hagenberg | Daniel Khan | S SPR5 MVC Plugin Development SPR6P.
You need to use your mouse to see this presentation © Heidi Behrens.
Ein Projekt des Technischen Jugendfreizeit- und Bildungsvereins (tjfbv) e.V. kommunizieren.de Blended Learning for people with disabilities.
Universität StuttgartInstitut für Wasserbau, Lehrstuhl für Hydrologie und Geohydrologie Copulas (1) András Bárdossy IWS Universität Stuttgart.
How Does Fuzzy Arithmetic Work ? © Hartwig Jeschke Institut für Mikroelektronische Schaltungen und Systeme Universität Hannover
Coordinating Conjunctions Why we need them & how to use them deutschdrang.com.
Titelmasterformat durch Klicken bearbeiten Textmasterformate durch Klicken bearbeiten Zweite Ebene Dritte Ebene Vierte Ebene Fünfte Ebene 1 Titelmasterformat.
Institut für Angewandte Mikroelektronik und Datentechnik Phase 5 Architectural impact on ASIC and FPGA Nils Büscher Selected Topics in VLSI Design (Module.
Networking on local area knowledge of territory-continuous presence in community (family-centre – people centre – key locations)
Die Fragen Wörter Wer? Was? Wann?.
1 Bauhaus-Universität Weimar ArchitekturProgrammierung Generative Entwurfsmethoden Processing Grundlagen Professur Informatik in der Architektur.
Synchronization: Multiversion Concurrency Control
Institut für Angewandte Mikroelektronik und Datentechnik Course and contest Results of Phase 4 Nils Büscher Selected Topics in VLSI Design (Module 24513)
SiPass standalone.
Stephanie Müller, Rechtswissenschaftliches Institut, Universität Zürich, Rämistrasse 74/17, 8001 Zürich, Criminal liability.
Ralf M. Schnell Technical Evangelist Microsoft Deutschland GmbH
Ralf M. Schnell Technical Evangelist Microsoft Deutschland GmbH.
Literary Machines, zusammengestellt für ::COLLABOR:: von H. Mittendorfer Literary MACHINES 1980 bis 1987, by Theodor Holm NELSON ISBN
Akkusativ Präpositionen
FTS usage at GridKa Forschungszentrum Karlsruhe GmbH
Institut für Angewandte Mikroelektronik und Datentechnik Results of Phase 4: Layout for ST65 technology by Christoph Niemann Selected Topics.
Page  1 YOUR LOGO This text can be replaced with your text. POLAROIDCHART.
DEUTSCHE INITIATIVE FÜR NETZWERKINFORMATION E.V. Regine Tobias & Dr. Barbara Ebert CRIS in German universities and research institutions - position paper.
Physik multimedial Lehr- und Lernmodule für das Studium der Physik als Nebenfach Julika Mimkes: Links to e-learning content for.
GERMAN WORD ORDER ORDER s. Sentences are made up by placing a variety of words in a specific order. If the order is wrong, the sentence is difficult to.
The Journey to America… The Immigrant Experience.
COMMANDS imperative 1. you (formal): Sie 2. you (familiar plural): ihr
Fakultät für informatik informatik 12 technische universität dortmund Lab 2: Heterogeneous System Modeling in Ptolemy - Session 6 - Peter Marwedel Heiko.
1 Konica Minolta IT Solutions Prinzip Partnerschaft MANAGED MONITORING ÜBERWACHJUNG DER SERVERINFRASTRUKTUR UND ANWENDUNGEN DIREKT AUS DER CLOUD.
Why Should You Choose ELeaP Learning Management System?
Gregor Graf Oracle Portal (Part of the Oracle Application Server 9i) Gregor Graf (2001,2002)
© Crown copyright 2011, Department for Education These materials have been designed to be reproduced for internal circulation, research and teaching or.
EUROPÄISCHE GEMEINSCHAFT Europäischer Sozialfonds EUROPÄISCHE GEMEINSCHAFT Europäischer Fonds für Regionale Entwicklung Workpackage 5 – guidelines Tasks.
Berliner Elektronenspeicherring-Gesellschaft für Synchrotronstrahlung m.b.H., Albert-Einstein-Straße 15, Berlin frontend control at BESSY R. Fleischhauer.
Kapitel 2 Grammar INDEX 1.Subjects & Verbs 2.Conjugation of Verbs 3.Subject Verb Agreement 4.Person and Number 5.Present Tense 6.Word Order: Position of.
EUROPÄISCHE GEMEINSCHAFT Europäischer Sozialfonds EUROPÄISCHE GEMEINSCHAFT Europäischer Fonds für Regionale Entwicklung Workpackage 5 – guidelines Tasks.
Die toten hosen German punk rock band since thirty years With many well known hits.
Essay structure Example: Die fetten Jahre sind vorbei: Was passiert auf der Almhütte? Welche Bedeutung hat sie für jede der vier Personen? Intro: One or.
Monitoring System in the federal state of Saxony-Anhalt, Germany Meeting on monitoring systems , May 2012, Prague Christine Makiol,
Sentence Structure Questions
Freizeit Thema 5 Kapitel 1 (1)
Azure Countdown Wenn der Freund und Helfer Freunde und Helfer braucht: Sichere Content-Upload-Plattform für Bürger.
Sentence Structure Connectives
Englisch Grundlagen, Modal Verbs
The dynamic ultrasound
Jetzt machen Venues aufmachen!!! Geh zu
Synonyms are two or more words belonging to the same part of speech and possessing one or more identical or nearly identical denotational meanings, interchangeable.
Get your Project started
THE PERFECT TENSE IN GERMAN
Collaborative Webmeeting November 24th, 2010 Geneve / Darmstadt
„Förderwolke“ A Cloud-based exchange platform for the qualitative enhancement and improvement of inclusive education Dipl. Reha-Päd. Hanna Linke scientific.
ELECTR IC CARS Karim Aly University of Applied Sciences.
Official Statistics Web Cartography in Germany − Regional Statistics, Federal and European Elections, Future Activities − Joint Working Party meeting.
CSL211 Computer Architecture
Niedersächsisches Ministerium
- moodle – a internet based learning platform
Zhunussova G., AA 81. Linguistic communication, i.e. the use of language, is characteristically vocal and verbal behaviour, involving the use of discrete.
 Präsentation transkript:

fakultät für informatik informatik 12 technische universität dortmund Universität Dortmund Embedded & Real- time Operating Systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2008/11/24

- 2 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Structure of this course New clustering 2: Specifications 3: Embedded System HW 4: Standard Software, Real- Time Operating Systems 5: Scheduling, HW/SW-Partitioning, Applications to MP- Mapping 6: Evaluation 8: Testing 7: Optimization of Embedded Systems Application Knowledge Book chapter 4.3

- 3 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Reuse of standard software components Knowledge from previous designs to be made available in the form of intellectual property (IP, for SW & HW).  Operating systems  ….

- 4 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Embedded operating systems - Requirement: Configurability - Configurability No single RTOS will fit all needs, no overhead for unused functions tolerated  configurability needed.  simplest form: remove unused functions (by linker ?).  Conditional compilation (using #if and #ifdef commands).  Dynamic data might be replaced by static data.  Advanced compile-time evaluation useful.  Object-orientation could lead to a derivation subclasses. Verification a potential problem of systems with a large number of derived OSs:  Each derived OS must be tested thoroughly;  potential problem for eCos (open source RTOS from Red Hat), including 100 to 200 configuration points [Takada, 01].

- 5 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Example: Configuration of VxWorks © Windriver

- 6 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Embedded operating systems -Requirement: Disc and network handled by tasks-  Disc & network handled by tasks instead of integrated drivers. Relatively slow discs & networks can be handled by tasks.  Many ES without disc, a keyboard, a screen or a mouse.  Effectively no device that needs to be supported by all versions of the OS, except maybe the system timer. Embedded OSStandard OS kernel

- 7 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Example: WindRiver Platform Industrial Automation © Windriver

- 8 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Embedded operating systems - Requirement: Protection is optional- Protection mechanisms not always necessary: ES typically designed for a single purpose, untested programs rarely loaded, SW considered reliable. (However, protection mechanisms may be needed for safety and security reasons). Privileged I/O instructions not necessary and tasks can do their own I/O. Example: Let switch be the address of some switch Simply use load register,switch instead of OS call. Privileged I/O instructions not necessary and tasks can do their own I/O. Example: Let switch be the address of some switch Simply use load register,switch instead of OS call.

- 9 - technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Embedded operating systems - Requirement: Interrupts not restricted to OS - Interrupts can be employed by any process For standard OS: serious source of unreliability. Since  embedded programs can be considered to be tested,  since protection is not necessary and  since efficient control over a variety of devices is required,  it is possible to let interrupts directly start or stop tasks (by storing the tasks start address in the interrupt table).  More efficient than going through OS services.  Reduced composability: if a task is connected to an interrupt, it may be difficult to add another task which also needs to be started by an event.

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Embedded operating systems - Requirement: Real-time capability- Many embedded systems are real-time (RT) systems and, hence, the OS used in these systems must be real-time operating systems (RTOSes).

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Real-time operating systems - Real-time OS (1) - Def.: (A) real-time operating system is an operating system that supports the construction of real-time systems The following are the three key requirements 1.The timing behavior of the OS must be predictable.  services of the OS: Upper bound on the execution time! RTOSs must be deterministic:  unlike standard Java,  short times during which interrupts are disabled,  contiguous files to avoid unpredictable head movements. [Takada, 2001]

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Real-time operating systems - Real-time OS (2) - 2.OS must manage the timing and scheduling  OS possibly has to be aware of task deadlines; (unless scheduling is done off-line).  OS must provide precise time services with high resolution. [Takada, 2001]

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Time services Time plays a central role in “real-time” systems. Actual time is described by real numbers. Two discrete standards are used in real-time equipment:  International atomic time TAI (french: temps atomic internationale) Free of any artificial artifacts.  Universal Time Coordinated (UTC) UTC is defined by astronomical standards UTC and TAI identical on Jan. 1st, seconds had to be added since then. Not without problems: New Year may start twice per night.

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Internal synchronization Synchronization with one master clock  Typically used in startup-phases Distributed synchronization: 1.Collect information from neighbors 2.Compute correction value 3.Set correction value. Precision of step 1 depends on how information is collected: Application level: ~500 µs to 5 ms Operation system kernel: 10 µs to 100 µs Communication hardware: < 10 µs

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Byzantine Error Erroneous local clocks can have an impact on the computed local time. Advanced algorithms are fault-tolerant with respect to Byzantine errors. Excluding k erroneous clocks is possible with 3k+1 clocks (largest and smallest values will be excluded. Many publications in this area. t k=1

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund External synchronization External synchronization guarantees consistency with actual physical time. Recent trend is to use GPS for ext. synchronization GPS offers TAI and UTC time information. Resolution is about 100 ns. © Dell GPS mouse

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Problems with external synchronization Problematic from the perspective of fault tolerance: Erroneous values are copied to all stations. Consequence: Accepting only small changes to local time. Many time formats too restricted; e.g.: NTP protocol includes only years up to 2036 For time services and global synchronization of clocks synchronization see Kopetz, 1997.

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Real-time operating systems - Real-time OS (3) - 3.The OS must be fast Practically important. [Takada, 2001]

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund RTOS-Kernels Distinction between  real-time kernels and modified kernels of standard OSes. Distinction between  general RTOSes and RTOSes for specific domains,  standard APIs (e.g. POSIX RT-Extension of Unix, ITRON, OSEK) or proprietary APIs. Distinction between  general RTOSes and RTOSes for specific domains,  standard APIs (e.g. POSIX RT-Extension of Unix, ITRON, OSEK) or proprietary APIs.

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Functionality of RTOS-Kernels Includes  processor management,  memory management,  and timer management;  task management (resume, wait etc),  inter-task communication and synchronization. resource management

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Classes of RTOSes according to R. Gupta 1. Fast proprietary kernels Fast proprietary kernels For complex systems, these kernels are inadequate, because they are designed to be fast, rather than to be predictable in every respect [R. Gupta, UCI/UCSD] Examples include QNX, PDOS, VCOS, VTRX32, VxWORKS.

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Classes of RTOSes according to R. Gupta 2. Real-time extensions to standard OSs Real-time extensions to standard OSes: Attempt to exploit comfortable main stream OSes. RT-kernel running all RT-tasks. Standard-OS executed as one task. + Crash of standard-OS does not affect RT-tasks; - RT-tasks cannot use Standard-OS services; less comfortable than expected + Crash of standard-OS does not affect RT-tasks; - RT-tasks cannot use Standard-OS services; less comfortable than expected

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Example: RT-Linux RT-tasks cannot use standard OS calls. Commercially available from fsmlabs ( Hardware RT-Task RT-Linux RT-Scheduler Linux-Kernel driver scheduler Init BashMozilla interrupts I/O

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Example: Posix 1.b RT-extensions to Linux Standard scheduler can be replaced by POSIX scheduler implementing priorities for RT tasks Hardware Linux-Kernel driver POSIX 1.b scheduler Init BashMozilla I/O, interrupts RT-Task Special RT-calls and standard OS calls available. Easy programming, no guarantee for meeting deadline Special RT-calls and standard OS calls available. Easy programming, no guarantee for meeting deadline

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Evaluation (Gupta) According to Gupta, trying to use a version of a standard OS: not the correct approach because too many basic and inappropriate underlying assumptions still exist such as optimizing for the average case (rather than the worst case),... ignoring most if not all semantic information, and independent CPU scheduling and resource allocation. Dependences between tasks not frequent for most applications of std. OSs & therefore frequently ignored. Situation different for ES since dependences between tasks are quite common.

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Classes of RTOSes according to R. Gupta 3. Research systems trying to avoid limitations Research systems trying to avoid limitations. Include MARS, Spring, MARUTI, Arts, Hartos, DARK, and Melody Research issues [Takada, 2001]:  low overhead memory protection,  temporal protection of computing resources  RTOSes for on-chip multiprocessors  support for continuous media  quality of service (QoS) control. Competition between  traditional vendors (e.g. Wind River Systems) and  Embedded Windows XP and Windows CE Market

technische universität dortmund fakultät für informatik  p. marwedel, informatik 12, 2008 TU Dortmund Summary  General requirements for embedded operating systems Configurability, I/O, interrupts  General properties of real-time operating systems Predictability Time services, synchronization Classes of RTOSs, device driver embedding