Grundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1
|
|
- Erich Busch
- vor 6 Jahren
- Abrufe
Transkript
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 2 1
2 Inhaltsverzeichnis 4. Strukturierter Entwurf (SE) 4.1 Aufbau der Modellierungsphasen nach Ward & Mellor 4.2 Das Essentielle Modell 4. Prozesse und Prozessverwaltung 4..1 Der technische Prozess 4..2 Der Prozessrechner 4.. Prozesse 4..4 Werkzeuge zur Prozessverwaltung 4..5 Zeitscheibenverfahren 4..6 Prioritätssteuerung 4..7 Echtzeitverarbeitung 4.4 Modellierung der Implementierung 4. Prozesse und Prozessverwaltung 4..1 Der technische Prozess Definition nach DIN: Ein Prozess ist Umformung und/oder Transport von Materie, Energie und/oder Information. Zustandsgrößen technischer Prozesse können mit technischen Mitteln gemessen, gesteuert und/oder geregelt werden. Beispiele: Verfahrensprozesse Chem./phys. Umwandlung Rohstoffe-> Werkstoffe/Energie Fertigungsprozesse Mechanische h Formänderung(Werkzeugmaschinen) Verteilungsprozesse Räumlich/zeitlich (Lager/Vermittlung) Meß- und Prüfprozesse Untersuchung mech./phys./chem. Eigenschaften (Prüfstand, Analysen) 4 2
3 4..2 Der Prozessrechner - Mikrorechnersystem zur Prozesssteuerung - 5 Aufgabe Rechnerkonfiguration lang- und mittelfristige Planung auf kommerziellen Rechner Dateneingabe Datenausgabe Strategierechner (kommerziell) Zentrale Datenbank der Firma kurzfristige Planung und Steuerung des Datenverkehrs mit Betriebsrechner Dateneingabe Datenausgabe Dispositionsrechner (Betriebsrechner) weitere Rechner Fertigungsdaten des Einzelnen Produktionsunternehmens Operativrechner weitere Rechner kurzfristige Steuerung mit Prozess- und Mikrorechner. Zuteilung der Aufgaben und Erfassen von Fertigungsdaten Prozess rechner Prof. Dr. Ing. Axel Manuelle Hunger Eingabe Bildschirm Drucker Eingabestation Prozess / Mikrorechner Leit-und Eingabestation Maschine Sommersemester Automatische Eingabe 2016 Offener Regelkreis (Betriebsdatenverarbeitung) Prozess / Mikrorechner Bildschirm 4..2 Der Prozessrechner - Prinzip einer hierarchischen Rechnerkonfiguration- Meßwertgeber Maschinensteuerung Direkte Dr. Ing. Steuerung Stefan Werner 6 geschlossener Regelkreis
4 4.. Prozesse Einschub: von Neumann Architektur Der Prozessrechner - Begriffliche Abgrenzung- Prozessor: Hardware-Einrichtung zur Verarbeitung von Daten Programm: Lauffähig auf Harddisk oder im Hauptspeicher Prozeß: Definition im Sinne der Datenverarbeitung: Programm in Ausführung (virtueller Prozessor: umfaßt: Programme, Daten, Programmzähler, Stack(-pointer), Status, Register,... Task: Anwendersicht eines Prozesses. Im Hinblick auf Prozessrechner meinen Prozess und Task dasselbe Prozess und Task synonym verwendbar. User: klare Unterscheidung zwischen "Task" und "User":" Jedem User (Benutzer) wird mindestens eine Task (Aufgabe bzw. deren Lösung) zugeordnet. Ein User kann ohne weiteres mehrere Tasks anfordern mehrere Tasks können ohne Zuordnung zu einem User existieren, da sie lediglich mit einem technischen Prozeß zusammenarbeiten. 8 4
5 4. Prozesse und Prozessverwaltung 4.. Prozesse Ein Prozess wird im Betriebssystem durch einen Prozessleitblock (engl.: Process Control Block=PCB) repräsentiert, in dem alle Informationen zu einem laufenden Prozess verwaltet werden 9 4. Prozesse und Prozessverwaltung 4.. Prozesse zur eindeutigen Identifikation laufend, blockiert, etc. => vgl. nächste Beschreibung des aktuellen Zustands der Bearbeitung (Programmzähler) und der Registerinhalte i des Prozessors (Register) (internal state). Daten zur Regelung der Bearbeitungsfolge(Prioritäten) zur Verwaltung des belegten Hauptspeichers zur Abrechnung von benutzten Betriebsmitteln über die Zuordnung von Ein- / Ausgabegeräten zu geöffnete Dateien u. Netzwerkverbindungen die die Zugriffsrechte des Prozesses beschreiben Verkettung von Prozessleitblöcken 10 5
6 4.. Prozesse - Zustände und Verwaltung von Prozessen 1 Erzeugung eines neues Prozesses: durch das laufende Programm oder das Betriebssystem 2 Einbindung in das Prozesssystem: durch das laufende Programm oder das Betriebssystem 1 existent 2 bereit 5 laufend blockiert 4 Verwaltung durch: Dispatcher/Verteiler bzgl Priorität Scheduler/Planer bzgl. Ausführungszeit 4 Prozess wartet auf Eingabe 5 Eingabe erledigt/ Bereit zur Fortsetzung Prozesse - Zustände und Verwaltung von Prozessen Erzeugung Prozesssystem 1 2 III bereit blockiert Entfernung Zuteilung Unterbrechung existent Entfernung I Unterbrechung 4 Zuteilung laufend 5 II I: Vorbereitung des Mehrprozessbetriebs II: Mehrprozessbetriebs unter Benutzerkontrolle III: Zusätzlicher Effekt bei Quasi-Parallelität ohne Benutzerkontrolle 12 6
7 4..4 Prozesse und Prozessverwaltung -Hauptfunktionen eines Multitasking Betriebssystems- Benutzer Software Hardware BS task BS 1 2 Prozessor Peripherie log in accounting BS: Betriebssystem 1: Scheduler 2. Interruptsteuerung Werkzeuge zur Prozessverwaltung -Prozessverwaltung durch Scheduler und Dispatcher- Prozesse (SW) Prozessoren (HW) 1 Scheduler 1 2 Zuordnung der anstehenden Prozesse zu den verfügbaren Prozessoren unter Berücksichtigung (vorrangig) funktionaler Abhängigkeiten der Prozesse und/oder eine fiktive, übergeordnete Zeitbedingungen. Dispatcher 2 m Zuordnung von Prozessoren zu bestimmten Prozessen basierend auf Interrupts (u.u. mit Prioritäten) oder aufgrund von Echtzeitbedingungen n üblicherweise als Betriebssystemfunktion verfügbar 14 7
8 4..4 Prozesse und Prozessverwaltung Ablaufsteuerung bei time-sharing Zeitscheibenverfahren Zuteilung zu des Prozessors zu den verschiedenen Prozessen (Tasks) erfolgt durch den Scheduler im time sharing Betrieb die Prozesse sind gleichrangig oder besitzen unterschiedliche Prioritäten Optimierungsziel: Volllast = 100% möglichst alle E/A-Geräte und die CPU ständig beschäftigen Das Zeitradmodell Mehrere Prozesse, z.b.: P1...P8 davon z.b. P1-P Betriebssystemprozesse, P4-P8 Benutzerprozesse Betriebssystemprozesse - P1: Terminal I/O - P2: Account - P: Print 16 8
9 4..5 Zeitscheibenverfahren T 8 T T 1 T 2 Die Zeit für einen vollen Umlauf des Zeitrades beträgt T und wird als Zykluszeit des Zeitrades bezeichnet Die Zykluszeit T wird in kleinen Portionen T i auf die einzelnen Prozesse aufgeteilt. T 7 T Beim Wechsel von einem Prozess T 6 T 5 T 4 P i zum Prozess P j erfolgt ein Kontextwechsel: - Umladen der Prozess- spezifischen Register, Umschalten von einem virtuellen Prozessor zum nächsten - Kontextwechselzeit T KW Zeitscheibenverfahren t 0 Ablauf zum Zeitpunkt t 0 beginnt die Bearbeitung der ersten Task: - hier z.b. Terminal I/0 (P1) Beachte: Die Wahl von t 0 bietet verschiedene Möglichkeiten t 0 kann mit der reinen Rechenzeit des ersten Prozesses zusammenfallen =>nach KW t 0 kann mit dem Ursprung zusammenfallen => ½ KW vor P1 t 0 kann beliebig gesetzt werden 18 9
10 4..5 Zeitscheibenverfahren t 0 +T t 0 t 1 Ablauf Zeitpunkt t 1 : Scheduler entzieht der Task den Prozessor führt einen Kontextwechsel aus und fährt in der Folge mit der Bearbeitung der Task 2 (P2) fort. Anschließend: Ausführen aller anstehenden Tasks bis t 0 +T dann beginnt neuer Umlauf des Zeitrades Zeitscheibenverfahren Kritischer Abschnitt Kritische Abschnitte entstehen bei Parallelität wenn zwei Prozesse um ein Betriebsmittel konkurrieren, auf die gleiche Datenstruktur zugreifen sich synchronisieren. Bleiben kritische Abschnitte unbeachtet bzw. ungeschützt kommt es zu so genannten Race Conditions hängt das Ergebnis einer Operation vom aktuellen Prozessfortschritt und damit letztlich vom Zufall ab. P5 darf nicht unterbrochen werden 20 10
11 4..6 Prioritätssteuerung Beispiel: System mit drei Prozessen HGP: Hintergrundprozess / Priorität 1 IRSi: Interrupt-Subroutine i IRS1/ Priorität 2/ Dauer 8 IRS2/ Priorität 4/ Dauer 6 Ii: Interrupt i 4 Priorität IRS2 Dauer = 6 2 IRS1 IRS1 1 HGP Dauer = 4 Dauer = 4 HGP I1 I2 Zeit Prozesse und Prozessverwaltung 4..7 Echtzeitverarbeitung Definitionen Echtzeitverarbeitung (real-time processing): Korrektheit eines Echtzeitsystems ist nicht nur von den logischen Ergebnissen der Berechnung abhängig, sondern auch von dem Zeitpunkt an dem die Ergebnisse produziert wurden. Echtzeitsysteme sind Systeme, die korrekte Reaktionen innerhalb eines definierten Zeitlimits produzieren müssen. Wenn die Reaktionen diese Zeitlimits überschreiten, dann resultieren daraus Leistungseinbußen und/oder Fehlfunktionen
12 4. Prozesse und Prozessverwaltung 4..7 Echtzeitverarbeitung Reaktionszeiten in Echteitsystemen unterliegen definierten, festen Zeitschranken. Beispiele: Robotersteuerung Für die genaue Ablenkung von Elektronenstrahlen beim Elektronenstrahlschweißen, müssen Magnetfelder mit Frequenzen bis zu 1 MHz geregelt werden. Die Reaktionszeit dabei: 1 µs - 10 µs. Kommunikation in Verkehrsmitteln Die Airbag-Steuerung im Auto muss dauernd und innerhalb kürzester Zeit die Messwerte der Sensoren verarbeiten und entscheiden, ob und wie stark der Airbag ausgelöst wird. Reaktionszeit dabei ca.1 ms. Raketen-/ Weltraumtechnik: Patriot-Raketen, die zum Abschuss anderer Raketen eingesetzt werden müssen bei Begegnungsgeschwindigkeiten von mehreren 1000 m/s und einzuhaltenden Trefferradien von weniger als einem Meter, Zeitschranken im Nanosekundenbereich einhalten 2 4. Prozesse und Prozessverwaltung 4..7 Echtzeitverarbeitung die Signale werden in jeweils eigenen Prozessen Pi aufgenommen und verarbeitet die verfügbare Rechenzeit der einzelnen Prozesse beträgt T Pi Echtzeitbedingung bei Verwendung von drei Prozessoren: T P1 τ = (t 1 -t 0 ) usw. T P2 τ = (t 1 -t 0 ) usw. T P τ = (t 1 -t 0 ) usw. P P2 P1 P P2 P1 t 0 t 1 t
13 4. Prozesse und Prozessverwaltung 4..7 Echtzeitverarbeitung die Signale werden in jeweils eigenen Prozessen Pi aufgenommen und verarbeitet die verfügbare Rechenzeit der einzelnen Prozesse beträgt T Pi Echtzeitbedingung bei Verwendung von einem Prozessor: T P1 + T P2 + T P τ = (t 1 -t 0 ) usw. P1 P2 P P1 P2 P t 0 t 1 t Prozesse und Prozessverwaltung Beispiel/Übung 11 Ein aus zwei Verwaltungstasks (V1, V2) bestehendes Mailbox- System arbeitet im Zeitscheibenverfahren. Die Zykluszeit des Zeitrades beträgt 200ms. Je Verwaltungstask wird eine Rechenzeit von 5ms/Zyklus benötigt. Die verbleibende Zeit des Zeitrades wird gleichmäßig zwischen den auf das Mailbox-System zugreifenden Prozessen vergeben und wird nach jedem Zeitradzyklus neu berechnet (quasi statisch). Für die Kontextwechsels zwischen den Tasks werden zusätzlich 2ms benötigt. 26 1
14 4.5.5 Aufbau eines Multitasking Betriebssystems Beispiel/Übung 12 Das Mailbox-System aus Beispiel 11 ist in der Lage 50 Byte/ms zu senden oder zu empfangen. Es bedient im folgendem drei Prozesse (A1, A2, A). A1 sendet eine Botschaft von 500 Byte A2 empfängt eine Botschaft von 500 Byte A empfängt eine Botschaft V1 V2 von 5000 Byte A 12.1 Geben Sie an, zu welchen Zeit- punkten die einzelnen Tasks beendet werden, wenn die Tasks A2 wie im neben stehendem Bild auf dem Zeitrad angeordnet sind. Wählen Sie einen geeigneten Startpunkt A
Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads
Prozesse und Prozessmanagement des BS 1 Unterschied Prozess, Threads 1.1 Prozess Bei jedem Programm muss gespeichert werden, welche Betriebsmittel (Speicherplatz, CPU- Zeit, CPU-Inhalt,...) es benötigt.
Mehr3 Schnittstelle zum Betriebssystem 3.5 Multitasking. Schichten und Sichten eines Rechnersystems
Schichten und Sichten eines Rechnersystems (Lst. ) 1 Das Betriebssystem als ein Ressourcen-Manager (Lst. ) 2 Betriebssystem-Arten Interaktiv Batchbetrieb (Stapelverarbeitung) Einzelprogrammbetrieb (Uni-programming)
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
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
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,
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...
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
MehrEchtzeit-Multitasking
Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme
MehrArchitektur Verteilter Systeme Teil 2: Prozesse und Threads
Architektur Verteilter Systeme Teil 2: Prozesse und Threads 21.10.15 1 Übersicht Prozess Thread Scheduler Time Sharing 2 Begriff Prozess und Thread I Prozess = Sequentiell ablaufendes Programm Thread =
MehrEin und Ausgabe. von Neumann Konzept enthält folgende Komponenten: Rechenwerk Steuerwerk Speicher Eingabewerk Ausgabewerk (siehe 1.
Ein und Ausgabe von Neumann Konzept enthält folgende Komponenten: Rechenwerk Steuerwerk Speicher Eingabewerk Ausgabewerk (siehe 1. Vorlesung) v. Neumann Architektur Eingabewerk Speicher Ausgabewerk Rechenwerk
MehrSysteme I: Betriebssysteme Kapitel 7 Scheduling. Wolfram Burgard
Systeme I: Betriebssysteme Kapitel 7 Scheduling Wolfram Burgard Version 8.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrBetriebssysteme Kap A: Grundlagen
Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten
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
MehrBetriebssystem (operating system)
Betriebssystem (operating system) 1. Einführung Unter einem Betriebssystem versteht man ein Bündel von Softwareprogrammen, mit denen die grundlegenden Funktionen eines Rechners realisiert werden. Zu seinen
MehrJ. Reinier van Kampenhout Robert Hilbrich Hans-Joachim Goltz. Workshop Echtzeit Fraunhofer FIRST
Modellbasierte Generierung von statischen Schedules für sicherheitskritische, eingebettete Systeme mit Multicore Prozessoren und harten Echtzeitanforderungen J. Reinier van Kampenhout Robert Hilbrich Hans-Joachim
MehrOperating System Kernels
Operating System Kernels von Patrick Bitterling 1 Themenübersicht -Eine Einleitung über Kernel -Begriffserklärung, Architekturen -Kernel Subsysteme -Prozess-Scheduling, Speichermanagement,... -Der Networking
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
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
MehrSequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )
Threads Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Ein thread bearbeitet eine sequentielle Teilaufgabe innerhalb eines Prozesses Mehrere nebenläufige
MehrDämon-Prozesse ( deamon )
Prozesse unter UNIX - Prozessarten Interaktive Prozesse Shell-Prozesse arbeiten mit stdin ( Tastatur ) und stdout ( Bildschirm ) Dämon-Prozesse ( deamon ) arbeiten im Hintergrund ohne stdin und stdout
MehrTest (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme
Seite 1 Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme 1 11.07.2007 Hinweise: Bevor Sie mit der Bearbeitung der Aufgaben beginnen, müssen Sie auf allen Blättern Ihren Namen und Ihre
MehrÜbung zu Grundlagen der Betriebssysteme. 7. Übung 27.11.2012
Übung zu Grundlagen der Betriebssysteme 7. Übung 27.11.2012 Threads Thread (Faden des (Kontrollflusses)): ist ein sequentieller Abarbeitungsablauf (Kontrollfluss) innerhalb eines Prozesses. Umfasst ein
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.:
MehrB.4. B.4 Betriebssysteme. 2002 Prof. Dr. Rainer Manthey Informatik II 1
Betriebssysteme Betriebssysteme 2002 Prof. Dr. Rainer Manthey Informatik II 1 Bekannte Betriebssysteme Windows 2000 CMS UNIX MS-DOS OS/2 VM/SP BS 2000 MVS Windows NT Solaris Linux 2002 Prof. Dr. Rainer
MehrBetriebssysteme I WS 2015/2016. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404
Betriebssysteme I WS 2015/2016 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 17. Dezember 2015 Betriebssysteme / verteilte Systeme
MehrDomänenanalyse Threadverwaltung/Scheduling
Domänenanalyse Threadverwaltung/Scheduling Johannes Handl, Marc Rößler, Christian Strengert 15. Mai 2003 Domänenanalyse Threadverwaltung/Scheduling [1] Domänendefinition Die Erzeugung, Verwaltung, Umschaltung/Wechsel,
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:
MehrProjekt für Systemprogrammierung WS 06/07
Dienstag 30.01.2007 Projekt für Systemprogrammierung WS 06/07 Von: Hassan Bellamin E-Mail: h_bellamin@web.de Gliederung: 1. Geschichte und Definition 2. Was ist Virtualisierung? 3. Welche Virtualisierungssoftware
MehrProzesse und Threads. Prozess. Trace. Einfachstes Prozessmodell. Traces
Prozesse und s Begriffe und Konzepte Prozesszustände Kontrollstrukturen des BS Prozesse BS s Peter Puschner 1 Vorlesung Betriebssysteme, Prozesse; WS 05/06 2 Prozess Animated Spirit of a program ausführbares
MehrEchtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7
Echtzeitprogrammierung und Echtzeitverhalten von Frank Erdrich Semester AI 7 Inhalt Einleitung Echtzeit und Echtzeitsysteme Echtzeitprogrammierung Real-Time Operating System Keil RTOS RTX Zusammenfassung
MehrInhaltsverzeichnis. 2.4 Thread-Systeme. 2.1 Was ist ein Prozess? 2.2 Scheduling. 2.3 Interprozesskommunikation
Inhaltsverzeichnis Systemprogrammierung - Kapitel 2 Prozessverwaltung 1/21 2.1 Was ist ein Prozess? Definition Prozesszustände Prozesskontrollblöcke 2.4 Thread-Systeme Sinn und Zweck Thread-Arten Thread-Management
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
MehrTask A Zündung. Task B Einspritzung. Task C Erfassung Pedalwert. J. Schäuffele, Th. Zurawka: Automotive Software Engineering, Vieweg, 2003
Task! evt. parallel zu bearbeitende Ausführungseinheit! Beispiel: Task A Zündung Task B Einspritzung Task C Erfassung Pedalwert Zeit t J. Schäuffele, Th. Zurawka:, Vieweg, 2003 Echtzeitbetriebssysteme
MehrEnterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13
UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 3 Betriebssystem Überwacher
MehrARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH
ARM Cortex-M Prozessoren Referat von Peter Voser Embedded Development GmbH SoC (System-on-Chip) www.embedded-development.ch 2 Instruction Sets ARM, Thumb, Thumb-2 32-bit ARM - verbesserte Rechenleistung
MehrOSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme
OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme Wilhelm Haas Wilhelm.Haas@informatik.stud.uni-erlangen.de Friedrich-Alexander-Universität Erlangen-Nürnberg Institut für Informatik Lehrstuhl 4
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
Mehr1 Einleitung. 1.1 Aufgaben und Grobstruktur. Was ist ein Betriebssystem?
1 Einleitung 1.1 Aufgaben und Grobstruktur Was ist ein Betriebssystem? Betriebssystem (Definition nach DIN 44300) Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage
MehrÜbersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?
Übersicht Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Einleitung 1 2 der nebenläufigen Programmierung WS 2011/12 Stand der Folien: 18. Oktober 2011 1 TIDS
MehrKlausur. Betriebssysteme SS 2007
Matrikelnummer: 9999999 Klausur FB Informatik und Mathematik Prof. R. Brause Betriebssysteme SS 2007 Vorname: Nachname: Matrikelnummer: Geburtsdatum: Studiengang: Bitte tragen Sie auf jeder Seite Ihre
MehrDHBW Stuttgart, Studiengang Elektrotechnik, 5. HJ, Vorlesung: Realzeitsysteme Sep 2012. 4) Task-Verwaltung
Inhalte Eigenschaften von Rechenprozessen (Tasks) Taskübergänge (process control block) Multitasking (kooperativ und präemptiv) Scheduler Erzeugen, Starten und Beenden von Tasks Taskzustände (running,
MehrInhaltsverzeichnis. 1.1 Der Begriff des Betriebssystems 1.2 Zur Geschichte der Betriebssysteme 1.3 Aufbau eines Rechners
Inhaltsverzeichnis Systemprogrammierung - Kapitel 1 Einführung 1/19 1.1 Der Begriff des Betriebssystems 1.2 Zur Geschichte der Betriebssysteme 1.3 Aufbau eines Rechners E/A-Operationen, Speicherstrukturen
MehrKapitel 2: Betriebssysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2013 Kapitel 2: Betriebssysteme Vorlesung:
MehrBetriebssysteme (BTS)
9.Vorlesung Betriebssysteme (BTS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme 10.5.2007 Exkursion Die Exkursion wird am Freitag, den 18.5.2007
MehrEinführung in die Echtzeitbetriebssysteme
Einführung in die Echtzeitbetriebssysteme Hauptseminararbeit in dem Studiengang B.Sc. Informatik von Maximilian von Piechowski Technische Hochschule Mittelhessen Inhaltsverzeichnis 1 Was versteht man unter
MehrSystemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind
Betriebssysteme Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind Umfaßt z.b. auch Compiler, Interpreter und Dienstprogramme
MehrRound-Robin Scheduling (RR)
RR - Scheduling Reigen-Modell: einfachster, ältester, fairster, am weitesten verbreiteter Algorithmus Entworfen für interaktive Systeme (preemptives Scheduling) Idee: Den Prozessen in der Bereitschaftsschlange
MehrAnfragen werden als Ganzes erfüllt und erst nach Ablauf der Zeit der
Universität Paderborn Fachgebiet Rechnernetze Sommersemester 011 Konzepte und Methoden der Systemsoftware Präsenzübung 08 vom 30.05.011 bis 03.0.011 Aufgabe 1: Auswahlstrategien Sie haben in der Vorlesung
MehrModerne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum
Moderne Betriebssysteme Kapitel 8 Multiprozessorsysteme Kapitel 8 Folie: 1 Multiprozessorsysteme Autor: Andrew S. Tanenbaum Pearson Studium 2009 2 3 4 5 6 7 Betriebssystemarten für Multiprozessoren Jede
MehrTeil VIII Von Neumann Rechner 1
Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only
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
MehrScheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin
Scheduling in Echtzeitbetriebssystemen Prof. Dr. Margarita Esponda Freie Universität Berlin Echtzeitsysteme Korrekte Ergebnisse zum richtigen Zeitpunkt Hart Echtzeitsysteme Eine verspätete Antwort ist
Mehr2 Echtzeitbetriebssysteme
35 2 Echtzeitbetriebssysteme In den letzten Jahren hat sich die Automobilindustrie zu einem der wesentlichen Anwender von Echtzeitbetriebssystemen für eingebettete Systeme entwickelt. Relativ zeitig erkannten
Mehr(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl
Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112
MehrBusse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009
Busse Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 Busse 1/40 2008-10-13 Übersicht 1 Einleitung 2 Bus-Konfiguration
MehrDie Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen.
Kapitel 4 Prozesse Seite 1 4 Prozesse 4.1 Prozeßkonzept Prozess- ein Programm in Ausführung Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen. Üblicher Start: über eine Kommandozeileneingabe
MehrSysteme I: Betriebssysteme Kapitel 7 Scheduling. Maren Bennewitz
Systeme I: Betriebssysteme Kapitel 7 Scheduling Maren Bennewitz Version 23.01.2013 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrVorlesung Betriebssysteme I
1 / 19 Vorlesung Betriebssysteme I Thema 4: Grundlegende Begriffe, Teil 2 Robert Baumgartl 22. November 2016 2 / 19 Begriffe: Schnittstelle beschreibt den statischen Aspekt einer Kommunikationsbeziehung
MehrDomänenmodell: Fadenkommunikation und -synchronisation
Domänenmodell: Fadenkommunikation und -synchronisation Alexander Humphreys, Reinhard Rösch, Fabian Scheler 15. Mai 2003 Inhaltsverzeichnis 1 Domänendefinition 1 2 Domänenlexikon 1 3 Konzeptmodelle 4 4
MehrAbstrakte Schnittstelle
Abstrakte Schnittstelle Das Betriebssystem stellt dem Programmierer eine abstrakte Programmierschnittstelle zur Verfügung Das Betriebssystem bietet einen Satz von Kommandos (Systemaufrufe), über die z.b.
MehrTechnische Informatik II
Institut für Technische Informatik und Kommunikationsnetze Technische Informatik II Übung 1: Prozesse und Threads Aufgabe 1: Prozesse und Threads a) Wie verhält sich eine Applikation die aus mehreren Prozessen
MehrOrganisation der Vorlesung, Einführung in Betriebssysteme. Betriebssysteme. Christoph Lindemann WS 2004/05
Betriebssysteme WS 2004/05 Organisation der Vorlesung, Einführung in Betriebssysteme Christoph Lindemann Organisation der Übungen (1) Übungsgruppenorganisation Anmeldung 8 Übungsgruppen (8-20 Personen
Mehr1.5 Betriebssysteme für RT- Anwendungen: Echtzeitbetriebssysteme
1.5 Betriebssysteme für RT- Anwendungen: Echtzeitbetriebssysteme Warum ein Betriebssystem verwenden? Nutzung eines Betriebssystem hat großen Einfluß auf die Softwarezuverlässigkeit, Produktivität Pflege
Mehr1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge
Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete
MehrFühren Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe.
Aufgabe 1.1: Systeminformationen Führen Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe. a) Wie lautet der Name des von Ihnen verwendeten Rechners? Der Systemname
MehrEinführung. Schedulingziel. Klassisches Scheduling-Problem. 6. Kapitel Ressource Prozessor: Scheduling
Wintersemester 06/07 6. Kapitel Ressource Prozessor: Scheduling Prof. Matthias Werner 6 Professur Betriebssysteme Einführung Bisher: Wenn ein Prozesses den Prozessor aufgibt (Zustand laufend verlässt),
MehrBetriebssysteme Kap B: Hardwaremechanismen
1 Betriebssysteme Kap B: Hardwaremechanismen 2 Beispielprozessor Ein- / Ausgabe p[ ] ir Leitwerk pc Register a f sp Rechenwerk Speicher m[ ] Spezielle Register Flagregister f f.i: Interrupt-Enable-Flag
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
MehrVerteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016
Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i
MehrVorlesung Rechnerarchitektur. Einführung
Vorlesung Rechnerarchitektur Einführung Themen der Vorlesung Die Vorlesung entwickelt an Hand von zwei Beispielen wichtige Prinzipien der Prozessorarchitektur und der Speicherarchitektur: MU0 Arm Speicher
MehrAN025. Application Note 025 zu MODULAR-4 (ML3 und ML5) Messen der CPU-Auslastung im Echtzeitbetrieb
AN025 Application Note 025 zu MODULAR-4 (ML3 und ML5) Messen der Autor: HB AN025.DOC (6 Seiten) 1. Definition Im folgenden wie auch in allen anderen Sorcus Schriften werden folgende Kurzbezeichnungen verwendet:
MehrBetriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik
Betriebssysteme eine Einführung Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Betriebssystem Was ist das? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS
MehrEinführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung
MehrKapitel 2 Betriebssysteme. Für den Rechnerbetrieb notwendige Basissoftware
Für den Rechnerbetrieb notwendige Basissoftware 1 1. Einleitung 2. Prozessverwaltung 3. Dateiverwaltung 2 1. Einleitung Was ist ein Betriebssystem? Wikipedia: Ein Betriebssystem (engl. Operating System
MehrKÜNDIG CONTROL SYSTEMS The Gauge Manufacturer for Film Extrusion SWISS MADE PROFILSTAR.NET. Visualisierung für Dickenund.
KÜNDIG CONTROL SYSTEMS PROFILSTAR.NET Visualisierung für Dickenund Breiten- Messungen PROFILSTAR.NET Der PROFILSTAR.NET erfasst und speichert die Daten von Blasfolienanlagen. Die Anzahl der überwachten
MehrSysteme 1. Kapitel 5. Scheduling
Systeme 1 Kapitel 5 Scheduling Scheduling Verteilung und Zuweisung von begrenzten Ressourcen an konkurrierende Prozesse Beispiel: -> Zeitablaufsteuerung Zwei Prozesse zur gleichen Zeit rechenbereit auf
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrCPU-Scheduling - Grundkonzepte
CPU-Scheduling - Grundkonzepte Sommersemester 2015 Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze 4. Interruptverarbeitung in Betriebssystemen
MehrPraktikum 1: Parallel Computing Hardware
Praktikum 1: Parallel Computing Hardware M.Thaler, 2/2016, ZHAW 1 Einführung Ziel dieses Praktikum ist es, sie vertraut zu machen mit: Informationen zur verwendeten Prozessor-Hardware Messung und Analyse
MehrBegriff: Scheduling Planung, Schedule Plan. Verplanung der CPU-Zeit an die Threads (bzw. Prozesse)
5 CPU-Scheduling Im folgenden wird von Threads gesprochen. Bei Systemen, die keine Threads unterstützen, ist der einzige "Thread" eines Prozesses gemeint. Früher wurde dieser Thread synonym mit dem Begriff
MehrÜberblick. 1 Vorbemerkungen. 2 Algorithmen. 3 Eigenschaften von Algorithmen. 4 Historischer Überblick. Einführung
Teil I Einführung Überblick 1 Vorbemerkungen 2 Algorithmen 3 4 Historischer Überblick Prof. G. Stumme Algorithmen & Datenstrukturen Sommersemester 2009 1 1 Vorbemerkungen Was ist Informatik? Informatik
MehrAufbau und Funktionsweise eines Computers
Aufbau und Funktionsweise eines Computers Thomas Röfer Hardware und Software von Neumann Architektur Schichtenmodell der Software Zahlsysteme Repräsentation von Daten im Computer Hardware Prozessor (CPU)
MehrLösungsskizzen zur Abschlussklausur Betriebssysteme
Lösungsskizzen zur Abschlussklausur Betriebssysteme 24. Januar 2013 Name: Vorname: Matrikelnummer: Studiengang: Hinweise: Tragen Sie zuerst auf allen Blättern (einschlieÿlich des Deckblattes) Ihren Namen,
MehrThreads and Scheduling
Vorlesung Betriebssysteme WS 2010, fbi.h-da.de Threads and Scheduling Jürgen Saala 1. Threads 2. Scheduling 2 1. Threads 3 Prozesse mit je 1 Adressraum 1 Ausführungsfaden d.h. Unabhängiger Adressraum mit
MehrEinführung in die Informatik I (autip)
Einführung in die Informatik I (autip) Dr. Stefan Lewandowski Fakultät 5: Informatik, Elektrotechnik und Informationstechnik Abteilung Formale Konzepte Universität Stuttgart 24. Oktober 2007 Was Sie bis
MehrAufgabe 2 - Erweiterung um PIC und Interrupts
Aufgabe 2 - Erweiterung um PIC und Interrupts Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Erweiterung
MehrEinführung in CAE-Systeme
Einführung in CAE-Systeme Dipl.-Ing. Mark Müller 1 Inhalt 1. Motivation für CAE-Werkzeuge 2. Modellierung technischer Prozesse 3. Übersicht über CAE-Simulationssysteme Kommerzielle Programme Freeware 4.
MehrProblemorientierte Programmiersprachen Nachteile von Programmen in Maschinensprache sehr aufwendig bei komplexeren Aufgabenstellungen fehleranfällig
Problemorientierte Programmiersprachen Nachteile von Programmen in Maschinensprache sehr aufwendig bei komplexeren Aufgabenstellungen fehleranfällig schwer verständlich nicht portabel, d.h. nicht auf Rechner
MehrProgramme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet.
Prozessverwaltung Prozesse Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet. Prozesse sind Abfolgen von Aktionen, die unter Kontrolle
MehrOSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab
OSEK-OS Oliver Botschkowski oliver.botschkowski@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Einleitung Motivation Ziele Vorteile Einführung in OSEK-OS Architektur Task Management Interrupt
MehrBetriebssysteme Vorstellung
Am Anfang war die Betriebssysteme Vorstellung CPU Ringvorlesung SE/W WS 08/09 1 2 Monitor CPU Komponenten eines einfachen PCs Bus Holt Instruktion aus Speicher und führt ihn aus Befehlssatz Einfache Operationen
MehrBetriebssysteme Übung 2. Tutorium System Calls & Multiprogramming
Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Task Wiederholung 1 System SysCalls (1) Wozu? Sicherheit Stabilität Erfordert verschiedene modes of execution: user mode privileged mode
Mehrbereit (oder Zombie genannt). Normales Ende (exit) und synchrone und asynchrone Signal-Ereignisse, z.b.
Prof. Dr. Michael Jäger FB MNI Lösungsvorschlag zur Klausur Betriebssysteme vom 1.10.2014 Blau gekennzeichnete Textstellen sind beispielhafte Lösungen bzw. Antworten zu den Aufgaben. Rot gekennzeichnete
MehrTechnische Informa/k II. Prof. Dr. Bernd Freisleben Sommersemester 2013 Kapitel 5: BetriebsmiCelverwaltung
Technische Informa/k II Prof. Dr. Bernd Freisleben Sommersemester 2013 Kapitel 5: BetriebsmiCelverwaltung Inhalt Folie 05-2 BetriebsmiCelverwaltung Verklemmungen (Deadlocks) BetriebsmiCelverwaltung (BMV)
MehrBetriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at
Betriebssysteme eine Einführung Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Betriebssystem Was ist das? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS
MehrSkalierbare Rechensysteme für Echtzeitanwendungen
Skalierbare Rechensysteme für Echtzeitanwendungen Institut für Informatik TU Clausthal Echtzeit 2011: Herausforderungen durch Echtzeitbetrieb 3. und 4. November 2011 in Boppard am Rhein Multitasking Task
MehrRechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7
1 Vortrag Atmega 32 Von Urs Müller und Marion Knoth Urs Müller Seite 1 von 7 Inhaltsverzeichnis 1 Vortrag Atmega 32 1 1.1 Einleitung 3 1.1.1 Hersteller ATMEL 3 1.1.2 AVR - Mikrocontroller Familie 3 2 Übersicht
MehrVorl. 6: Single- und Multitasking
Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorl. 6: Single- und Multitasking Peter B. Ladkin Single Tasking Command Interpreter (ComInt) läuft wartet auf Tastatur-Eingabe
MehrEinführung in die Informationstechnik
2 Übersicht Themen Einführung in die Informationstechnik II Einführung in Betriebssysteme Betriebssysteme allgemein Microsoft Windows Unix am Beispiel Linux Bedienoberfläche von Linux Unix am Beispiel
MehrA U S A R B E I T U N G
Echtzeitsysteme Zuordnung von Echtzeitsystemen nach den Zeitschranken A U S A R B E I T U N G Studiengang Informationstechnik an der Dualen Hochschule Baden-Württemberg Karlsruhe von Ruwen Möhrle März
Mehr