6.Vorlesung Betriebssysteme Hochschule Mannheim

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "6.Vorlesung Betriebssysteme Hochschule Mannheim"

Transkript

1 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

2 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 2/40 Wiederholung vom letzten Mal Virtueller Speicher Memory Management Unit Seitenorientierter Speicher (Paging) Segmentorientierter Speicher (Segmentierung) Systemaufrufe (System Calls) Prozesskontext Benutzerkontext Hardwarekontext Systemkontext

3 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 3/40 Heute Prozessmodelle 2-Zustands-Prozessmodell 3-Zustands-Prozessmodell 5-Zustands-Prozessmodell 6-Zustands-Prozessmodell 7-Zustands-Prozessmodell Prozessmodell von Linux/UNIX Prozesse (Teil 2) Prozesstabellen und Prozesskontrollblöcke Zustandslisten Threads Kernel-Level-Threads User-Level-Threads

4 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 4/40 Prozesszustände Frage Ein Prozess wird zu Beginn der einer Programmausführung erzeugt und bei der Terminierung des Programms beendet Die Ausführung eines Prozesses kann zur Erzeugung bzw. Beendigung weiter Prozesse führen Jeder Prozess befindet sich zu jedem Zeitpunkt in einem Zustand Wie viele unterschiedliche Zustände es gibt, hängt vom Prozessmodell des Betriebssystems ab Wie viele Prozesszustände braucht ein Prozessmodell mindestens?

5 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 5/40 Das 2-Zustands-Prozessmodell Prinzipiell genügen zwei Prozesszustände rechnend: Einem Prozess wurde die CPU zugeteilt nicht rechnend: Der Prozess wartet auf die Zuteilung der CPU Da die nicht-zuteilung der CPU für einen Prozess verschiedene Ursachen haben kann, kann das Prozessmodell praktisch beliebig verfeinert werden nicht rechnend Zuteilung der CPU Entzug der CPU assign resign rechnend Start Terminierung

6 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 6/40 Das 2-Zustands-Prozessmodell (Implementierung) Die Prozesse im Zustand nicht rechnend müssen in einer Warteschlange gespeichert werden, in der sie auf ihre Ausführung warten Dieses Modell beschreibt auch das Verhalten des Dispatchers Aufgabe des Dispatchers ist die Umsetzung der Zustandsübergänge Die Bestimmung der Reihenfolge, welcher Prozess als nächstes Zugriff auf die CPU erhält, regelt das verwendete Scheduling-Verfahren

7 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 7/40 Konzeptioneller Fehler des 2-Zustands-Prozessmodells Das 2-Zustands-Prozessmodell geht davon aus, dass alle Prozesse immer zur Ausführung bereit sind Das ist unrealistisch! Es gibt fast immer Prozesse, die blockiert sind Mögliche Gründe, warum Prozesse blockiert sind: Warten auf die Eingabe oder Ausgabe eines E/A-Geräts Warten auf das Ergebnis eines anderen Prozesses Warten auf eine Reaktion des Benutzers Lösung: Die nicht rechnenden Prozesse müssen in zwei Gruppen unterschieden werden Prozesse die bereit (ready) sind Prozesse die blockiert (blocked) sind = 3-Zustands-Prozessmodell

8 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 8/40 Das 3-Zustands-Prozessmodell Beim 3-Zustands-Prozessmodell befindet sich jeder Prozess in einem der folgenden drei Zustände rechnend (running): Der Prozess besitzt den Zugriff auf die CPU und führt auf dieser Instruktionen aus bereit (ready): Der Prozess könnte unmittelbar Instruktionen auf der CPU ausführen und wartet aktuell auf die Zuteilung der CPU blockiert (blocked): Der Prozess kann momentan nicht weiter ausgeführt werden und wartet aktuell auf das Eintreten eines Ereignisses oder einer Bedingung Dabei kann es sich z.b. um eine Nachricht eines anderen Prozesses oder eines Eingabe-/Ausgabegeräts oder aber um das Eintreten eines bestimmten Synchronisationsereignisses handeln

9 Prinzip des 3-Zustands-Prozessmodells (1) add: Prozesserzeugung durch einen Programmstart oder einen anderen Prozess und Einordnung in die Liste der Prozesse im Zustand bereit retire: Der aktuell rechnende Prozess terminiert Alle durch den Prozess belegten Ressourcen werden freigegeben assign: Die CPU wird einem Prozess im Zustand bereit zugeteilt, der nun mit der CPU arbeiten kann und in den Zustand rechnend wechselt Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 9/40

10 block: Der rechnende Prozess wartet auf eine Nachricht oder ein Synchronisationsereignis und wechselt in den Zustand blockiert resign: Dem rechnenden Prozess wird wegen einer Entscheidung des Schedulers die CPU entzogen und er wechselt in den Zustand bereit ready: Die Bedingung, wegen der der Prozess blockiert wurde, ist nun erfüllt und der Prozess wechselt in den Zustand bereit Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prinzip des 3-Zustands-Prozessmodells (2)

11 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Das 3-Zustands-Prozessmodell (Implementierung) Eine Implementierung könnte auf zwei Warteschlangen basieren Eine Warteschlange für die blockierten Prozesse

12 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Das 3-Zustands-Prozessmodell (Implementierung) Mehrere Warteschlangen für die blockierten Prozesse

13 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Das 5-Zustands-Prozessmodell Es kann empfehlenswert sein, das 3-Zustands-Prozessmodell um zwei weitere Prozesszustände zu erweitern neu (new): Der Prozess ist erzeugt, wurde aber vom Betriebssystem noch nicht der Menge der Prozesse zugefügt, die unmittelbar Instruktionen auf der CPU ausführen könnten und auf die Zuteilung der CPU warten exit (exit): Der Prozess existiert noch, wurde vom Betriebssystem aber aus der Menge der ausführbaren Prozesse entfernt Die Prozesszustände neu und exit haben durchaus ihre Berechtigung Auf manchen Systemen ist die Anzahl der ausführbaren Prozesse limitiert, um Ressourcen (Speicher) zu sparen und den Grad des Mehrprogrammbetriebs festzulegen

14 Prinzip des 5-Zustands-Prozessmodells Ereignis eingetreten ready blockiert (blocked) Warten auf Ereignis block bereit Zuteilung der CPU assign rechnend (ready) Entzug der CPU resign (running) enter exit neu (new) beendet (exit) add retire Start Terminierung Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40

15 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Das 6-Zustands-Prozessmodell Ist nicht genügend (realer) Hauptspeicher für alle laufenden Prozesse verfügbar, was häufig der Fall ist, müssen Teile von Prozessen oder ganze Prozesse ausgelagert werden Der Vorgang des Auslagerns wird als Swapping bezeichnet Ein intelligentes Betriebssystem wird Prozesse auslagern, die im Zustand blockiert sind Die ausgelagerten Prozesse werden in eine Warteschlange auf die Festplatte geschrieben Durch den freigewordenen Platz kann ein Prozess in der Warteschlange der ausgelagerten Prozesse oder ein neuer Prozess in den Speicher geladen und von der CPU ausgeführt werden Es macht also durchaus Sinn, das 5-Zustands-Prozessomodell um einen weiteren Prozesszustand suspendiert (suspended) zu erweitern

16 Prinzip des 6-Zustands-Prozessmodells suspendiert (suspended) suspendieren blockiert Warten auf Ereignis Ereignis eingetreten (blocked) block ready aktivieren bereit Zuteilung der CPU assign rechnend (ready) Entzug der CPU resign (running) enter exit neu (new) beendet (exit) add retire Start Terminierung Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40

17 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Optimierung des 6-Zustands-Prozessmodells Wurde ein Prozess ausgelagert (suspendiert), ist es besser, den frei gewordenen Platz im Hauptspeicher zu verwenden einen ausgelagerten Prozess zu aktivieren, als einen neuen Prozess zu nehmen Dieses Vorgehen macht aber nur Sinn, wenn der aktivierte Prozess nicht mehr blockiert ist Was im 6-Zustands-Prozessmodell fehlt, ist die Möglichkeit, die ausgelagerten Prozesse in blockierte und nicht-blockierte Prozesse zu unterscheiden

18 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prinzip des 7-Zustands-Prozessmodells

19 Prozessmodell von Linux/UNIX Unter Linux/UNIX-Betriebssystemen gilt das 9-Zustands-Prozessmodell Der Zustand rechnend (running) wird unterteilt in die Zustände benutzer rechnend (user running) für Prozesse im Benutzermodus kernel rechnend (kernel running) für Prozesse im Kernel-Modus Der Zustand bereit (ready) wird unterteilt in die Zustände bereit (ready) für Prozesse, die neu in den Speicher geladen oder aufgeweckt wurden verdrängt (preempted) für Prozesse, die durch einen Timeout oder eine Vorrangunterbrechung in ihrer Ausführung unterbrochen wurden Eine Verdrängung kann nur erfolgen, wenn ein Prozess gerade vom Kernel-Modus in den Benutzermodus wechselt Ist ein Prozess im Kernel-Modus, kann er nicht verdrängt werden Einige Prozesszustände haben unter Linux/UNIX andere Namen Der Prozesszustand exit heißt zombie Der Prozesszustand suspendiert heißt swapped Der Prozesszustand blockiert heißt asleep Der Prozesszustand neu heißt created Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40

20 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prinzip des 9-Zustands-Prozessmodells

21 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prozesse Das Betriebssystem führt Buch über die laufenden Prozesse Es muss wissen, welche Prozesse aktuell bearbeitet werden müssen Es muss wissen, welche Eigenschaften die Prozesse haben Wird ein Prozess angehalten, muss er zu einem späteren Zeitpunkt in dem Zustand, in dem er gestoppt wurde, wieder gestartet werden Alle wichtigen Informationen über den Prozess müssen für die Dauer der Unterbrechung zwischengespeichert werden Hat ein Prozess zum Zeitpunkt der Unterbrechung Dateien geöffnet, muss für jede Datei der Zeiger der aktuellen Position innerhalb der Datei gespeichert werden In der Prozesstabelle speichert das Betriebssystem alle Informationen zu allen Prozessen des Systems gesammelt Einzige Ausnahme: Der Inhalt des Adressraums wird nicht in der Prozesstabelle gespeichert Die Prozesstabelle wird als Array oder verkettete Liste realisiert Für jeden Prozess existiert eine eigene Tabelle, der Prozesskontrollblock

22 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prozesstabelle und Prozesskontrollblöcke (1) Jeder Prozess hat eine Prozessidentifikation (process identifier), kurz PID genannt, zur eindeutigen Identifikation :~$ ps PID TTY TIME CMD 1876 pts /3 00: 00: 04 bash 2411 pts /3 00: 00: 00 ps Im Prozesskontrollblock jedes Prozesses befindet sich: Die Prozessidentifikation (PID) Der aktuelle Prozesszustand (rechnend, blockiert, bereit) Inhalt der Prozessorregister (Befehlszähler, Stack Pointer, usw.) Eine Liste mit zugeordneten Bereichen im Hauptspeicher Vom Prozess geöffnete Daten und zugeordnete Peripheriegeräte Verwaltungs-/Schedulinginformationen (Priorität, Laufzeit, usw.)

23 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prozesstabelle und Prozesskontrollblöcke (2) Im Prozesskontrollblock sind die Informationen gespeichert, die nötig sind, wenn ein Prozess vom Zustand rechnend in die Zustände bereit oder blockiert übergeht, um nach der Unterbrechung ein nahtloses Weiterlaufen des Prozesses zu garantieren Prozesstabelle... Prozesskontrollblöcke Prozessidentifikation (PID) Zustand Registerinhalte offene Dateien zugeordnete Peripherie Verwaltungsinformationen

24 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Zustandslisten bereit-liste Neben der Prozesstabelle mit den Prozesskontrollblöcken führt das Betriebssystem noch verkettete Listen für die Prozesse mit den Zuständen bereit und blockiert Die Liste der Prozesse mit dem Zustand bereit enthält alle Prozesse, die unmittelbar ausgefüht werden können, aber auf die Zuteilung des Prozessors warten Die Prozesse in der bereit-liste können nach unterschiedlichen Kriterien, u.a. nach den Prozessprioritäten oder der Wartezeit, sortiert werden

25 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Zustandslisten blockiert-liste Für die Prozesse im Zustand blockiert gibt es mehrere Listen Jedem Ereignis, auf das einer oder mehr Prozesse warten, ist eine eigene Liste zugeordnet, in der alle Prozesse aufgeführt sind, die auf das Ereignis warten

26 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Konzeptionelle Prozessverwaltung Quelle: Eduard Glatz, Betriebssysteme, dpunkt Verlag, 2010

27 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Zustandsübergänge Für einen Zustandsübergang eines Prozesses wird der Prozesskontrollblock des betreffenden Prozesses aus der alten Zustandsliste entfernt und in die neue Zustandsliste eingefügt Für die Prozesse mit dem Zustand rechnend gibt es keine eigene Liste Es gibt aber eine Variable des Betriebssystems, die auf den Prozesskontrollblock des aktuell rechnenden Prozesses zeigt Beim Übergang eines Prozesses in den Zustand rechnend werden die Registerinhalte des Prozessors aus dem Prozesskontrollblock geladen Beim Übergang aus dem Zustand rechnend in einen anderen Zustand werden die Registerinhalte des Prozessors in den Prozesskontrollblock gesichert (gerettet)

28 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prozesse und Threads (1) Die Kontexte von Prozessen sind voneinander abgeschottet Jeder Prozess hat eigene Speicherbereiche, Registerinhalte, Peripheriezugriffe, geöffnete Dateien, usw. Ein Prozess kann auf den Kontext eines anderen Prozesses nicht zugreifen. = Sicherheit und Robustheit Ein Problem von Prozessen ist, dass beim Umschalten des Prozessors von einem Prozess zu einem anderen Prozess immer Daten gesichert und geladen werden müssen Diese häufigen Kopiervorgänge sind sehr zeitaufwendig Ein weiterer Nachteil ist, dass es für Aktivitäten, die eng miteinander kooperieren sollen, besser und effizienter ist, wenn ihre Speicherbereiche nicht voneinander getrennt sind = Lösung: Threading (Fädelung) Ein Thread ist ein leichtgewichtiger Prozess und eine Aktivität (Programmausführung) innerhalb eines Prozesses Sind Prozesse in Threads unterteilt, spricht man von Multithreading

29 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Prinzip von Prozessen und Threads Der Prozesskontext ist für alle Threads eines Prozesses gleich. Dazu gehört: Adressraum geöffnete Dateien Peripheriezugriffe usw. Jeder Thread hat eigene Befehlszähler Zustände Registerinhalte usw. Prozess THEN z := y y := x x := z WHILE x > y x := x - y RETURN x Thread 1 Thread 2 x < y? ELSE

30 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Abgrenzung von Prozessen, Tasks und Threads Ein Thread ist ein leichtgewichtiger Prozess und eine Aktivität (Programmausführung) innerhalb eines Prozesses Es können mehrere nebenläufige Programmausführungen im gleichen Kontext aktiv sein und ihre Daten gemeinsam nutzen Ein Prozess kann aus einem oder mehreren Threads bestehen, die sich innerhalb eines Prozesses die betriebssytemabhängigen Ressourcen, darunter Speicher, Dateien und Netzwerkverbindungen, teilen In diesem Fall spricht man häufig nicht mehr von Prozessen, sondern von Tasks Ein Thread ist nicht identisch mit einem Prozess oder Task Ein Prozess ist ein single-threaded Task mit einem Adressraum Ein Task ist multi-threaded In einem Task können im Gegensatz zum Prozess mehrere Threads definiert und nebenläufig im gleichen Adressraum ausgeführt werden

31 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Threads Durch Threads kann ein Programm (Prozess/Task) mehrfach an unterschiedlichen Stellen ausgeführt werden Der Prozessor kann zwischen Threads umschalten, ohne dass dazu aufwendige Kontextwechsel zwischen dem normalen User Mode (Benutzermodus) um dem privilegierten Kernel Mode (Kernel-Modus) notwendig sind Alle Threads eines Programms arbeiten in dem gleichen Adressraum und besitzen die gleichen Betriebsmittel Aus diesem Grund können sie direkt miteinander kommunizieren und zusammenarbeiten Durch die Möglichkeit der direkten Kommunikation zwischen den Threads eines Programms sind die Daten, auf denen die Threads arbeiten weniger geschützt, als bei Prozessen mit nur einem Thread

32 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Kernel-Level-Threads und User-Level-Thread Die Threads werden üblicherweise durch ein sogenanntes Thread Package realisiert Im Thread Package sind alle Mechanismen implementiert, die für die Arbeit mit Threads gebraucht werden Dazu gehört das Erzeugen, Koordinieren und Löschen der Threads Das Thread Package kann entweder im Betriebssystemkern (Kernel-Modus) oder in einer Bibliothek implementiert sein, die im Speicherbereich des Benutzers (Benutzermodus) läuft. Dementsprechend spricht man auch von Kernel-Level-Threads und User-Level-Threads

33 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Kernel-Level-Threads Vorteile Das Scheduling des Betriebssystems wird für die Threads verwendet Darum können auf Multiprozessor- bzw. Multicore-Systemen die Kernel-Level-Threads eines Prozesses auf mehreren Prozessoren bzw. Cores verteilt laufen Ein Thread, der einen blockierenden Systemaufruf durchführt, blockiert nur sich selbst und nicht die anderen Threads des Prozesses Nachteile Kernel-Level-Threads sind ineffizienter als User-Level-Threads, da jede Threadoperation ein Systemaufruf ist, was einen Wechsel vom User in den Kernel Mode notwendig macht Das Erzeugen eines Threads erfordert zusätzlichen Initialisierungsaufwand im Systemkern

34 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 User-Level-Threads Vorteile Threads können auch auf Betriebssystemen verwendet werden, die eigentlich gar keine Threads unterstützen User-Level-Threads sind (auf Single-Core-Prozessoren) effizienter als Kernel-Level-Threads Nachteile Die Threads eines Prozesses können auf Multiprozessor-Systemen nicht auf mehreren Prozessoren verteilt laufen Es kann immer nur ein Thread eines Prozesses rechnen, da der Kernel die CPU verwaltet und nur den Prozess, aber nicht die Threads kennt Führt ein Thread einen blockierenden Systemaufruf durch, blockiert er den gesamten Prozess Beispiele für User-Level-Thread Packages Pthreads (POSIX Threads) für Windows = Pthreads-w32 OpenMP (Open Multi-Processing) GNU Pth (Portable Threads)

35 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Kernel-Level-Threads und User-Level-Threads

36 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Beispiele für den sinnvollen Einsatz von Threads (1) Ein Textverarbeitungsprogramm besteht aus drei Threads Ein Thread ist für die Interaktion mit dem Benutzer zuständig... ein anderer Thread für die Formatierung des Textes auf dem Bildschirm... und der dritte Thread erstellt alle 10 Minuten eine Sicherung vom aktuellen Text Der Einsatz von Threads hat hier den Vorteil, dass der Benutzer während der ständigen Neuformatierung des Textes und dem Zwischenspeichern weiterarbeiten kann und es nicht zu Unterbrechungen (Hängern) kommt Anstatt drei Threads drei Prozesse hier zu verwenden wäre nicht sinnvoll, da die Prozesse alle mit dem gleichen, geöffneten Dokument arbeiten müssten Threads arbeiten im gemeinsamen Speicher und haben so alle Zugriff auf das geöffnete Dokument

37 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Beispiele für den sinnvollen Einsatz von Threads (2) Ein -Programm besteht aus vier Threads: Thread 1: Interaktion mit dem Benutzer Thread 2: Formatierung der Programmoberfläche Thread 3: Automatisches Holen neuer s alle 5 Minuten Thread 4: Spam-Filter auf neue s anwenden Bei modernen Raytracing-Programmen, zur Berechnung von 3D-Szenen, laufen alle rechenintensiven Vorgänge als eigene Threads ab So kann während des Renderns weitergearbeitet werden Während an einer Szene gerechnet wird, kann an der nächsten Szene im Editor gleich weitergearbeitet werden

38 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 JAVA-Threads Thread-Management durch JVM In der Java Virtual Machine laufen alle Java-Programme als Threads Frühe Java Virtual Machines schotten die in ihr laufenden Prozesse und Threads vom Betriebssystem ab Thread-Management erfolgt hierbei durch die Java Virtual Machine Vorteil: Ermöglicht die Programmierung von Threads auch dann, wenn das Betriebssystem keine Threads unterstützt Nachteil: JAVA-Prozesse bzw. JAVA-Threads können nicht mit Werkzeugen des Betriebssystems kontrolliert werden Die Java Virtual Machine stellt selbst keine eigenen Funktionen zur Prozesskontrolle und -steuerung bereit Wenn Fehler in Java-Prozessen bzw. Java-Threads auftreten, muss häufig die gesamte Java Virtual Machine beendet werden

39 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 JAVA-Threads Mapping auf Betriebssystem-Threads Moderne Java Virtual Machines mappen die JAVA-Threads standardmäßig auf Betriebssystem-Threads Thread-Management erfolgt durch das Betriebssystem Mapping auf Betriebssystem-Threads ist nur möglich, wenn das Betriebssystem Threads unterstützt Vorteil: Die 1:1-Abbildung ermöglicht eine einfache Verteilung auf Mehrprozessorsystemen Nachteil: Alle genutzten Bibliotheken müssen Thread-sicher sein Änderungen der einzelnen Threads müssen koordiniert werden um die gleichzeitige Manipulation von Daten durch mehrere Threads und damit inkonsistenten Daten zu verhindern Thread-Unterstützung durch das Betriebssystem und Thread-Sicherheit sind heute Standard

40 Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS /40 Nächste Vorlesung Nächste Vorlesung:

Systemsoftware (SYS)

Systemsoftware (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

Mehr

Betriebssysteme (BTS)

Betriebssysteme (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

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme 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

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Systeme 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

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme 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

Mehr

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten

Mehr

7.Vorlesung Grundlagen der Informatik

7.Vorlesung Grundlagen der Informatik Dr. Christian Baun 7.Vorlesung Grundlagen der Informatik Hochschule Darmstadt WS1112 1/44 7.Vorlesung Grundlagen der Informatik Dr. Christian Baun Hochschule Darmstadt Fachbereich Informatik christian.baun@h-da.de

Mehr

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

Architektur 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 =

Mehr

Dämon-Prozesse ( deamon )

Dä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

Mehr

Einführung. Anwendung. logischer Adreßraum. Kontrollfluß (Thread) = CPU führt Instruktionen aus. Was charakterisiert einen Kontrollfluß?

Einfü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

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme 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

Mehr

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Betriebssysteme. 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,

Mehr

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind

Systemprogramme 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

Mehr

Kapitel 2: Betriebssysteme

Kapitel 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:

Mehr

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

(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

Mehr

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )

Sequentielle 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

Mehr

Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun. Übungsklausur

Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun. Übungsklausur Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten

Mehr

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Virtueller 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

Mehr

7. Vorlesung Betriebssysteme

7. Vorlesung Betriebssysteme Dr. Christian Baun 7. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/62 7. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr. Christian

Mehr

Round-Robin Scheduling (RR)

Round-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

Mehr

Teil 3: Konzepte von Betriebssystemen

Teil 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

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 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

Mehr

Rechnernutzung in der Physik. Betriebssysteme

Rechnernutzung 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:

Mehr

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. 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.

Mehr

Technische Informatik 1

Technische 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

Task A Zündung. Task B Einspritzung. Task C Erfassung Pedalwert. J. Schäuffele, Th. Zurawka: Automotive Software Engineering, Vieweg, 2003

Task 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

Mehr

Was 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. 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

Mehr

Betriebssysteme (BTS)

Betriebssysteme (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

Mehr

Datentechnik. => Das Rechenergebnis ist nur dann sinnvoll, wenn es rechtzeitig vorliegt. Die Zeit muß daher beim Programmdesign berücksichtigt werden.

Datentechnik. => 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

Mehr

Inhaltsverzeichnis. 2.4 Thread-Systeme. 2.1 Was ist ein Prozess? 2.2 Scheduling. 2.3 Interprozesskommunikation

Inhaltsverzeichnis. 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

Mehr

Einführung in Eclipse und Java

Einführung in Eclipse und Java Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik

Mehr

Betriebssysteme Kapitel E : Prozesse

Betriebssysteme 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

Mehr

Operating System Kernels

Operating 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

Mehr

Threads Einführung. Zustände von Threads

Threads Einführung. Zustände von Threads Threads Einführung Parallelität : Zerlegung von Problemstellungen in Teilaufgaben, die parallelel ausgeführt werden können (einfachere Strukturen, eventuell schneller, Voraussetzung für Mehrprozessorarchitekturen)

Mehr

5.Vorlesung Betriebssysteme Hochschule Mannheim

5.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun 5.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 1/41 5.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun Karlsruher Institut für Technologie Steinbuch Centre for Computing

Mehr

Prozesse 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 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

Mehr

Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Bruno Kleinert fuddl@gmx.de. 20. Juni 2007

Vortrag 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

Mehr

Begriff: Scheduling Planung, Schedule Plan. Verplanung der CPU-Zeit an die Threads (bzw. Prozesse)

Begriff: 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

Betriebssystembau (BSB)

Betriebssystembau (BSB) Betriebssystembau (BSB) 6. Übung http://ess.cs.tu-.de/de/teaching/ws2013/bsb/ Olaf Spinczyk olaf.spinczyk@tu-.de http://ess.cs.tu-.de/~os AG Eingebettete System Informatik 12, TU Dortmund Agenda Vorstellung

Mehr

TIMI: Technische Informatik für Medieninformatiker

TIMI: Technische Informatik für Medieninformatiker TIMI: Technische Informatik für Medieninformatiker Bachelor-Studiengang Digitale Medien Medieninformatik SS 2004 Niels Pollem Arbeitsgruppe Rechnernetze (Prof. Dr.-Ing. Ute Bormann) Scheduling:

Mehr

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen)

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) 1 Prozesse Bei Betriebssystemen stoßen wir des öfteren auf den Begriff Prozess als wahrscheinlich am häufigsten verwendeter und am unklarsten

Mehr

Systeme 1. Kapitel 5. Scheduling

Systeme 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

Mehr

Betriebssysteme (BTS)

Betriebssysteme (BTS) 8.Vorlesung Betriebssysteme (BTS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme 27.4.2007 Heute 1.Testklausur mit 41 Fragen aus den Vorlesungen

Mehr

Lösungsskizzen zur Abschlussklausur Betriebssysteme

Lö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,

Mehr

Threads and Scheduling

Threads 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

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 3 12.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Übung zu Grundlagen der Betriebssysteme. 13. Übung 22.01.2012

Übung zu Grundlagen der Betriebssysteme. 13. Übung 22.01.2012 Übung zu Grundlagen der Betriebssysteme 13. Übung 22.01.2012 Aufgabe 1 Fragmentierung Erläutern Sie den Unterschied zwischen interner und externer Fragmentierung! Als interne Fragmentierung oder Verschnitt

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG Prozesse und Logs Linux-Kurs der Unix-AG Andreas Teuchert 27./28. Juni 2012 Prozesse unter Linux gestartete Programme laufen unter Linux als Prozesse jeder Prozess hat eine eindeutige Prozess-ID (PID)

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006

!  # $  % & Nicki Wruck worldwidewruck 08.02.2006 !"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst

Mehr

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

Prü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

Mehr

Prozesse und Scheduling

Prozesse und Scheduling Betriebssysteme für Wirtschaftsinformatiker SS04 KLAUSUR Vorbereitung mit Lösungen / Blatt 1 Prozesse und Scheduling Aufgabe 1 : Scheduling Gegeben seien die folgenden Prozesse und die Längen des jeweiligen

Mehr

Kapitel 2: Betriebssysteme

Kapitel 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:

Mehr

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 3(Musterlösung) 2014-05-05 bis 2014-05-09 Aufgabe 1: Polling vs Interrupts (a) Erläutern Sie

Mehr

Prozesse and Threads WS 09/10 IAIK 1

Prozesse and Threads WS 09/10 IAIK 1 Prozesse and Threads WS 09/10 IAIK 1 Prozesse Programm in Ausführung Mit einem Prozess verbunden: Adressraum Folge von Speicherstellen auf die der Prozess zugreifen kann Enthält ausführbares Programm,

Mehr

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) 1 Einleitung... 2 2 Download und Installation... 3 2.1 Installation von WindowsXPMode_de-de.exe... 4 2.2 Installation von Windows6.1-KB958559-x64.msu...

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG Prozesse und Logs Linux-Kurs der Unix-AG Benjamin Eberle 22. Januar 2015 Prozesse unter Linux gestartete Programme laufen unter Linux als Prozesse jeder Prozess hat eine eindeutige Prozess-ID (PID) jeder

Mehr

7.Vorlesung Betriebssysteme Hochschule Mannheim

7.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun 7.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 1/70 7.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun Karlsruher Institut für Technologie Steinbuch Centre for Computing

Mehr

U6-1 Organisatories. U6-2 Motivation von Threads. U6-3 Vergleich von Thread-Konzepten. Organisatorisches

U6-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

Mehr

Echtzeit-Multitasking

Echtzeit-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

Mehr

Übungen zum Fach Betriebssysteme Kapitel 3

Übungen zum Fach Betriebssysteme Kapitel 3 Übungen zum Fach Betriebssysteme Kapitel 3 Prof. Dr. Kern & Prof. Dr. Wienkop Prozessverwaltung 1 Prozeßauslagerung Ein Betriebssystem, das die Zustände "rechnend", "bereit" und "wartend" sowie den künstlichen

Mehr

Echtzeit-Multitasking

Echtzeit-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

Mehr

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen

Mehr

Einrichten der Outlook-Synchronisation

Einrichten der Outlook-Synchronisation Das will ich auch wissen! - Kapitel 3 Einrichten der Outlook-Synchronisation Inhaltsverzeichnis Überblick über dieses Dokument... 2 Diese Kenntnisse möchten wir Ihnen vermitteln... 2 Diese Kenntnisse empfehlen

Mehr

Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme

Test (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

Datenträgerverwaltung

Datenträgerverwaltung Datenträgerverwaltung Datenträgerverwaltung 1/9 Datenträgerverwaltung Inhaltsverzeichnis Vorgangsweise...2 Umwandeln einer Basisfestplatte in eine Dynamische Festplatte... 2 Spiegelung erstellen... 4 Partitionen

Mehr

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft Prozeß: drei häufigste Zustände Prozeß: anatomische Betrachtung jeder Prozeß verfügt über seinen eigenen Adreßraum Sourcecode enthält Anweisungen und Variablen Compiler überträgt in Assembler bzw. Binärcode

Mehr

Technische Informatik II

Technische 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

Mehr

A Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis...

A 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....................................

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

64 Bit erhöhen die nutzbare Größe für den Arbeitsspeicher.

64 Bit erhöhen die nutzbare Größe für den Arbeitsspeicher. EasyProfil 2.x unter Windows 7-64-Bit Es wird in Ihrer Programmsammlung außer EasyProfil auch noch einige andere wichtige Programme geben, die derzeit noch unter 16 Bit laufen. So macht untenstehende Erweiterung

Mehr

Übung zu Grundlagen der Betriebssysteme. 7. Übung 27.11.2012

Ü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

Mehr

4 Threads. FH Regensburg BT/SS04 Betriebssysteme Wirtschaftsinformatik. 4.1 Allgemein

4 Threads. FH Regensburg BT/SS04 Betriebssysteme Wirtschaftsinformatik. 4.1 Allgemein 4 Threads 4.1 Allgemein Prozessmodell: Zwei unabhängige Eigenschaften eines Prozesses: Er hat Resourcen: Adressen, Daten, geöffnete Dateien und ist ausführbar Thread: hat keine eigenen Resourcen (ausser

Mehr

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise 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 2 Virtual Storage el0100 copyright

Mehr

Thread-Erzeugung kostengünstiger als Prozesserzeugung Thread-Umschaltung kostengünstiger als Prozessumschaltung

Thread-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

Mehr

(b) Worin besteht der Unterschied zwischen online und offline Scheduling?

(b) Worin besteht der Unterschied zwischen online und offline Scheduling? Universität Paderborn Fachgebiet Rechnernetze SoSe 2013 Konzepte und Methoden der Systemsoftware Präsenzübung 3 2013-05-06 bis 2013-05-10 Aufgabe 1: Scheduling - Grundbegriffe Bekanntlich gibt es für das

Mehr

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

IBM Software Demos Tivoli Provisioning Manager for OS Deployment Für viele Unternehmen steht ein Wechsel zu Microsoft Windows Vista an. Doch auch für gut vorbereitete Unternehmen ist der Übergang zu einem neuen Betriebssystem stets ein Wagnis. ist eine benutzerfreundliche,

Mehr

Projekt für Systemprogrammierung WS 06/07

Projekt 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

Mehr

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.

Mehr

Vorlesung Betriebssysteme

Vorlesung Betriebssysteme Dr. Christian Baun Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/7 Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr. Christian

Mehr

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt.

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt. Python Installation 1 Vorbereitung Diese Anleitung ist für Windows ausgelegt. 1.1 Download Python kann online unter https://www.python.org/downloads/ heruntergeladen werden. Hinweis: Im CoderDojo verwenden

Mehr

2A Basistechniken: Weitere Aufgaben

2A Basistechniken: Weitere Aufgaben 2A Basistechniken: Weitere Aufgaben 2A.3 Programmierung unter UNIX/Linux 1. Gegeben sind einige Ausschnitte von C-Programmen, die unter UNIX/Linux ausgeführt werden sollen. Beantworten Sie die zugehörigen

Mehr

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9

Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung

Mehr

Ordner und Laufwerke aus dem Netzwerk einbinden

Ordner und Laufwerke aus dem Netzwerk einbinden Inhaltsverzeichnis 1. Einführung...2 2. Quellcomputer vorbereiten...3 2.1 Netzwerkeinstellungen...3 2.2 Ordner und Laufwerke freigeben...4 2.2.1 Einfache Freigabe...5 2.2.2 Erweiterte Freigabe...6 3. Zugriff

Mehr

Prozesse und Threads. Prozess. Trace. Einfachstes Prozessmodell. Traces

Prozesse 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

Mehr

Betriebssysteme Kap A: Grundlagen

Betriebssysteme 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

Mehr

9 Multithreading. 1 Idee des Multithreading

9 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

Mehr

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?

Ü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

Mehr

4 Planung von Anwendungsund

4 Planung von Anwendungsund Einführung 4 Planung von Anwendungsund Datenbereitstellung Prüfungsanforderungen von Microsoft: Planning Application and Data Provisioning o Provision applications o Provision data Lernziele: Anwendungen

Mehr

8. Vorlesung Betriebssysteme

8. Vorlesung Betriebssysteme Dr. Christian Baun 8. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/69 8. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr. Christian

Mehr

5 Speicherverwaltung. bs-5.1 1

5 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

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Warum also mit einem 32-Bit-System arbeiten, wenn es Systeme für 64 Bit gibt?

Warum also mit einem 32-Bit-System arbeiten, wenn es Systeme für 64 Bit gibt? Mehr als 4GB RAM mit 32-Bit Windows XP nutzen ( Mit freundlicher Erlaubnis: https://grafvondiepelrath.wordpress.com/2015/01/10/windowsxp-mit-8-gb-ram-betreiben/) Das Windows XP -32-Bit-System wird auch

Mehr

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum

Moderne 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

Mehr

Ausarbeitung 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 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

Mehr

KODAK PROFESSIONAL DCS Pro SLR/c Digitalkamera

KODAK PROFESSIONAL DCS Pro SLR/c Digitalkamera KODAK PROFESSIONAL DCS Pro SLR/c Digitalkamera Benutzerhandbuch Abschnitt Objektivoptimierung Teilenr. 4J1534_de Inhaltsverzeichnis Objektivoptimierung Überblick...5-31 Auswählen des Verfahrens zur Objektivoptimierung...5-32

Mehr

Das Arbeitsbuch. ÜK Modul 305. Aufgaben des Betriebssystems

Das Arbeitsbuch. ÜK Modul 305. Aufgaben des Betriebssystems Modulbezeichnung: Ük Modul 305 ÜK Modul 305 Kompetenzfeld: Betriebssysteme installieren und für den Multiuserbetrieb konfigurieren System mit Betriebssystem-Befehlen und Hilfsprogrammen administrieren.

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Basisinformationstechnologie I Wintersemester 2011/ November 2011 Betriebssysteme

Basisinformationstechnologie 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

Mehr