Automatisierungstechnik I Mini-Betriebssystem Theorie
|
|
- Christel Huber
- vor 7 Jahren
- Abrufe
Transkript
1 Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. M. Weyrich Automatisierungstechnik I Sommersemester 2015 Farzan Yazdi, M.Sc. at1@ias.uni-stuttgart.de Zerlegung des Mini-Echtzeit-Betriebssystemprogramms Teilprogramm ZEIT zur Bildung der unterschiedlichen Zykluszeiten Teilprogramm TASK zur Verwaltung der Rechenprozesse Teilprogramm PROZESSOR Zuteilung des Betriebsmittels Prozessor Start der Rechenprozesse MINI-ECHT BETRIEBSSYSTEM Ebene 1 IAS, Universität Stuttgart 2 1
2 Zusammenwirken der Teilprogramme MINI-ECHTBETRIEBSSYSTEM UHR- IMPULS- TAKT TASK- Start eines Rechenprozesses Ende eines Rechenprozesses Symbolik Anstoß (Kontrollfluss) Datenübergabe (Datenfluss) Programm bzw. Programmteil Liste von Daten bzw. einzelner Wert (Date) IAS, Universität Stuttgart 3 Benötigte Listen für die ZEIT (1) Zeitdauervariable Z i zur Zykluszeit-Bildung Liste ZEITZÄHLER Ablage der Zeitdauervariablen z i : z 1 z 2 m Plätze z 3 Liste von Variablen z m IAS, Universität Stuttgart 4 2
3 Benötigte Listen für die ZEIT (2) Zykluszeit T i für jeden Rechenprozess Liste ZYKLUS Bereitstellen der Zykluszeit-Faktoren a i : a 1 a 2 m Plätze a 3 a m = T i /T Liste von Konstanten IAS, Universität Stuttgart 5 Blockdiagramm des Teilprogramms ZEIT UHRIMPULS- TAKT ZEIT Anstoß TASK ZYKLUS ZÄHLER IAS, Universität Stuttgart 6 3
4 Benötigte Liste für TASK und PROZESSOR Zustände und Anfangsadressen der Rechenprozesse SBLOCK Listenstruktur zur Verwaltung der Rechenprozesse SBLOCK m Plätze B 1 B 2 B 3 B 4 Startadresse 1 Startadresse 2 Startadresse 3 Startadresse 4 B m Startadresse m Zustandsbits B i B i = 0: bereit B i = 1: ruhend Anfangsadresse des dem Rechenprozess i zugeordneten Codes (i = 1, 2,..., m) IAS, Universität Stuttgart 7 Zerlegung des Programmteils TASK TASK- Ebene 2 AKTIVIERUNG DEAKTIVIE- RUNG Ebene 3 IAS, Universität Stuttgart 8 4
5 Blockdiagramm der TASK von/zur ZEITVER- WALTUNG AKTIVIERUNG zur S- BLOCK Auslesen der Startadresse durch die DEAKTIVIERUNG Ende des betreffenden Rechenprozesses von der IAS, Universität Stuttgart 9 Teilprogramme AKTIVIERUNG: DEAKTIVIERUNG: Verändern des Zustandsbits in bereit Verändern des Zustandsbits in ruhend B = 0 B = 1 : Überprüfung, ob sich eine Task im Zustand bereit befindet Ordnung der Liste SBLOCK ermöglicht einfache Priorisierung Untergliederung PROZESSOR ist nicht notwendig IAS, Universität Stuttgart 10 5
6 Übersichtsblockdiagramm des Mini-Echtzeit-Betriebssystems UHR- IMPULS- TAKT ZYKLUS ZEIT ZÄHLER AKTIVIERUNG S- BLOCK DEAKTIVIE- RUNG PROZESSOR Rechenprozesscode ZEIT TASK IAS, Universität Stuttgart 11 Feinentwurf in Form von Flussdiagrammen ZEIT UHR- IMPULS- TAKT ZEIT l = 1 ZEITZÄHLER(I) = ZEITZÄHLER(I) -1 ZÄHLER(I) = 0? nein I = M? nein l = I + 1 ja ja Suchen ZEITZÄHLER(I) = ZYKLUS(I) AKTIVIERUNG(I) IAS, 2015, Universität IAS Universität Stuttgart Stuttgart 12 6
7 Flussdiagramme der Programme TASK AKTIVIERUNG AKTIVIERUNG(I) Adressteil von VERWAL- TUNGSBLOCK (I) = 0? nein ZUSTANDSBIT(I) IN S BLOCK(I) = 0 setzen ja FEHLER- MELDUNG Abfrage, ob Rechenprozess überhaupt vorhanden = bereit Rücksprung IAS, Universität Stuttgart 13 DEAKTIVIERUNG I = 1 DEAKTIVIERUNG(I) ZUSTANDS- BIT(I) von VERWAL- TUNGSBLOCK(I) = 0? nein ja ZUSTANDSBIT(I) in S- BLOCK(I) = 1 setzen I = M? ja nein = ruhend I = I + 1 PROZESSORVER- WALTUNG(I) IAS, Universität Stuttgart 14 7
8 Flussdiagramm der PROZESSOR PROZESSORVER- WALTUNG (I) Rechenprozess über Startadresse in S- BLOCK (I) starten, d.h. als Unterprogramm aufrufen DEAKTIVIERUNG (I) IAS, Universität Stuttgart 15 Erste Erweiterung des Systementwurfs Zulassen längerer Rechenzeiten für die Rechenprozesse Beim Eintreffen eines Uhrimpuls-Taktes muss u.u. ein noch laufender Rechenprozess mit längerer Ausführungsdauer und niedrigerer Priorität unterbrochen werden, um einen Rechenprozess höherer Priorität zu starten Programm zur Unterbrechungsverwaltung IAS, Universität Stuttgart 16 8
9 Teilprogramm UNTERBRECHUNGS Aufgabe des Verwaltungsprogramms Rettung der Register des Prozessors eines gerade laufenden Rechenprozesses Programmzähler Akkumulator Zustandsregister Arbeitsregister IAS, Universität Stuttgart 17 Erweitertes Hierarchiediagramm nach dem Zulassen längerer Rechenzeiten der Rechenprozesse MINI-ECHTBETRIEBSSYSTEM (Erweiterung 1) UNTER- BRECHUNGS- TASK- IAS, Universität Stuttgart 18 9
10 Erweiterung der Liste SBLOCK Rechenprozess 1 B 1 Anfangsadresse 1 Startadresse (Programmzählerinhalt) Registerinhalt 1 Registerinhalt 2 Startadresse nach einer Unterbrechung Register- Speicherplätze Rechenprozess 2 B 2 Registerinhalt k Anfangsadresse 2 Startadresse (Programmzählerinhalt) Registerinhalt 1 Registerinhalt 2 Registerinhalt k Rechenprozess m B m Anfangsadresse m Startadresse (Programmzählerinhalt) Registerinhalt 1 Registerinhalt 2 Registerinhalt k IAS, Universität Stuttgart 19 Erweiterung des Teilprogramms PROZESSOR vor dem Start eines ablaufbereiten Rechenprozesses laden der Register mit den Inhalten der Liste SBLOCK Erweiterung des Teilprogramms DEAKTIVIERUNG nach Beendigung eines Rechenprozesses laden seiner Anfangsadresse in die Zelle STARTADRESSE und Initialisieren der Registerinhalte im SBLOCK IAS, Universität Stuttgart 20 10
11 Übersichtsdiagramm des Mini-Echtzeit-Betriebssystems Erste Erweiterung: Zulassen längerer Rechenzeiten für die Rechenprozesse ZEIT AKTI- VIERUNG UHRIMPULS- INTERRUPT VERWAL- TUNGS- BLOCK Rechenprozesscode ZYKLUS ZÄHLER DEAKTI- VIERUNG UNTER- BRECHUNGS- TASK- IAS, Universität Stuttgart 21 Zweite Erweiterung des Software-Systementwurfs Vorsehen der Möglichkeit von Alarm-Interrupts bis zu k Rechenprozesse, deren Aktivierung von zeitlich nicht vorhersehbaren Alarm-Interrupts ausgelöst wird Erweiterung der UNTERBRECHUNGS Registerrettung bei Uhrimpuls-Interrupts Anstoß der ZEIT bei Alarm-Interrupts Aufruf der AKTIVIERUNG, um dem Alarm-Interrupt zugeordnetes Antwortprogramm in den Zustand bereit zu setzen Anstoß der IAS, Universität Stuttgart 22 11
12 Übersichtsdiagramm für das Mini-Betriebssystem Zweite Erweiterung: Vorsehen der Möglichkeit von Alarm-Interrupts UHRIMPULS- INTERRUPT ZEIT AKTI- VIERUNG externe Interrupts INTERRUPT1 INTERRUPT2 INTERRUPT K ZYKLUS ZÄHLER VERWAL- TUNGS- BLOCK DEAKTI- VIERUNG Rechenprozesscode UNTER- BRECHUNGS- TASK- IAS, Universität Stuttgart 23 Dritte Erweiterung des Software-Systementwurfs Betriebsmittelverwaltung für Ein-/Ausgabegeräte E/A-Operationen sind langsamer Analog-Digital-Umsetzer ca. 20 ms Einführung eines Teilprogramms E/A- Aufgabe: Organisation von langsamen Ein-/Ausgabeoperationen Rechenprozess wird angehalten Prozessor kann andere Rechenprozesse bearbeiten Beendigung der E/A-Operationen ermöglicht Fortsetzung des zugehörigen Rechenprozesses IAS, Universität Stuttgart 24 12
13 Hierarchiediagramm des Mini-Betriebssystems MINI-ECHT BETRIEBSSYSTEM (Erweiterung 3) E/A- UNTER- BRECHUNGS- TASK- IAS, Universität Stuttgart 25 Aufhebung der Vereinfachungen Die Betriebssystemprogramme selbst sind nicht unterbrechbar Die Mehrfachbeauftragung eines Rechenprozesses, d.h. erneute Beauftragung vor der Beendigung, ist ausgeschlossen Eine gegenseitige Beauftragung von Rechenprozessen ist nicht möglich Eine Synchronisierung der Rechenprozesse, z.b. mittels Semaphoroperationen, ist nicht möglich Keine Datenkommunikation zwischen den Rechenprozessen, d.h. kein Austausch von Daten, keine gemeinsame Benutzung von Daten Keine dynamische Änderung der Prioritäten der Rechenprozesse während der Programmdurchführung Rechenprozesse befinden sich im Arbeitsspeicher, Hintergrundspeicher sind nicht vorhanden IAS, Universität Stuttgart 26 13
5 Echtzeit-Betriebssysteme
5 Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems
Mehr5 Echtzeit-Betriebssysteme
5 Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 13.11.2013 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrEinführung. Anwendung. logischer Adreßraum. Kontrollfluß (Thread) = CPU führt Instruktionen aus. Was charakterisiert einen Kontrollfluß?
Kontrollflüsse Einführung 1 Motivation Kontrollfluß Anwendung logischer Adreßraum Kontrollfluß (Thread) = führt Instruktionen aus Was charakterisiert einen Kontrollfluß? Programmzähler Registerinhalte
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard
Systeme I: Betriebssysteme Kapitel 4 Prozesse Wolfram Burgard Version 18.11.2015 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrUniversität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner. Übung 5: Semaphoren
Universität Stuttgart Prof. Dr.-Ing. Dr. h. c. P. Göhner Aufgabe 5.1: Übung 5: Semaphoren Semaphor-Operationen In Bild 5.1.1 ist die Anordnung von Semaphor-Operationen am Anfang und am e der asks A,B,C
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 21.11.2012 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern! 2 Testat nach Weihnachten Mittwoch
MehrKonzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung
Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung Sommersemester 2005 Uni Erlangen Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebsysteme Tarek Gasmi Tarek.Gasmi@informatik.stud.uni-erlangen.de
MehrBetriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis
Einführung Einführung in in Betriebssysteme Betriebssysteme und und Theorie und Praxis Theorie und Praxis Oktober 2006 Oktober 2006 Prof. Dr. G. Hellberg Prof. Dr. G. Hellberg Email: hellberg@drhellberg.de
Mehr5 Kernaufgaben eines Betriebssystems (BS)
5 Kernaufgaben eines Betriebssystems (BS) Betriebssystem ist eine Menge von Programmen, die die Abarbeitung anderer Programme auf einem Rechner steuern und überwachen, insbesondere verwaltet es die Hardware-Ressourcen
MehrKompetenzfeld Software- und Automatisierungstechnik
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Kompetenzfeld Software- und Automatisierungstechnik Prof. Dr.-Ing. Michael Weyrich 27.04.2016 1
Mehr6 Echtzeit-Betriebssysteme
Kapitel 6: Echtzeit-Betriebssysteme 6 Echtzeit-Betriebssysteme Lernziele: Wissen, was ein Betriebssystem ist Erklären können, was man unter Betriebsmitteln versteht Die Aufgaben eines Echtzeit-Betriebssystems
MehrTeil 6: PIC Studiengang Technische Informatik (TI) Prof. Dr.-Ing. Alfred Rożek. nur für Lehrzwecke Vervielfältigung nicht gestattet
-Berlin Teil 6: PIC 8259 Studiengang Technische Informatik (TI) Prof Dr-Ing Alfred Rożek nur für Lehrzwecke Vervielfältigung nicht gestattet EMC45: Interrupt 4112002 Folie: 1 Prof Dr-Ing Alfred Rozek Berlin
MehrAufbau eines Echtzeit-Betriebssystems für Embedded Systems
Aufbau eines Echtzeit-Betriebssystems für Embedded Systems I. Begriffsdefinition II. Anforderungen III. Struktur und Komponenten Dr.-Ing. Ludwig Eckert, Seite 1 I. Begriffsdefinition: Embedded System Bsp.:
MehrGrundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1
Vorlesung 7 Fundamentals of Software Engineering 1 Inhaltsverzeichnis 1. Einführung 2. Allgemeine Modellbildung. Strukturierte Analyse 4. Strukturierter Entwurf (SE) 5. Benutzersschnittstellen 6. Softwaretest
MehrÜbung I Echtzeitbetriebssysteme
Übung I Echtzeitbetriebssysteme a) Von welchen drei Faktoren hängt bei der Echtzeitverarbeitung das korrekte Ergebnis ab? b) Wann ist ein System echtzeitfähig? c) Was versteht man unter Harter und Weicher
MehrVon-Neumann-Architektur
Von-Neumann-Architektur Bisher wichtig: Konstruktionsprinzip des Rechenwerkes und Leitwerkes. Neu: Größerer Arbeitsspeicher Ein- und Ausgabewerk (Peripherie) Rechenwerk (ALU) Steuerwerk (CU) Speicher...ppppp...dddddd..
MehrTeil 3: Konzepte von Betriebssystemen
Teil 3: Konzepte von Betriebssystemen Inhalt: Einführung Prozesse Speicherverwaltung Virtueller Speicher 1 Definition eines Betriebssystems Was ist ein Betriebssystem? einfache Definition: Als Betriebssystem
MehrI Einführung in Betriebssysteme
I Einführung in Betriebssysteme I.1 1 Einordnung Ebene 6 Ebene 5 Ebene 4 Problemorientierte Sprache Assemblersprache Betriebssystem Ebene 3 ISA (Instruction Set Architecture) Ebene 2 Ebene 1 Ebene 0 Mikroarchitektur
MehrRechnernutzung in der Physik. Betriebssysteme
Rechnernutzung in der Physik Betriebssysteme 1 Betriebssysteme Anwendungsprogramme Betriebssystem Treiber BIOS Direkter Zugriff von Anwenderprogrammen auf Hardware nur in Ausnahmefällen sinnvoll / möglich:
MehrBetriebssysteme. FU Berlin SS 2003 Klaus-Peter Löhr
Betriebssysteme FU Berlin SS 2003 Klaus-Peter Löhr 1 Einführung Zur Erinnerung: Informatische Fachbegriffe in Deutsch und Englisch findet man unter http://www.babylonia.org.uk Software zwischen Hardware
MehrG Einführung in Betriebssysteme
Einführung in Betriebssysteme 1997-2003, Franz J. Hauck, Verteilte Systeme, Univ. Ulm [2003s-TI1--OS.fm, 2003-06-23 16.28] 1 1 Einordnung Ebene 6 Problemorientierte Sprache Ebene 5 Assemblersprache Ebene
MehrBetriebssysteme Kapitel E : Prozesse
Betriebssysteme Kapitel E : Prozesse 1 Inhalt Prozesse Zustand eines Prozesses» Kontext» Kontextswitch Prozessbeschreibungsblock PCB Zustandsübergänge» Zustandsdiagramm 2 Hinweis Ein Programm(code) kann
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2 Befehlsschnittstelle 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen
MehrEingebettete Systeme
Institut für Informatik Lehrstuhl für Eingebettete Systeme Prof. Dr. Uwe Brinkschulte Benjamin Betting 1. Aufgabe (DMA) Eingebettete Systeme 4. Übungsblatt Lösungsvorschlag a) Eigenschaften für die Datenübertragung
MehrMikrocomputertechnik. 6. Exceptionhandling ( Ausnahmebearbeitung)
6. Exceptionhandling ( Ausnahmebearbeitung) Exception: Exception ist eine besondere Situation, auf die der Prozessor mit einem speziellen Programm (Exceptionroutine) reagieren muss. Das gerade ablaufende
MehrKonzepte von Betriebssystem-Komponenten. Ausnahme- / Unterbrechungsbehandlung
Konzepte von Betriebssystem-Komponenten Sommersemester 2005 Uni Erlangen Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebsysteme Tarek Gasmi Tarek.Gasmi@informatik.stud.uni-erlangen.de Tarek Gasmi
MehrDas Smartphone als intelligentes Diagnosegerät
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Das Smartphone als intelligentes Diagnosegerät 40 Jahre wissenschaftliche Zusammenarbeit Donezk,
MehrMultiprozessoren. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011
Multiprozessoren Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Multiprozessoren 1/29 2011-06-16 Multiprozessoren Leistungsfähigkeit
MehrSysteme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Wolfram Burgard
Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Wolfram Burgard 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten
MehrÜberlegungen beim Entwurf eines Betriebssystems
Überlegungen beim Entwurf eines Betriebssystems Schnelligkeit Schutz und Sicherheit Korrektheit Wartbarkeit Kommerzielle Faktoren Standards und offene Systeme Schnelligkeit Es ist schwierig, Kenngrößen
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 20.11.2013 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern! 2 Wdhlg.: Attributinformationen in
MehrNICHT-ECHTZEIT-DATENVERARBEITUNG:
Prozessautomatisierung I 4 Echtzeit-Programmierung 2 4.1 Problemstellung Was heißt Echtzeit-Programmierung? Kommerzielle Datenverarbeitung Richtigkeit des des Ergebnisses Echtzeit-Datenverarbeitung Richtigkeit
MehrB1 Stapelspeicher (stack)
B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen
Mehr5 Speicherverwaltung. bs-5.1 1
5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus
Mehr5.5.5 Der Speicherverwalter
5.5.5 Der Speicherverwalter Speicherverwalter (memory manager) reagiert auf = im einfachsten Fall ein Systemprozess, der für die Umlagerung der Seiten (page swapping) zuständig ist (analog zum Umlagerer/Swapper)
MehrLeichtgewichtsprozesse
Leichtgewichtsprozesse häufiger Prozeßwechsel stellt in einem Betriebssystem eine hohe Belastung dar; auch erfordert die Generierung eines neuen Prozesses viele System-Resourcen in vielen Anwendungen werden
MehrLeichtgewichtsprozesse
Leichtgewichtsprozesse häufiger Prozeßwechsel stellt in einem Betriebssystem eine hohe Belastung dar; auch erfordert die Generierung eines neuen Prozesses viele System-Resourcen in vielen Anwendungen werden
MehrSpezialisierungsfach Automatisierung und Kommunikation
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Spezialisierungsfach Automatisierung und Kommunikation Prof. Dr. Ing. Michael Weyrich 16.10.2017
MehrBetriebssysteme. FU Berlin WS 2004/05 Klaus-Peter Löhr. bs-1.1 1
Betriebssysteme FU Berlin WS 2004/05 Klaus-Peter Löhr bs-1.1 1 1 Einführung Zur Erinnerung: Informatische Fachbegriffe in Deutsch und Englisch findet man unter http://www.babylonia.org.uk bs-1.1 2 Software
MehrEchtzeitbetriebssysteme
Speicherverwaltung (Memory Management) Aufgaben der Memory-Management-Unit ist l der Speicherschutz und l die Adressumsetzung Wird durch Hardware unterstützt l Memory Management Unit (MMU) l MMU wird vom
MehrRTOS Einführung. Version: Datum: Autor: Werner Dichler
RTOS Einführung Version: 0.0.1 Datum: 20.07.2013 Autor: Werner Dichler Inhalt Inhalt... 2 RTOS... 3 Definition... 3 Anforderungen... 3 Aufgaben... 3 Eigenschaften... 4 Einteilung der Betriebssysteme...
MehrProzesse vs. Threads
Prozesse vs. Threads Verwaltungsaufwand von Threads ist deutlich geringer Effizienzvorteil: bei einem Wechsel von Threads im gleichen Prozessraum ist kein vollständiger Austausch des Prozesskontextes notwendig.
MehrÜbungen zur Vorlesung
Prof. Dr.-Ing. R. Seck V-Echtzeit-Übungen- Se -07.01.2008 - Version 1.0 - Seite 1 Übungen zur Vorlesung Allgemeine Fragen 1. Was ist der Unterschied zwischen einem Programm und einem Rechenprozeß? 2. Erklären
Mehreinfache PIC-Übungsprogramme
einfache PIC-Übungsprogramme Schreibe in MPLAB für das PIC-Übungsboard 01 mit dem PIC16F88 folgendes Programm, assembliere und dokumentiere dieses, schreibe es anschließend mittels dem Programmiergerät
MehrVorbereitung zur Prüfung Echtzeitbetriebssysteme
Vorbereitung zur Prüfung Echtzeitbetriebssysteme Zugelassene Hilfsmittel: Taschenrechner Bitte verwenden Sie keinen roten Farbstift! 1. Echtzeitbetriebssysteme - Allgemein (15 Punkte) 1.1. Warum setzen
MehrÜbungscomputer mit Prozessor 8085 - Bedienungsanleitung
Seite 1 von 9 Pinbelegung der Steckerleisten im Übungsgerät Seite 2 von 9 Inbetriebnahme: Schalter S1, S2, und S3 in Stellung 1 (oben) schalten. Spannung 5 V anlegen. ACHTUNG auf Polarität achten. Taste
MehrBetriebssysteme 1. Thomas Kolarz. Folie 1
Folie 1 Betriebssysteme I - Inhalt 0. Einführung, Geschichte und Überblick 1. Prozesse und Threads (die AbstrakFon der CPU) 2. Speicherverwaltung (die AbstrakFon des Arbeitsspeichers) 3. Dateisysteme (die
Mehr5 Echtzeit-Programmierung
Kapitel 5: Echtzeitprogrammierung 5 Echtzeit-Programmierung Lernziele: Wissen, was man unter Echtzeit-Programmierung versteht Die Forderungen bei der Echtzeit-Programmierung kennen Zwischen harter und
Mehr3.2 Prozessumschaltung
3.2 Prozessumschaltung (dispatching) deaktiviert einen Prozess und aktiviert einen anderen. Wann? aktiver Prozess wird vom Prozessor verdrängt zugunsten eines bereiten Prozesses aktiver Prozess blockiert,
MehrKonzepte von Betriebssystemkomponenten Referat am Thema: Adressräume, Page Faults, Demand Paging, Copy on Write Referent: Johannes Werner
Konzepte von Betriebssystemkomponenten Referat am 24.11.2003 Thema: Adressräume, Page Faults, Demand Paging, Copy on Write Referent: Johannes Werner Gliederung Adressräume Page Faults Demand Paging Copy
Mehr2
TINF Interrupts EDT-Referat Jürgen Schwarzbauer 2ANB 1995/96 Inhalt : Was ist ein Interrupt? Zweck von Interrupts Maskierbare und nicht maskierbare Interrupts Aufruf eines Interrupts Anwendung von Interrupts
MehrMusterlösung Prüfung WS 01/02
Musterlösung Prüfung WS 01/02 Fach: I3 Software-Technik (SEE, GRS, BTS) Teilprüfung: Betriebssysteme Tag: 29.01.2002 10:45 14.45 Raum: 1006 Bearbeitungszeit: 4 Stunden Name:... Matr.Nr.:... Punkte:...
MehrGrundlagen Rechnerarchitektur und Betriebssysteme
Grundlagen Rechnerarchitektur und Betriebssysteme Johannes Formann Definition Computer: Eine Funktionseinheit zur Verarbeitung von Daten, wobei als Verarbeitung die Durchführung mathematischer, umformender,
MehrPaging. Einfaches Paging. Paging mit virtuellem Speicher
Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz
MehrMikrocomputertechnik. Thema: Einführung in die Mikrocomputertechnik
Mikrocomputertechnik Thema: Einführung in die Mikrocomputertechnik Einsatzgebiete von Mikrocomputern Haushalt: Waschmaschine Kühlschrank Mikrowelle Staubsauger Nähmaschine Industrie: CNC Steuerungen Messgeräte
Mehr> Übung Betriebssysteme Globalübung 3 Michel Steuwer Wintersemester 2012/13
> Übung Betriebssysteme Globalübung 3 Michel Steuwer Wintersemester 2012/13 Gruppe Parallele und Verteilte Systeme (PVS) Institut für Informatik Westfälische Wilhelms-Universität Münster Hinweise 2 Aufgaben
Mehr2Binden 3. und Bibliotheken
3 Vom C-Programm zum laufenden Prozess 3.1 Übersetzen - Objektmodule 1Übersetzen 3. - Objektmodule (2) Teil III 3Vom C-Programm zum laufenden Prozess 2. Schritt: Compilieren übersetzt C-Code in Assembler
MehrOSEK / OSEKtime - ein Vergleich
OSEK / OSEKtime - ein Vergleich Hauptseminar WS 07/08 André Puschmann andre.puschmann@stud.tu-ilmenau.de Technische Universität Ilmenau Fakultät für Informatik und Automatisierung Fachgebiet Rechnerarchitektur
MehrUniversität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG AUTOMATISIERUNGSTECHNIK II SS 20 Name: Matrikelnummer: Note: Prüfungstag: 5.09.20 Prüfungsdauer:
MehrSoftwaretechnik Was und wofür ist das?
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Softwaretechnik Was und wofür ist das? Ringvorlesung Aspekte der Mechatronik: Aufgabengebiete
MehrEmbedded Systemarchitekturen und Echtzeitbetriebssysteme
Fachhochschule Würzburg-Schweinfurt Sommersemester 2006 Diplomfachprüfung im Fach Embedded Systemarchitekturen und Echtzeitbetriebssysteme (Prof. Dr.-Ing. Ludwig Eckert) Datum: 10.07.2006, 08.00 Uhr, Raum
MehrLösung von Übungsblatt 8
Betriebssysteme (SS201) Lösung von Übungsblatt 8 Aufgabe 1 (Unterbrechungen) 1. Was sind Interrupts? Interrupts sind externe Unterbrechungen. Sie werden durch Ereignisse außerhalb des zu unterbrechenden
MehrÜbungen Softwaretechnik I
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Übungen Softwaretechnik I Übung 5: Objektorientierte Analyse Einführung Objektorientierung in der
MehrBetriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion
Betriebssysteme Vorlesung im Herbstsemester 2010 Universität Mannheim Kapitel 6: Speicherbasierte Prozessinteraktion Felix C. Freiling Lehrstuhl für Praktische Informatik 1 Universität Mannheim Vorlesung
MehrFragen? Wie komme ich effizient zu einem Programm? Wie beschreibe/dokumentiere ich meine Idee?
Fragen? Wie komme ich effizient zu einem Programm? Wie beschreibe/dokumentiere ich meine Idee? Schritte beim Programmieren Idee, was der Roboter tun soll? EVA-Prinzip E: Eingabe Welche Daten werden über
MehrIHS2 Seminar. Jorge Meza Zusebau R2082, Tel: -4128
Jorge Meza Zusebau R2082, Tel: -4128 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 14. Januar 2014 Self-Organization 14 January 2014 1 Nächster Termin Das letzte findet am
MehrGrundlagen der Informatik für Ingenieure I. 5. Prozessverwaltung - Einführung
Background: 5. Prozessverwaltung - Einführung 5.1 Wichtige Komponenten eines Prozessors 5.2 Betriebsstrategien von Rechensystemen 5.2.1 Aktivitätsträger, Prozesse, Threads 5.2.1.1 Prozesszustände 5.2.1.2
MehrDesign and Implementation of a Soft-error Resilient OSEK Real-time Operating System
Design and Implementation of a Soft-error Resilient OSEK Real-time Operating System Florian Lukas Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich Alexander Universität Erlangen
MehrRoboter- und Automatisierungstechnik
Roboter- und Automatisierungstechnik Teil 4: Grundlagen der Echtzeitprogrammierung Hochschule Bremerhaven SS 2007 Prof. Dr. Oliver Zielinski Inhalt 4.1 Problemstellung 4.2 Echtzeitprogrammierverfahren
MehrBetriebssysteme. FU Berlin WS 2006/07 Klaus-Peter Löhr. bs-1.1 1
Betriebssysteme FU Berlin WS 2006/07 Klaus-Peter Löhr bs-1.1 1 1 Einführung Betriebsmittelverwaltung Entwicklungsgeschichte Architektur Zur Erinnerung: Informatische Fachbegriffe in Deutsch und Englisch
MehrProzessautomatisierungstechnik
Mohieddine Jelali Prozessautomatisierungstechnik 4. Echtzeitsysteme und Echtzeitprogrammierung WS 2013/14 Vorlesung: Prozessautomatisierung, Prof. Dr.-Ing. Mohieddine Jelali 1 Inhaltsangaben zu Kapitel
MehrBIP-MANAGER V4. zum Datenmanagement der Netzüberwachungsbausteine. UBN/UPM/MFT, Zähler BZi40 PK1, MDVH und anderen Modbus Geräten
BIP-MANAGER V4 SIMATIC S7 Funktionsbausteine zum Datenmanagement der Netzüberwachungsbausteine UBN/UPM/MFT, Zähler BZi40 PK1, MDVH und anderen Modbus Geräten mit dem Profibus-Interface BIPII / BIPIII-M
MehrStack, Stackpointer, Unterprogramm HP: 0 * 1 * 2 * 3 CAL UP1 4 * 5 * 6 CAL UP2 7 *... UP1: 30 * 33 RET UP2: 40 * 41 CAL UP1 42 * 43 RET
Stack, Stackpointer, Unterprogramm HP: 0 * 1 * 2 * 3 CAL UP1 4 * 5 * 6 CAL UP2 7 *... UP1: 30 * 33 RET UP2: 40 * 41 CAL UP1 42 * 43 RET Stack, Stackpointer, UP Stack (Stapel, FIFO) wird benötigt UP-Ruf:
MehrE Mikrocontroller-Programmierung
E Mikrocontroller-Programmierung E Mikrocontroller-Programmierung E.1 Überblick Mikrocontroller-Umgebung Prozessor am Beispiel AVR-Mikrocontroller Speicher Peripherie Programmausführung Programm laden
MehrDatentechnik. => Das Rechenergebnis ist nur dann sinnvoll, wenn es rechtzeitig vorliegt. Die Zeit muß daher beim Programmdesign berücksichtigt werden.
5. Steuerung technischer Prozesse 5.1 Echtzeit (real time) Im Gegensatz zu Aufgabenstellungen aus der Büroumgebung, wo der Anwender mehr oder weniger geduldig wartet, bis der Computer ein Ergebnis liefert
MehrZusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S ]
2.1.2 Behandlung von Unterbrechungen (Interrupts) Zusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S. 582-585] t 1 : MAR (PC) t 2 : MBR Memory[MAR] PC
MehrBavarian Technic unterstützt die Aktivierung von Komponenten, die von Steuergeräten im Fahrzeug gesteuert werden.
Aktivierungen Bavarian Technic unterstützt die Aktivierung von Komponenten, die von Steuergeräten im Fahrzeug gesteuert werden. Aktivierungen sind hilfreich um Komponenten zu starten, die z.b. getestet
MehrSysteme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Maren Bennewitz 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten
MehrC. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner
Von-Neumann-Rechner (John von Neumann : 1903-1957) C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner Quelle: http://www.cs.uakron.edu/~margush/465/01_intro.html Analytical Engine - Calculate
MehrTechnische Informatik 1
Technische Informatik 1 7 Prozesse und Threads Lothar Thiele Computer Engineering and Networks Laboratory Betriebssystem 7 2 7 3 Betriebssystem Anwendung Anwendung Anwendung Systemaufruf (syscall) Betriebssystem
Mehr(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?
SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 2 2014-04-28 bis 2014-05-02 Aufgabe 1: Unterbrechungen (a) Wie unterscheiden sich synchrone
MehrSystemprogrammierung
Systemprogrammierung 3Vom C-Programm zum laufenden Prozess 6. November 2008 Jürgen Kleinöder Universität Erlangen-Nürnberg Informatik 4, 2008 SS 2006 SOS 1 (03-Pro.fm 2008-11-06 08.52) 3 Vom C-Programm
MehrVirtueller Speicher und Memory Management
Virtueller Speicher und Memory Management Speicher-Paradigmen Programmierer ein großer Adressraum linear adressierbar Betriebssystem eine Menge laufender Tasks / Prozesse read-only Instruktionen read-write
MehrTheorie zu Übung 8 Implementierung in Java
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept
Mehr- - CodE 11 CodE 0 0 0 0 0 0 0 0 2.o C 1 10.0 C 2 off 3 3.0 4 2.0 5 off 6 1 8 20.0 9 60 C 7 4.0 10 80 C 1 38 C 12 8 k 13 on 14 30.0 15 10 16 - - CodE 11 CodE 0 0 0 0 0 0 0 0 2.o C 1 10.0 C 2
MehrSo funktionieren Computer
So funktionieren Computer Ein visueller Streifzug durch den Computer & alles, was dazu gehört Ron White Illustrationen: Timothy Edward Downs und Sarah Ishida Alcantara Übersetzung aus dem Amerikanischen:
Mehr1.7 Assembler Programmierung
1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet
MehrBasisinformationstechnologie I Wintersemester 2011/ November 2011 Betriebssysteme
Basisinformationstechnologie I Wintersemester 2011/12 23. November 2011 Betriebssysteme Seminarverlauf 12. Oktober: Organisatorisches / Grundlagen I 19. Oktober: Grundlagen II 26. Oktober: Grundlagen III
MehrEin Scheduler für alle Fälle Robert Kaiser, SYSGO AG
Ein Scheduler für alle Fälle Robert Kaiser, SYSGO AG Am Pfaffenstein 14 D-55270 Klein-Winternheim Tel. +49 (0) 6136 9948-0 Fax. +49 (0) 6136 9948-10 PikeOS: multiple VM Umgebung VM #0 VM #1 VM #2... PikeOS
MehrRichtig einsteigen: Access 2007 VBA-Programmierung
Lorenz Hölscher Richtig einsteigen: Access 2007 VBA-Programmierung Miaosott Teill Erste Schritte 1 Einleitung 9 1.1 Die Themenschwerpunkte dieses Buches 9 Visual Basic for Applications 9 Die Beispiel-Datenbank
Mehr2. Algorithmen und Algorithmisierung Algorithmen und Algorithmisierung von Aufgaben
Algorithmen und Algorithmisierung von Aufgaben 2-1 Algorithmisierung: Formulierung (Entwicklung, Wahl) der Algorithmen + symbolische Darstellung von Algorithmen Formalismen für die symbolische Darstellung
MehrDateien, die nicht in das Projekt eingebunden sind, werden ohne Syntax highlight dargestellt. MiCoWi und µvision Seite 1 Uwe Wittenfeld
C-Programmierung von MiCoWi mit der Keil-Entwicklungsumgebung µvision4 1. Erstellung eines neuen Projektes Menüpunkt: Project New µvision Project Es wird ein komplett neues Projekt in einem beliebigen
MehrEntwurfsmuster und Frameworks Singleton
Entwurfsmuster und Frameworks Singleton Oliver Haase Oliver Haase Emfra Singleton 1/20 Beschreibung I Klassifikation: objektbasiertes Erzeugungsmuster Zweck: sicherstellen, dass eine Klasse nur genau einmal
Mehr68000 Assembler. WAS ist ein Assembler? Ein System, das den Programmierer hilft, eine maschinennahe Programmierung zu realisieren.
WAS ist ein Assembler? Ein System, das den Programmierer hilft, eine maschinennahe Programmierung zu realisieren. Ein Programm liegt der CPU in binärer Form vor und wird durch den Assembler in einer primitiven
MehrIn heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher
Speicherhierarchie In heutigen Computern findet man schnellen/teuren als auch langsamen/billigen Speicher Register Speicherzellen, direkt mit der Recheneinheit verbunden Cache-Speicher Puffer-Speicher
MehrD Einführung Betriebssysteme
1 Was sind Betriebssysteme? DIN 44300...die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Basis der möglichen Betriebsarten des digitalen Rechensystems
MehrD Einführung Betriebssysteme
1 Was sind Betriebssysteme? DIN 44300...die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Basis der möglichen Betriebsarten des digitalen Rechensystems
MehrEinleitung Die Pins alphabetisch Kapitel 1 Programmierung des ATmega8 und des ATmega
Einleitung... 11 Die Pins alphabetisch.... 12 Kapitel 1 Programmierung des ATmega8 und des ATmega328.... 15 1.1 Was Sie auf den nächsten Seiten erwartet... 19 1.2 Was ist eine Micro Controller Unit (MCU)?....
Mehr