Ein einzelnes Programm kann i.d.r. einen Prozessor nicht sinnvoll auslasten
|
|
- Eduard Albrecht
- vor 6 Jahren
- Abrufe
Transkript
1 2 NebenlŠufigkeit und Prozesse 2.1 Prozesse und Module Prozess GerŠt 1 GerŠt 2 GerŠt 3 1 Ein einzelnes Programm kann i.d.r. einen Prozessor nicht sinnvoll auslasten Auch im Einprozessorsystem ist daher der verzahnte Ablauf mehrerer AktivitŠten sinnvoll, um Leerzeiten des Prozessors zu vermeiden. 2-1
2 Module Grš ere Softwaresysteme bestehen aus einer Menge kleinerer Komponenten, die wir Module nennen. Ein Modul stellt an seiner Schnittstelle eine Reihe von Operationen zur VerfŸgung, wšhrend die Implementierung dieser Funktionen vor dem Benutzer verborgen bleiben sollte. Schnittstelle Operation 1 Operation 2 Operation n Interne Prozeduren und Daten Die Gesamtfunktion wird durch gegenseitigen Aufruf dieser Schnittstellenoperationen erbracht 2-2
3 Betriebssystemkern als Modul Auch einen Betriebssystemkern kann man als Modul auffassen: Er hat zwei Schnittstellen: - fÿr die Systemaufrufe (system calls) - zur Hardwareinteraktion (Unterbrechungen) Kernschnittstelle fÿr Anwendungs- und Systemprogramme Kernop 1 Kernop 2 Kernop 2 Kernop n Interne Prozeduren und Datenstrukturen Interrupt routine 1 Interrupt routine 2 Interrupt routine m Hardwareschnittstelle 2-3
4 Prozesse Ein Prozess durchlšuft mehrere Module: Modul Modul Modul Modul Modul Jeder Modul ist ein einzelner Prozess: Modul Modul Modul Modul Modul 2-4
5 Prozesse Ein Prozess (process, task, thread) ist die AusfŸhrung eines sequentiellen Programms (lineare Folge von Befehlen). Eingabedaten Ausgabedaten Prozeß Programm Daten Er kann Ÿber Ein- und Ausgabedaten (Parameter) sowie Ÿber interne Daten verfÿgen 2-5
6 2.2 Prozesse in Betriebssystemen Prozesse wurden eingefÿhrt, um mehrere Benutzerprogramme quasiparallel ausfÿhren zu kšnnen (Mehrprogrammbetrieb, Time-Sharing) Die AusfŸhrung eines Benutzerprogamms ist als Prozess organisiert. Ein Benutzer kann in der Regel mehrere Programme, d.h. Prozesse gleichzeitig laufen lassen Das Betriebssystem selbst stellt viele Funktionen in Form von Systemprozessen zur VerfŸgung (Unix: ps liefert eine Liste aktiver Prozesse) Zu ihrer Verwaltung unterhšlt das BS interne Datenstrukturen (Prozesskontrollblšcke) Prozesse sind nicht nur AktivitŠtstrŠger, sondern auch die Instanzen, die Betriebsmittel anfordern und belegen kšnnen 2-6
7 Prozesse und Programme Mehrere Prozesse kšnnen dasselbe Programm ausfÿhren. Beispiel: logischer Adressraum Prozess A privater Bereich physikalischer Speicher logischer Adressraum Prozess B privater Bereich gleichzeitige bersetzung zweier Quellprogramme: Daten von B Der Code des bersetzers ist nur einmal im Speicher vorhanden Shared Code Shared Code Daten von A Shared Code 2-7
8 Prozeduren und Prozesse Im Gegensatz zu Prozeduren kšnnen Prozesse parallel zueinander ausgefÿhrt werden Prozeduren Prozesse Prozesse 1 Prozessor 3 Prozessoren 1 Prozessor 2-8
9 NebenlŠufigkeit und ParallelitŠt NebenlŠufigkeit (concurrency) VorgŠnge hei en nebenlšufig, wenn sie parallel oder verzahnt ablaufen kšnnen (potentielle ParallelitŠt) ParallelitŠt (parallelism) VorgŠnge hei en parallel, wenn sie tatsšchlich simultan ablaufen (echte ParallelitŠt) Echte ParallelitŠt gibt es nur, wenn mehrere aktive Hardware-Komponenten vorhanden sind: Prozessoren oder E/A-GerŠte 2-9
10 Verzahnte AusfŸhrung von Prozessen Auf Einprozessormaschinen mÿssen die Prozesse verzahnt ausgefÿhrt werden: Der Prozessor bearbeitet die Prozesse abschnittsweise in kleinen ãhšppchenò Die Verzahnung verfolgt zwei Ziele: Prozessor auslasten: Wartet ein Prozess auf die Fertigstellung eines E/A-Auftrags, so kann wšhrenddessen ein StŸck eines anderen Prozesses bearbeitet werden. Nach au en den Eindruck der Gleichzeitigkeit erwecken: Alle Prozesse kommen gleichmš ig voran (Prozess als virtueller Prozessor) P1 P2 P3 2-10
11 Prozesse und AdressrŠume Ein (logischer) Adressraum eines Prozesses ist die Gesamtheit seiner gÿltigen Adressen, auf die er zugreifen kann. Moderne Prozessoren ermšglichen nicht nur relative Adressierung (Basisregister), sondern stellen eine Speicherabbildungsfunktion (memory management unit, MMU) zur VerfŸgung. Damit kšnnen (beliebig) viele logische AdressrŠume gebildet werden, die automatisch und ggf. gestreut auf den physikalischen Speicher abgebildet werden. Dadurch sind die AdressrŠume gegenseitig geschÿtzt. GrundsŠtzlich sind AdressrŠume unabhšngig von Prozessen zu sehen. Zwar benštigt jeder Prozess zu jedem Zeitpunkt einen Adressraum, ansonsten sind aber mehrere Relationen mšglich: Ein Prozess besitzt genau einen eigenen Adressraum (Unix-Prozess) Mehrere Prozesse teilen sich einen Adressraum (Threads) Ein Prozess wechselt von einem Adressraum zum andern 2-11
12 Hinweis BezŸglich der Terminologie in der einschlšgigen Literatur ist Vorsicht geboten: Ein Prozess (process, task) wird hšufig im Sinne eines Unix-Prozesses verstanden als ein Prozess mit einem eigenen Adressraum. Die meisten neueren Betriebssysteme ( auch neuere UNIX-Varianten) bieten dagegen die Mšglichkeit an, mehrere Prozesse in einem gemeinsamen Adressraum ablaufen zu lassen. Man nennt sie Leichtgewichtsprozesse (lightweight process) oder Threads. In modernen Unix-Varianten (z.b. Solaris) gibt es einerseits die ursprÿnglichen Unix- Prozesse (tasks), die aber aus vielen Threads bestehen kšnnen. Ein Unix-Prozess ist daher ein Adressraum, der mindestens einen Thread enthšlt. FŸr WindowsNT gilt die gleiche Sprechweise. FŸr eine Gruppe von Threads im selben Adressraum finden sich auch die Begriffe Team (System V) oder Actor (Chorus) 2-12
13 bersicht Ÿber die Bezeichnungen in verschiedenen BS Betriebssystem Einheit der AusfŸhrung bergreifende Einheit Mach thread task Chorus thread actor Mayflower lightweight process domain V thread team Amoeba thread cluster Cosy process adress space Solaris thread process NT thread process 2-13
14 Prozessumschaltung (Prozesswechsel, process switching) Prozessumschaltung bedeutet, dass der Prozessor die Bearbeitung des aktuellen Prozesses unterbricht und stattdessen die Bearbeitung eines anderen Prozesses fortfÿhrt. Prozesswechsel bedeutet also einen bergang von einer Befehlsfolge in eine andere. Arten der Prozessumschaltung: Explizit: Der aktive Prozess initiiert selbst die Umschaltung Unbedingt: Bedingt: Automatisch: Der aktive Prozess Ÿbergibt die Kontrolle entweder gezielt an einen anderen Prozess oder er ŸberlŠsst die Auswahl einer Ÿbergeordneten Instanz (Scheduler) Der Prozess kann nicht weiterarbeiten, solange eine Bedingung nicht erfÿllt ist Die Prozessumschaltung wird durch ein Šu eres Ereignis (Interrupt) ausgelšst 2-14
15 Implementierung der Prozessumschaltung im Betriebssystem 2-15 Au er dem BefehlszŠhler enthšlt der Prozessor in seinen Registern eine Menge weiterer prozessspezifischer Daten: Inhalte von Rechenregistern, Indexregistern etc., die den Zustand der Programmbearbeitung, also des Prozesses, repršsentieren. Inhalte von Adressregistern, Segmenttabellen, Unterbrechungsmasken, Zugriffskontrollinformation etc, die die Ablaufumgebung des Prozesses darstellen. Alles zusammen, also die gesamte im Prozessor abgelegte prozessspezifische Information wird als Kontext des Prozesses (process context) bezeichnet. Dieser Prozesskontext muss im Rahmen des Umschaltens gerettet werden und beim Fortsetzen des Prozesses wieder restauriert werden. Prozesswechsel ist dann relativ schnell, wenn nur die Rechenregister umgeladen werden mÿssen, also die Adressierungsumgebung dieselbe bleibt. (Prozesswechsel innerhalb eines Adressraums, Leichtgewichtsprozesse, Threads)
16 Auswahl des nšchsten Prozesses Bisher gingen wir implizit davon aus, dass feststeht, auf welchen Prozess umgeschaltet wird. Meistens ist dieser Prozess nicht konstant, sondern wird zum Zeitpunkt des Umschaltens ausgewšhlt: Kriterien: Nummer des Prozesses (zyklisches Umschalten) Ankunftsreihenfolge Fairness PrioritŠt (Dringlichkeit) - konstant - veršnderlich Einhalten von Fertigstellungszeitpunkten Die Auswahl des nšchsten Prozesses beeinflusst die Verteilung der Prozessorleistung auf die Prozesse. Auf die verschiedenen Umschaltstrategien wird noch eingegangen (Scheduling) 2-16
17 ProzesszustŠnde Beim Umschalten muss in der Regel ein nšchster Prozess ausgewšhlt werden. Da jedoch einige Prozesse auf das Eintreten eines Ereignisses oder das ErfŸlltsein einer Bedingung warten, kommen diese nicht in Frage. Sie sind z. Zt. nicht fortsetzbar. Prozesse, die fortsetzbar sind, werden zu einer Menge zusammengefasst, ebenso diejenigen, die gerade nicht fortsetzbar sind. Die Zugehšrigkeit zu diesen Mengen wird auch als Zustand des Prozesses bezeichnet. Nimmt man die gerade rechnenden Prozesse hinzu, so gelangt man zunšchst zu drei ZustŠnden Zustand ãrechnendò (running): Prozesse, die gerade auf einem Prozessor bearbeitet werden Zustand ãbereitò (ready) Prozesse, die zwar fortsetzbar sind, aber gerade nicht bearbeitet werden Zustand ãwartendò (waiting) Prozesse, die nicht fortsetzbar sind, weil sie auf das Eintreten einer Bedingung warten 2-17
18 ProzesszustŠnde (process states) und ihre bergšnge Wartend (waiting, blocked) DEBLOCKIEREN (deblock) BLOCKIEREN (block) AUFGEBEN (relinquish, yield) Bereit (ready) Rechnend (running) ZUORDNEN (assign) 2-18
19 2.3 Ausdrucksformen fÿr ParallelitŠt in Programmiersprache Explizite NebenlŠufigkeit In sequentiellen, imperativen Programmiersprachen findet man die folgenden elementaren Kontrollstrukturen : Sequenz Einzelschritte werden in der Reihenfolge der Aufschreibung ausgefÿhrt. Wiederholung (Iteration) Einzelschritte oder Sequenzen von Einzelschritten werden wiederholt ausgefÿhrt. Verzweigung bzw. Auswahl AbhŠngig von einer Bedingung werden unterschiedliche Schritte durchgefÿhrt. Einschub (Prozedur) Eine in sich geschlossene Teilaufgabe, die an anderer Stelle als Programm formuliert ist, wird als eine Art komplexe Operation in die Anweisungsfolge eingeschoben. Wie sich im folgenden herausstellen wird, kann man allen vier Kontrollstrukturen eine parallele Variante gegenÿberstellen, die sich aus ihrem sequentiellen GegenstŸck herausentwickelt hat. Mit dem Begriff explizit soll deutlich gemacht werden, dass der Programmierer bewusst und gezielt nebenlšufige KontrollflŸsse vorsieht. 2-19
20 Prozesse WŠhrend eine Prozedur keine ParallelitŠt zum Aufrufer besitzt - der Aufrufer wird angehalten, bis die Prozedur beendet ist -, findet beim Prozess eine parallele Bearbeitung von Aufrufer oder Erzeuger und aufgerufenen Prozess statt. Der Prozess kann daher als zur ParallelitŠt fšhiges GegenstŸck zur Prozedur angesehen werden. Da diese Prozesse an einer gemeinsamen Aufgabe arbeiten, mÿssen sie interagieren Nach der Art ihrer Interaktion unterscheiden wir Kooperation (Shared-Memory Programmiermodell, gemeinsamer Speicher) Die Prozesse lesen und schreiben gemeinsame Variable Beispiele: Concurrent Pascal, Ada, Java, Modula-2 Kommunikation (Message Passing Programmiermodell, getrennter Speicher) Die Prozesse senden sich gegenseitig Nachrichten) Beispiele: Occam, diverse C-Derivate Die Verwaltung dieser Prozesse wird vom Laufzeitsystem der Sprache vorgenommen. 2-20
21 BS-Prozesse und Programmiersprachliche Prozesse Klassischer Mehrprogrammbetrieb: UnabhŠngige Prozesse in eigenen AdressrŠumen Ein Programm ein Prozess Laufzeitsystem Ein Programm ein Prozess Laufzeitsystem Betriebssystemkern Thread-Konzept in einer Programmiersprache ohne BS-UnterstŸtzung: Ein Programm viele Prozesse Ein Programm viele Prozesse Umschaltung der Prozesse durch Laufzeitsystem. FŸr das Betriebssystem sind die Prozesse nicht sichtbar. Es behandelt das gesamte Programm als einen Prozess Laufzeitsystem Laufzeitsystem Betriebssystemkern 2-21
22 BS-Prozesse und Programmiersprachliche Prozesse Ein Programm viele Prozesse Ein Programm viele Prozesse Programmiersprachliche Prozesse werden 1:1 auf BS-Prozesse abgebildet Laufzeitsystem Laufzeitsystem Betriebssystemkern Die Programmiersprache unterstÿtzt keine Prozesse Das parallele Programm besteht aus BS-Prozessen, die sich einen Adressraum teilen (z.b. Pthreads) Ein Programm viele Prozesse Ein Programm viele Prozesse Betriebssystemkern 2-22
23 Paralleles Verzweigen Die nebenlšufige Variante zum Verzweigen ist das: fork/join. Forkbedeutet das parallele Verzweigen zu einem anderen Programmteil, wšhrend das bisher aktive, das fork aufrufende Programm weiterlšuft. Jedes fork korrespondiert eindeutig mit einem joinbei dem die beiden Zweige wieder zusammengefÿhrt werden. A fork f B fork g C join f D join g E end f: F end g: G end F A B C D E G 2-23
24 Parallele Anweisungen In einigen Programmiersprachen wird das Paar parbeginparend oder auch cobegin/coend benutzt, um dadurch anzudeuten, dass die Reihenfolge nacheinander aufgeschriebenen Anweisungen unerheblich ist, mithin ihre AusfŸhrung auch parallel durchgefÿhrt werden kann.. A; parbegin A B; begin C C; parbegin B G D; D E E; parend; F F end; G; H parend; H; 2-24
25 Parallele Schleifen Sind die einzelnen SchleifendurchlŠufe unabhšngig voneinander, kann statt einer n- fachen Repetition des Schleifenkšrpers eine n-fache ParalleldurchfŸhrung stattfinden. Die Ÿblicherweise verwendeten SchlŸsselwšrter zur Kennzeichnung paralleler Schleifen hei en pardodoall, forall oder doacross A A; pardo i:=1 to n B(i); pardo j:=1 to i C(i,j); parend; D(i); parend; E; C(1,1) B(1) B(2) B(3) B(n) C(2,1) C(2,2) C(n,1) D(1) D(2) D(3) D(n) E C(n,n) 2-25
26 Impliziter Parallelismus ParallelitŠt kann auch implizit und stattfinden: Moderne Prozessoren besitzen die FŠhigkeit, mehrere Operationen Ÿberlappend und/oder simultan auszufÿhren. Dies kann aber nur genutzt werden, wenn der bersetzer geeigneten Code erzeugt Arithmetische AusdrŸcke kšnnen unter Ausnutzung von Assoziativ- und Kommutativgesetz teilweise parallel ausgewertet werden. DatenabhŠngigkeiten zwischen den Anweisungen kšnnen analysiert werden. Man findet Anweisungen, die unabhšngig voneinander sind und parallel ausgefÿhrt werden kšnnen. Die sequentielle Anordnung ist Ÿberspezifiziert. 2-26
27 Parallelarbeit innerhalb des Prozessors Flie bandprinzip (Pipelining) aufeinanderfolgende Befehle IF DC EX WB Instruction fetch (Befehl holen) Decode (Befehl decodieren) Execute (Befehl ausführen) Write back (Ergebnis zurückschreiben) Prozessortakte 2-27
28 SuperskalaritŠt Statt nur einer Pipeline werden mehrere (2-4) vorgesehen, so dass mehrere Befehle vollstšndig parallel bearbeitet werden kšnnen. Bei superskalaren Prozessoren kann die Zahl der abgearbeiteten Befehle grš er sein als die Taktrate. aufeinanderfolgende Befehle Prozessortakte 2-28
29 2.4Beziehungen zwischen Prozessen Verallgemeinerter Prozessbegriff Wir haben parallele oder nebenlšufige AktivitŠten auf verschiedenen Ebenen kennengelernt: - Komplette Anwendungen als Prozesse - Prozesse als Teile von Anwendungen - Folgen von Anweisungen parallel zu anderen - Einzelne Operationen oder kurze Operationsfolgen parallel zueinander Es handelt sich jeweils um Folgen von Operationen, die in sich sequentiell, untereinander aber parallel ausgefÿhrt werden kšnnen. Die LŠnge dieser parallelen AktivitŠten wird oft mit dem Begriff GranularitŠt charakterisiert. Komplette Programme als Prozesse wšren dann ein Beispiel fÿr grobgranulare Prozesse, die parallele Auswertung eines arithmetischen Ausdrucks eine Beispiel fÿr feine GranularitŠt. 2-29
30 Beziehungen zwischen Prozessen Prozesse kšnnen in diversen Beziehungen stehen: Eltern-Kind-Beziehung: Ein Prozess erzeugt einen weiteren Prozess VorgŠnger-Nachfolger-Beziehung: Ein Prozess darf erst starten, wenn ein anderer Prozess beendet ist Kommunikationsbeziehung: Zwei (oder mehr) Prozesse kommunizieren miteinander Wartebeziehung: Ein Prozess wartet auf etwas, was von einem anderen Prozess kommt. Dringlichkeitsbeziehung: Ein Prozess ist wichtiger (dringlicher) als ein anderer Und viele andere mehr 2-30
31 Prozessgraphen Solche Beziehungen kann man formal als Relationen ausdrÿcken: Sei P die Menge der Prozesse, so ist B P P eine Relation. Meistens wird der Sachverhalt als Graph ( PB, ) mit P als Knoten- und B P P als Kantenmenge dargestellt. Die meisten dieser Graphen sind gerichtet, einige sind azyklisch, (DAG = directed acyclic graph), z.b. VorgŠngergraph, und einige Graphen sind BŠume bzw. WŠlder (z.b. Eltern- Kind-Beziehung) (Wer es noch nicht wei : Ein Wald ist eine Menge von BŠumen!) Prozessgraphen kšnnen auch Ÿber Knoten- und Kantengewichte verfÿgen. Beispiele: AusfŸhrungszeit als Knotengewicht im VorgŠngergraph Versendete Datenmenge als Kantengewicht im Kommunikationsgraphen Wir werden in spšteren Kapiteln darauf zurÿckkommen. Graphen werden verwendet: Zur Analyse einer Situation (z.b. Verklemmungen) Zur Optimierung (z.b. Scheduling, Platzierung) 2-31
32 Beispiel VorgŠngergraph TPG: task precedence graph Kanten modellieren Reihenfolgebeziehung Kommunikationsgraph TIG: task interaction graph Kanten modellieren Interaktion T0 Raum T0 Raum T1 T2 T3 T4 T5 T1 T2 T3 T4 T5 Zeit Raum T6 T6 2-32
Proseminar Nichtsequentielle Programmiersprachen - alt und neu Einführung
Proseminar Nichtsequentielle Programmiersprachen - alt und neu Einführung Peter Löhr Nichtsequentielle Programme Nichtsequentielle Programme (concurrent programs): Prozesse, Threads, Tasks,... sind eigenständige
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
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
MehrKlausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition)
Ein Prozess kann unmittelbar vom Zustand 1. Running in den Zustand Ready 2. Running in den Zustand Blocked 3. Ready in den Zustand Running Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Der Adressraum
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 =
MehrSysteme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss
Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige
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
MehrPrüfung VO Betriebssysteme SS2008 / 7. Juli 2008
Name: Matrikel-Nr: Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Bitte schreiben Sie leserlich und antworten Sie kurz und präzise. 1. Zeichnen Sie das Schichten-Modell eines Computersystems und markieren
MehrParallele Programmierung in Java
PPJ-1 Parallele Programmierung in Java Prof. Dr. Uwe Kastens Sommersemester 2000 Vorlesung Parallele Programmierung in Java SS 2000 / Folie 01 PPJ-2 Ziele und Durchführung Die Studierenden sollen grundlegende
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
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
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
MehrProjektseminar Parallele Programmierung
HTW Dresden WS 2014/2015 Organisatorisches Praktikum, 4 SWS Do. 15:00-18:20 Uhr, Z136c, 2 Doppelstunden o.g. Termin ist als Treffpunkt zu verstehen Labore Z 136c / Z 355 sind Montag und Donnerstag 15:00-18:20
Mehr9 Multithreading. 1 Idee des Multithreading
9 Multithreading Jörn Loviscach Versionsstand: 21. Juli 2015, 11:50 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work is licensed
Mehr6.Vorlesung Betriebssysteme Hochschule Mannheim
Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 1/40 6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun Karlsruher Institut für Technologie Steinbuch Centre for Computing
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
MehrWas machen wir heute? Betriebssysteme Tutorium 2. Organisatorisches. Frage 2.1.a. Theorieblätter Abgabe. Antwort. Probleme mit OS/161?
Was machen wir heute? Betriebssysteme Tutorium 2 Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1
MehrSoftwarelösungen: Versuch 4
Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]
MehrProzesse und Threads. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at
Prozesse und Threads Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Ziel: Gleichzeitiges, kontrolliertes Ausführen von Programmen auf einem Rechner Welche Mechanismen sind
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
MehrNebenläufige Programmierung
Nebenläufige Programmierung Perspektiven der Informatik 27. Januar 2003 Gert Smolka Telefon-Szenario Eine Telefonzelle Mehrere Personen wollen telefonieren Immer nur eine Person kann telefonieren Ressource
MehrEin Laufzeitsystem für hochgradig parallele Simulationen
Ein Laufzeitsystem für hochgradig parallele Simulationen Luc Bläser ETH Zürich / LBC Informatik Seminar für Verkehrssimulation TU Berlin, 6. Juni 2008 Motivation Parallele Simulation Selbstaktive Agenten
MehrEntwurf von Algorithmen - Kontrollstrukturen
Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer
MehrDas Prinzip an einem alltäglichen Beispiel
3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und
MehrThread-Erzeugung kostengünstiger als Prozesserzeugung Thread-Umschaltung kostengünstiger als Prozessumschaltung
1.5 Threaded Server Server als ein Prozess mit mehreren Threads Threads Thread als Aktivitätsträger virtueller Prozessor eigener Programmzähler eigener Stackbereich eingebettet in den Kontext eines Prozesses
MehrMusterlösung Prüfung SS 2002
Musterlösung Prüfung SS 2002 Fach: I4neu (SEE, KOS, GRS, BTS) Teilprüfung: Betriebssystem Tag: 2.7.2002 8:15 12:15 Raum 1006 Bearbeitungszeit: 72 Minuten Name:... Matr.Nr.:... Punkte:... Note:... Hilfsmittel:
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,
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
MehrBetriebssysteme (BTS)
5.Vorlesung Betriebssysteme (BTS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme 30.3.2007 Wiederholung vom letzten Mal Redundant Array of
MehrKurz: Stimme meinen Vorrednern zu: Angenehme Atmosphäre. Eher ein Fachgespräch als eine Prüfung. Eindeutig zu empfehlen
Kursversion WS: 10/11 02.2012 Kurs 1727 Kurz: Stimme meinen Vorrednern zu: Angenehme Atmosphäre. Eher ein Fachgespräch als eine Prüfung. Eindeutig zu empfehlen Grundlagen Parallele Programmierung? Was
MehrSystemsoftware (SYS)
5.Vorlesung Systemsoftware (SYS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Robotik 2.11.2007 Wiederholung vom letzten Mal Redundant Array of independent
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
MehrDie Programmiersprache C
Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,
MehrU6-1 Organisatories. U6-2 Motivation von Threads. U6-3 Vergleich von Thread-Konzepten. Organisatorisches
U6 6. Übung U6 6. Übung U6-1 Organisatories U6-1 Organisatories Organisatorisches Zusätzliche Tafelübung zur S1-Klaurvorbereitung Besprechung Aufgabe 5 (crawl) OSIX-Threads Motivation Thread-Konzepte am
MehrKontrollstrukturen - Universität Köln
Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,
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
MehrBPMN Kategorien und Elementgruppen. Flussobjekte
BPMN Kategorien und Elementgruppen Flussobjekte Business Process BP... Activity1 Activity Eine Activity ist die generischer Ausdruck für in Unternehmen anfallende Tätigkeiten. Das Element Activity kann
MehrMotivation. Motivation
Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2012 Universität Duisburg-Essen Was sind nebenläufige Systeme? Ganz allgemein: Systeme, bei denen mehrere Komponenten/Prozesse nebenläufig arbeiten
MehrKlausur zur Vorlesung Grundlagen der Betriebssysteme WS 2011 / 2012
Name: Matrikelnummer: Studiengang: INF CV IM Lehramt BSc MSc BEd MEd Diplom Klausur zur Vorlesung Grundlagen der Betriebssysteme WS 0 / 0 Montag, den. Februar 0, 09: Uhr 0: Uhr Prof. Dr. D. Zöbel, Dipl.
MehrVorlesung Betriebssysteme Hochschule Niederrhein, Prof. Pohle-Fröhlich, SS 2015
1. Einführung Vorlesung Betriebssysteme Hochschule Niederrhein, Prof. Pohle-Fröhlich, SS 2015 1.1 Inhalt der Vorlesung Ziele und Funktionen von Betriebssystemen Unix und Linux: Benutzerschnittstelle, Skript-Programmierung
MehrSurefireKernel ÜBERSICHT SPEZIFIKATION. www.triadem.ch. Sicherheitskernel DATASHEET
Sicherheitskernel ÜBERSICHT SurefireKernel ist ein schlanker skalierbarer nicht preemptiver Echtzeit-Kernel der für den Einsatz auf Kontrollersysteme optimiert ist. Er verfügt über eine Realtime-Überwachung
MehrPrüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik)
Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik) Prüfer: Prof. Dr. Haake Semester der Prüfung: WS 10/11 Datum der Prüfung: 02.05.2011 Dauer: ca. 25 min Note: 2.0 Hier
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
MehrB.5 Prozessverwaltung B.5. Prozessverwaltung. 2002 Prof. Dr. Rainer Manthey Informatik II 1
Prozessverwaltung Prozessverwaltung 2002 Prof. Dr. Rainer Manthey Informatik II 1 Prozesse Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) ) von einem Rechner abgearbeitet.
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
MehrKV Betriebssysteme (Peter René Dietmüller, Michael Sonntag) Synchronisation
SS 2003 KV Betriebssysteme (Peter René Dietmüller, Michael Sonntag) Synchronisation 1 Sequentielle Prozesse Zu jedem Zeitpunkt t wird genau eine einzige Instruktion ausgeführt Hängt ab vom Abstraktionsgrad
MehrBesprechung Aufgabe 5 (crawl) POSIX-Threads. Problem: UNIX-Prozesskonzept ist für viele heutige Anwendungen unzureichend
U7 6. Übung U7 6. Übung U7-1 Motivation von Threads U7-1 Motivation von Threads Besprechung Aufgabe 5 (crawl) OSIX-Threads Motivation Thread-Konzepte pthread-ai Koordinierung UNIX-rozesskonzept: eine Ausführungsumgebung
MehrGrundlagen der Informatik für Ingenieure I
3 Einführung in das objektorientierte Programmier-Paradigma 3 Einführung in das objektorientierte Programmier-Paradigma 3.1.1 Top-down structured design 3.1.2 Data-driven design 3.1.3 Object-oriented design
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:
MehrObjektorientierte Programmiersprachen
Objektorientierte Programmiersprachen 1960 Algol 1970 Simula Pascal 1980 Smalltalk C Ada 1990 C++ Eiffel Eine ovale Box symbolisiert eine objektorientierte Programmiersprache. Eine rechteckige Box steht
MehrBetriebssysteme. Dipl.-Ing.(FH) Volker Schepper
1. Der Prozess beginnt im Zustand Erzeugt, nachdem sein Vaterprozess den Systemaufruf fork() (s.u.) abgesetzt hat. In diesem Zustand wird der Prozess-Kontext initialisiert. 2. Ist diese Aufbauphase abgeschlossen,
MehrMonitore. Klicken bearbeiten
Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition
MehrRechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance
Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance 5. November 2013 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität Basel Repetition
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
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
Mehr13. Übung mit Musterlösung
13. Übung mit Musterlösung 1 Lösung 1 Teil 1.Multiple Choice) Bewertung: Ein Punkt für richtige Antwort, für jede falsche Antwort ein Punktabzug. a) Für die Exponentialverteilung ist die Zeit bis zum nächsten
Mehr2.2 Prozesse in Java
2.2 Prozesse in Java! Java sieht kein Schlüsselwort für Prozesse vor, sondern bestimmte Klassen und Schnittstellen. Mit anderen Worten: der Prozessbegriff wird mit Mitteln der Objektorientierung eingeführt.
MehrHochschule Augsburg. Herzlich willkommen! 26.11.2015 Hochschule Augsburg / Fakultät Elektrotechnik, Prof. F. Haunstetter 1
Hochschule Augsburg Herzlich willkommen! 26.11.2015 Hochschule Augsburg / Fakultät Elektrotechnik, Prof. F. Haunstetter 1 Zeitplan Zeit Aktion 14.00 Warm Up (R. H3.14) 14.15 Zielvorstellung / Projektaufgabe
MehrProgrammierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.
Agenda für heute, 4. Mai, 2006 Programmierparadigmen Imperative Programmiersprachen In Prozeduren zusammengefasste, sequentiell ausgeführte Anweisungen Die Prozeduren werden ausgeführt, wenn sie als Teil
Mehr2 Grundlagen der Programmierung
2 Grundlagen der Programmierung In diesem Kapitel bereiten wir die Grundlagen für ein systematisches Programmieren. Wichtigstes Ziel ist dabei die Herausarbeitung der fundamentalen Konzepte von Programmiersprache.
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
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
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 it-akademie Bayern z/os und OS/390 Lehrgang 2008 Prof. Dr.-Ing. Wilhelm G. Spruth Teil 5 Prozessverwaltung
Betriebssysteme it-akademie Bayern z/os und OS/390 Lehrgang 2008 Prof. Dr.-Ing. Wilhelm G. Spruth Teil 5 Prozessverwaltung copyright W. G. Spruth, 10-2005 Hardware Extern E/A Programm System- Fehler Aufruf
MehrRechnerarchitekturen und Betriebssysteme (CS201): Intro Betriebssysteme, SW Interrupts, Supervisory Call
Rechnerarchitekturen und Betriebssysteme (CS201): Intro Betriebssysteme, SW Interrupts, Supervisory Call 4. November 2014 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität
Mehr5 Zugriffskontrolle 5.1 Systemmodell 5.1.1 Grundmodell Grundmodell zur Beschreibung der VorgŠnge in einem IVS:
5 Zugriffskontrolle 5.1 Systemmodell 5.1.1 Grundmodell Grundmodell zur Beschreibung der VorgŠnge in einem IVS: Zugriffssystem: < S,P,O > S Menge von Subjekten P Menge von Operatoren O Menge von Objekten
MehrA Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis...
1 Einführung................................................ 1 1.1 Was ist ein Betriebssystem?............................... 1 1.1.1 Betriebssystemkern................................ 2 1.1.2 Systemmodule....................................
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
MehrParallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität
Parallelrechner (1) Motivation: Bedarf für immer leistungsfähigere Rechner Leistungssteigerung eines einzelnen Rechners hat physikalische Grenzen: Geschwindigkeit von Materie Wärmeableitung Transistorgröße
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
MehrGrundlagen der Parallelisierung
Grundlagen der Parallelisierung Philipp Kegel, Sergei Gorlatch AG Parallele und Verteilte Systeme Institut für Informatik Westfälische Wilhelms-Universität Münster 3. Juli 2009 Inhaltsverzeichnis 1 Einführung
MehrVBA-Programmierung: Zusammenfassung
VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung
MehrNeues vom STRIP Forth-Prozessor
Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft April 2011 in Goslar Willi Stricker 1 STRIP Forth-System Praxisdemonstration Aufbau Hardware Aufbau Software 2 STRIP-Kernel Clocks So,S1 Clock
MehrArchitektur Verteilter Systeme Teil 6: Interprozess-Kommunikation
Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation 09.05.15 1 Literatur [6-1] http://php.net/manual/de/book.sockets.php [6-2] http://de.wikipedia.org/wiki/socket_(software) [6-3] http://php.net/manual/de/book.network.php
MehrProzessor (CPU, Central Processing Unit)
G Verklemmungen G Verklemmungen Einordnung: Prozessor (CPU, Central Processing Unit) Hauptspeicher (Memory) Ein-, Ausgabegeräte/ Periphere Geräte (I/O Devices) externe Schnittstellen (Interfaces) Hintergrundspeicher
MehrCONCURRENCY MODELS. Auf der Suche nach dem heiligen Gral der ManyCores Peter Sturm. (c) Peter Sturm, Universität Trier
CONCURRENCY MODELS Auf der Suche nach dem heiligen Gral der ManyCores Peter Sturm 1 AUTOVERKEHR 61.5 Millionen zugelassene Autos (Anfang 2014) Quelle: Statistisches Bundesamt 2 3 SPERRGRANULAT Die Zeit
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
MehrVirtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44
Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock
Mehr13 OOP MIT DELPHI. Records und Klassen Ein Vergleich
13 OOP MIT DELPHI Delphi war früher "Object Pascal". Dieser Name impliziert eine Funktionalität, welche in der Welt der Programmierung nicht mehr wegzudenken ist: die objektorientierte Programmierung,
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
MehrParallelverarbeitung. Parallelverarbeitung. 2. Grundlagen. 2. Grundlagen. 2.1 Parallelität
2. Grundlagen Parallelverarbeitung SS 2005 Inhalt Parallelität Ebenen der Parallelität Parallelrechnerarchitekturen Parallele Programmiermodelle 18.04.05 Roland Wismüller, Univ. Siegen roland.wismueller@uni-siegen.de
MehrKapitel 2: Betriebssysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Vorlesung: Dr. Peer Kröger Übungen:
MehrBetriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen
Albrecht Achilles 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Betriebssysteme Eine kompakte Einführung mit Linux
MehrVortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Bruno Kleinert fuddl@gmx.de. 20. Juni 2007
User Mode Linux (UML) Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren Friedrich-Alexander-Universität Erlangen-Nürnberg Bruno Kleinert fuddl@gmx.de 20. Juni 2007 Überblick
Mehr2. Hintergrundverarbeitung in Android: Services und Notifications
2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht: In Mobis 1: Threads; hier genauerer Blick auf Services
MehrKapitel III. Prozessverwaltung. VO Betriebssysteme
Kapitel III Prozessverwaltung V 1 Was ist ein Prozess? Prozesse ein exekutierendes Programm (aktive Einheit) ein Prozess benötigt Ressourcen: CPU-Zeiten, Speicher, Files, I/O Systeme Betriebssystem ist
MehrProgrammierkurs: Delphi: Einstieg
Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache
MehrInformatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-
Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik
MehrVerteilte Systeme SS 2015. Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404. Stand: 7.
Verteilte Systeme SS 2015 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 7. Juli 2015 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/13) i
MehrSC18IM700-Tester v1.0. 1. Einleitung
SC18IM700-Tester v1.0 1. Einleitung Der SC18IM700-Tester ist ein mittels Visual Studio.NET und in der Programmiersprache C# entwickeltes Programm. Es lehnt sich an der Funktion eines einfachen Terminal-
Mehr3 Programmiermodelle für parallele und verteilte Systeme
3 Programmiermodelle für parallele und verteilte Systeme Das vorherrschende Programmiermodell für parallele und verteilte Systeme ist das Client Server Modell. Das Client Server Modell ist unabhängig von
MehrKonzepte von Betriebssystem Komponenten. Aufbau eines Modernen Betriebssystems (Windows NT 5.0)
Konzepte von Betriebssystem Komponenten Aufbau eines rnen Betriebssystems (Windows NT 5.0) Moritz Mühlenthaler 14.6.2004 1.Das Designproblem a) Überblick b) Design Goals c) Möglichkeiten der Strukturierung
MehrVerbessertes Konzept: Monitore
Verbessertes Konzept: Monitore Ein Nachteil von Semaphoren ist die Notwendigkeit zur expliziten Anforderung P und Freigabe V des kritischen Bereiches durch den Programmierer Vergißt der Entwickler z.b.
MehrRTEMS- Echtzeitbetriebssystem
RTEMS- Echtzeitbetriebssystem Name: Hussein Hammoud Matrikel- Nr.: 230768 Studiengang: Technische Informatik Fach: Projekt Eingebettete Kommunikation Technische Universität Berlin Sommersemester 2006 RTEMS-
MehrSchmitt, Günter (1996): Fortran 90 Kurs technisch orientiert, R. Oldenbourg Verlag, München
MANUEL KALLWEIT & FABIAN KINDERMANN Literaturempfehlung: Vorlesungsskript von Heidrun Kolinsky zu FORTRAN 90/95: http://www.rz.uni-bayreuth.de/lehre/fortran90/vorlesung/index.html Schmitt, Günter (1996):
MehrEnterprise Computing
Enterprise Computing Prof. Dr.-Ing. Wilhelm G. Spruth WS 2011/12 Teil 2 Verarbeitungsablauf Systemarchitektur Multiprogrammierung Virtueller Speicher Überwacher (Supervisor) Cache CPU s Hauptspeicher I/O
MehrAusarbeitung im Rahmen der PG Autolab zum Thema: OSEK 1 -OS. geschrieben von Oliver Botschkowski
Ausarbeitung im Rahmen der PG Autolab zum Thema: OSEK 1 -OS geschrieben von Oliver Botschkowski 1 Offene Systeme und deren Schnittstelle für die Elektronik im Kraftfahrzeug 1 Oliver Botschkowski - OSEK-OS
MehrSoftware ubiquitärer Systeme
Software ubiquitärer Systeme Übung 3: Aspekte in Betriebssystemen und AspectC++-Tutorial Michael Engel und Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund
MehrKapitel I Betriebssysteme: Aufgaben und Überblick Betriebssysteme: VO Betriebssysteme 2
Vorlesung: Betriebssysteme T. Fahringer Institut für Informatik Universität Innsbruck VO Betriebssysteme Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick VO Betriebssysteme
MehrDatenbanken: Transaktionskonzept und Concurrency Control
Wesentlich für das Arbeiten mit Datenbanken sind konsistente Datenbestände! Folgerung: es muss sichergestellt werden, dass Datenmanipulationen von Benutzern immer in einem erneut konsistenten Zustand der
Mehr