Systeme 1. Kapitel 11. Zusammenfassung

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Systeme 1. Kapitel 11. Zusammenfassung"

Transkript

1 Systeme 1 Kapitel 11 Zusammenfassung

2 Aufgaben von Betriebssystemen Grundlegende Funktionen eines Betriebssystems Bereitstellen einer Abstraktionsschicht der Betriebssystemskomponenten für Programmierer in Form von Schnittstellen und Systemaufrufen Verwaltung und Schutz von Systemressourcen Speicher Speicherverwaltung für Haupt- bzw. Arbeitsspeicher Dateisysteme für Massenspeicher Prozessorzeit mittels Scheduling Synchronisationsprimitiven Bereitstellung einer Umgebung zur Ausführung von Anwendungsprogrammen Konzept von Prozessen und Threads

3 Rechner und Betriebssysteme Prozess 1 Prozess 2 Prozess N... unpriveligierte Befehle Prozessor Bus Systemaufrufe Befehle I/O Controller I/O Controller I/O Controller Prozessverwaltung Prozessscheduler... Befehle Daten Disk Disk Graphik Netzwerk Dateisystem Treiber Speicherverwaltung... Daten Betriebssystem

4 Aufgaben von Betriebssystemen Grundlegende Funktionen eines Betriebssystems Bereitstellen einer Abstraktionsschicht der Betriebssystemskomponenten für Programmierer in Form von Schnittstellen und Systemaufrufen Bereitstellung einer Umgebung zur Ausführung von Anwendungsprogrammen Konzept von Prozessen und Threads Verwaltung und Schutz von Systemressourcen Speicher Speicherverwaltung für Haupt- bzw. Arbeitsspeicher Dateisysteme für Massenspeicher Prozessorzeit mittels Scheduling Synchronisationsprimitiven

5 Prozesse Prozess Programm in Ausführung Zu jedem Prozess gehört ein Adressraum: zugeordneter Arbeitsspeicher mit minimalen und maximalen Adressen Enthält ( Stack ) Ausführbares Programm, Programmdaten und Kellerspeicher Informationen über aktuellen Programmzustand: Inhalt von Prozessorregistern: Programmzähler, allg. CPU-Register, Akkumulator Stack pointer Verwaltungsinformationen zu geöffneten Dateien,... Wenn ein Prozess inaktiv ist, werden diese Informationen in einer Prozesstabelle gespeichert. Wenn ein Prozess aktiviert wird, kann so sein alter Zustand wieder ( Record hergestellt werden (Activation

6 Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige Prozesse kein gegenseitiger Schutz somit (( Stack ) mit gemeinsamem Adressraum (aber eigener Kellerspeicher teilen geöffnete Dateien und andere Ressourcen => Annahme: Threads kooperieren untereinander weniger Overhead im Vergleich zu (schwergewichtigen) Prozessen

7 Aufgaben von Betriebssystemen Grundlegende Funktionen eines Betriebssystems Bereitstellen einer Abstraktionsschicht der Betriebssystemskomponenten für Programmierer in Form von Schnittstellen und Systemaufrufen Bereitstellung einer Umgebung zur Ausführung von Anwendungsprogrammen Konzept von Prozessen und Threads Verwaltung und Schutz von Systemressourcen Speicher Dateisysteme für Massenspeicher Speicherverwaltung für Haupt- bzw. Arbeitsspeicher Prozessorzeit mittels Scheduling Synchronisationsprimitiven

8 Betriebssystem als Ressourcenmanager Aufgaben beim Verwalten von Systemressourcen: Gerechte Zuteilung von gemeinsam genutzten Betriebsmitteln Auflösung von Konflikten bei der Betriebsmittelanforderung Schutz verschiedener Benutzer gegeneinander z.b. Zugriffskontrolle bei Dateien Effiziente Verwaltung von Betriebsmitteln Protokollieren der Ressourcennutzung Abrechnung der Betriebsmittelnutzung Fehlererkennung, Fehlerbehandlung ( Programmfehler ) Hardware (Gerätefehler) und Software Grundsätzliche Zugriffskontrolle zum System

9 Speicherhierarchie Registers Instr./Operands Upper Level faster Cache Blocks Memory Pages Disk Files Tape Larger Lower Level

10 Dateisysteme Zum Laden und Speichern von Betriebssystem, Programmen und Daten wird ein Ordnungs- und Zugriffssystem benötigt: Ganze Platte Partitionstabelle Plattenpartition MBR Bootblock Superblock Freispeicherverw. I-Nodes Datenblöcke

11 Dateisysteme Persistente Dateisysteme Daten werden persistent gesichert Daten sind von Lebensdauer von Programmen unabhängig. Nutzung von externen Medien z.b. Platten, CD-ROM, Bänder Erlaubt die Organisation von großen Datenmengen Daten müssen nicht vollständig in den Arbeitsspeicher geladen werden. Enthalten zusätzliche Metadaten Enstehungs- und Zugriffszeitpunkt von Daten Zugriffsrechte und Zugriffsarten

12 Dateien Dateien Kleinste logische Einheit eines Dateisystems Aus Sicht des Betriebssystems eine Sequenz von Daten einer gegebenen Länge ( Dateiname ) Zugriff über Namen Spezielle Dateitypen Verzeichnisse erlauben eine hierarchische Organisation von Dateien Gerätedateien ermöglichen eine einfache Abstraktion von Hardware erlauben damit transparent Lesen und Schreiben von E/A-Geräten Symbolische Links Pipes, Sockets

13 Realisierung von Dateien Abspeicherung von Dateien als zusammenhängende Menge von Plattenblöcken: Nachteile: Fragmentierung Speichere Datei als verkettete Listen von Plattenblöcken Datei A Vorteile: Datei Schnelles sequentielles Lesen B Einfache Implementierung Vorteile: Keine Fragmentierung Sequentielles Lesen Nachteile Wahlfreier Zugriff Dateiblock 0 Datei C Dateiblock 1 Datei D Dateiblock 2 Datei E Dateiblock 3 Datei F Datei G Plattenblock

14 Beispiel: FAT FAT: Datei A: Dateiblock 0 Dateiblock 1 Dateiblock 2 Dateiblock 3 Dateiblock 4 Plattenblock 0 Plattenblock 1 Plattenblock 2 Plattenblock 3 Plattenblock 4 Plattenblock 5 Plattenblock 6 Plattenblock 7 Plattenblock 8 Plattenblock 9 Plattenblock 10 Plattenblock 11 Plattenblock 12 Plattenblock 13 Plattenblock 14 Plattenblock Plattenblock Datei B: Dateiblock 0 Dateiblock 1 Dateiblock 2 Dateiblock 3 Plattenblock Beginn Datei A Beginn Datei B Ende Datei A Ende Datei B

15 Beispiel: FAT Speichere Datei als verkettete Listen von Plattenblöcken Vorteil: Da FAT im Hauptspeicher abgelegt, muss bei wahlfreiem Zugriff auf Block n nur eine Kette von Verweisen im Hauptspeicher verfolgt werden Nachteil: Größe der FAT im Speicher! Anzahl der Einträge = Gesamtzahl der Plattenblöcke Auch wenn Platte fast komplett unbelegt! Beobachtung: Man braucht Verkettung der Plattenblöcke nur für aktuell bearbeitete Dateien! ( LINUX -> I-Node-Konzept (UNIX,

16 Beispiel: I-Node Zu jeder Datei gehört eine Datenstruktur ( Index-Node ) => der sog. I-Node I-Node ermöglicht Zugriff auf alle Blöcke der Datei I-Node muss nur dann im Speicher sein, wenn eine Datei offen ist Wenn k Dateien offen und I-Node n Bytes benötigt, dann nur k n Byte insgesamt Bsp.: UNIX System V I-Node einer Datei enthält alle Attribute der Datei m Adressen von Plattenblöcken ( 10 = m (UNIX System V:

17 Beispiel: I-Node Dateiattribute Adresse von Plattenblock 0 Adresse von Plattenblock 1 Adresse von Plattenblock 2 Adresse von Plattenblock 3 Adresse von Plattenblock 4 Adresse von Plattenblock 5 Adresse von Plattenblock 6 Adresse von Plattenblock 7 Adresse von Plattenblock 8 Adresse von Plattenblock 9 Zeiger auf Block mit weiteren ( indirekt Adressen (einfach Zeiger auf Block mit weiteren ( indirekt Adressen (zweifach Zeiger auf Block mit weiteren ( indirekt Adressen (dreifach Einfach indirekter Block Doppelt indirekter Block Dreifach indirekter Block Adressen von Plattenblöcken

18 Verwaltung freier Plattenblöcke Datenblöcke im Dateisystem an beliebigen Stellen genutzt Nicht notwendigerweise aufeinander folgend Verwaltung freier Blöcke: Über Freibereichsliste als verkettete Liste: Speichere Nummern von freien Plattenblöcken Benutze zum Speichern der Nummern freie Plattenblöcke, die miteinander verkettet werden Bitmap Bitmap mit 1 Bit für jeden Plattenblock Plattenblock frei entsprechendes Bit = 1

19 Dateisysteme Objekte zur Datenspeicherung werden meist in Verzeichnisbäumen in Form von Dateieinträgen verwaltet Dateien und Verzeichnisse vom Dateisystem bereitgestellt Der Verzeichnisbaum wird aus mehreren Dateisystemen zusammengebaut Verschiedene Implementierungsvarianten für Dateisysteme ( Laufzeit Unterschiede liegen in Effizienz (Speicher und Geeignete Wahl des Dateisystems bestimmt durch Eigenschaften des physikalischen Speichermediums

20 Aufgaben von Betriebssystemen Grundlegende Funktionen eines Betriebssystems Bereitstellen einer Abstraktionsschicht der Betriebssystemskomponenten für Programmierer in Form von Schnittstellen und Systemaufrufen Bereitstellung einer Umgebung zur Ausführung von Anwendungsprogrammen Konzept von Prozessen und Threads Verwaltung und Schutz von Systemressourcen Speicher Dateisysteme für Massenspeicher Speicherverwaltung für Haupt- bzw. Arbeitsspeicher Prozessorzeit mittels Scheduling Synchronisationsprimitiven

21 Speicherverwaltung Grundlegende Anforderungen an Speicherverwaltung: Aufteilung des verfügbaren Hauptspeichers zwischen Betriebssystem verschiedenen Prozessen 5 Anforderungen nach Lister / Eager: 1. Relokation: Übersetzung der Speicherreferenzen im Programmcode in tatsächliche physikalische Speicheradressen durch Prozessorhardware und Betriebssystemsoftware. 2. Schutz Schutz von Prozessen gegen beabsichtigte oder unbeabsichtigte Störungen durch andere Prozesse mittels in Hardware integrierter dynamischer Adressüberprüfung.

22 ( Wiederholung ) Speicherverwaltung 5 Anforderungen nach Lister / Eager (Fortsetzung): 3. Gemeinsame Nutzung Gemeinsame und kontrollierte Nutzung von Speicher durch mehrere Prozesse: z.b. Bibliotheken oder gemeinsam genutzter Speicher zur Kooperation. 4. Logische Organisation Logische Aufteilung von linear organisierten Speicher anhand der speziellen Anforderungen der Programme. 5. Physikalische Organisation Organisation des Datenflusses zwischen den verschiedenen Speicherarten (z.b. zwischen Hauptspeicher und Sekundärspeicher).

23 Grundlegende Methoden der Speicherverwaltung Partitionierung Aufteilung des Speichers in Bereiche mit festen Grenzen Fester, zusammenhängender Teil des Hauptspeichers für Betriebssystem und pro Prozess ein zusammenhängender Teil des Speichers Verschiedene Varianten: Statische Partitionierung Einteilung des Speichers in feste Anzahl von Partitionen Dynamische Partitionierung Einteilung in Partitionen variabler Länge Buddy-Verfahren Kombination von statischen und dynamischen Verfahren Vorteil: geringe Komplexität Nachteil: Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. -> Paging

24 Grundlegende Methoden der Speicherverwaltung Einfaches Paging Nachteil: Im Gegensatz zu Partitionierung werden Prozessen nicht notwendigerweise zusammenhängenden Speicherbereichen zugeordnet. Hauptspeicher aufgeteilt in viele gleichgroße Seitenrahmen. Speicher eines Prozesses aufgeteilt in Seiten derselben Größe. Zuordnung von Seiten zu Seitenrahmen beim Laden von Prozessen Logische Adressen der Form Seitennummer, Offset Pro Prozess eine Seitentabelle Seitentabelle übersetzt Seitennummern in Nummern von Seitenrahmen im physikalischen Speicher Bei Auslagerung in den Hintergrundspeicher immer nur für vollständigen Prozess möglich. => Paging mit virtuellem Speicher

25 Grundlegende Methoden der Speicherverwaltung Paging mit virtuellem Speicher Wenn man im Zusammenhang mit Auslagern sowieso mit Hintergrundspeicher arbeitet, dann hat man auch die Möglichkeit, nur Teile der Daten von Prozessen ein- bzw. auszulagern. Das Programm kann momentan weiter ausgeführt werden, wenn die aktuell benötigten Informationen (Code und Daten) im Speicher sind. Wird auf Informationen zugegriffen, die ausgelagert (auf der Festplatte) sind, so müssen diese nachgeladen werden. Hauptspeicher + Hintergrundspeicher = virtueller Speicher => erlaubt logische Adressen über vollen Adressraum (32 bzw. 64 Bit), da Seiten zu jeder Zeit in den Hintergrundspeicher ausgelagert werden können.

26 Grundlegende Methoden der Speicherverwaltung Paging mit virtuellem Speicher Wie bei einfachem Paging: Trennung der logischen Adressen in Seitennummer und Offset, z.b.: Logische Adresse: Bit-Seitennummer 10-Bit-Offset Seitentabelleneintrag: P M Weitere Bits Seitenrahmennummer P (Present Bit), M (Modify Bit), weitere Bits für Schutzrechte etc. Umsetzung der Adresse mit Hardwareunterstützung (MMU).

27 Adressumsetzung Virtuelle Adresse Reale Adresse Seitennr. Offset Register + Seitennummer Seitentabelle Rahmennr. Rahmennr. Offset Offset Seitentabellenzeiger Seitenrahmen Programm Paging-Verfahren Hauptspeicher

28 Segmentierung Im Gegensatz zu Partitionierung werden Prozessen nicht notwendigerweise zusammenhängende Speicherbereiche zugeordnet. Speicher eines Prozesses aufgeteilt in Segmente, deren Größe im Gegensatz zu den Seiten beim Paging verschieden sein kann. Keine interne Fragmentierung, aber externe Fragmentierung (wie bei dynamischer Partitionierung. Segmentierung ist für Programmierer / Compiler sichtbar. Aufteilung in Codesegmente, Datensegmente Logische Adresse besteht aus Segmentadresse und Offset. Berechnung der realen Adresse durch Addition von Basisadresse des Segments Offset Segmenttabelle enthält pro Segment ( Speicher Basisadresse des Segments (Startadresse im Segmentlänge

29 Segmentierung Bsp.: logische Adresse mit 16 Bit 4-Bit-Segmentnummer 12-Bit-Offset Länge Basis + Prozesssegmenttabelle Bit physikalische Adresse

30 Segmentierung und Paging kombiniert Vorteile Paging: Für den Nutzer tranparent Feste Seitengrößen => anspruchsvolle, leistungsfähige Speicherverwaltungsalgorithmen Vorteile Segmentierung: Anpassung an dynamischen Speicherbedarf von Prozessen Gemeinsame Nutzung und Schutz auf Grundlage natürlicher Organisationseinheiten => Kombination beider Verfahren: Prozesse aufgeteilt in Segmente, pro Prozess eine Segmenttabelle Segmente aufgeteilt in Seiten, pro Segment eine Seitentabelle Aufbau einer Adresse: Für den Programmierer besteht Adresse aus Segmentnummer und Offset Segmentierung. Offset Segmentierung wird beim Paging interpretiert als (Seitennummer, Offset Paging ).

31 Segmentierung und Paging kombiniert Virtuelle Adresse Seitenrahmen Seitennr. + Segmenttabelle Reale Adresse Rahmennr. Offset Seitentabelle + Segmentnr Offset Register Segmenttabellenzeiger Programm Segmentierung Paging Hauptspeicher

32 Ressourcen Verteilung Speicherzuteilungsstrategie: Wo im Speicher wird ein Prozessteil abgelegt? Nur wichtig bei Segmentierung / Partitionierung, nicht bei Paging z.b. Best-Fit, Next-Fit, First-Fit Lokale Verdrängungsstrategie Welche Seite soll ausgelagert werden, wenn alle Seitenrahmen belegt sind? LRU (Least Recently Used) ( Out FIFO (First In First Clock-Algorithmus Working-Set Globale Verdrängungsstrategie Wie werden Seiten zwischen Prozessen verteilt? Page Fault Frequency (PFF) Algorithmus für Algorithmen der Keller-Klasse.

33 Aufgaben von Betriebssystemen Grundlegende Funktionen eines Betriebssystems Bereitstellen einer Abstraktionsschicht der Betriebssystemskomponenten für Programmierer in Form von Schnittstellen und Systemaufrufen Bereitstellung einer Umgebung zur Ausführung von Anwendungsprogrammen Konzept von Prozessen und Threads Verwaltung und Schutz von Systemressourcen Speicher Dateisysteme für Massenspeicher Speicherverwaltung für Haupt- bzw. Arbeitsspeicher Prozessorzeit mittels Scheduling Synchronisationsprimitiven

34 Multitasking Prozessoren sind so leistungsfähig, dass die pseudo-parallele Ausführung mehrerer Prozesse schnell genug abläuft. Viele Prozesse können den Prozessor ohnehin nicht permanent nutzen. Viel Zeit wird mit Warten auf Ein-/Ausgaben verbracht: z.b. Lesen von Festplatten ist um ein Vielfaches langsamer als die Ausführungsgeschwindigkeit des Prozessors. getrennte Ausführung: Pseudo-Parallele Ausführung: Programm 1 Programm 2 Programm 3

35 Optimierungsziele Mehrere verschiedene Optimierungsziele denkbar => Verschiedene Scheduling-Algorithmen Optimierungsziele Alle Systeme ( CPU Fairness ( jeder Prozess erhält die Effizienz Stapelverarbeitungssysteme ( Zeiteinheit Maximiere mittleren Durchsatz (Anzahl Jobs pro ( Prozessbeendigung Minimiere mittlere Durchlaufzeit (Zeit von Prozessstart bis Maximiere CPU-Auslastung Bemerkung: Maximierung des mittleren Durchsatzes und Minimierung der mittleren Durchlaufzeit sind nicht dasselbe! Interaktive Systeme Minimiere Antwortzeit Echtzeit-Systeme Einhalten von Deadlines

36 Schedulingalgorithmen: Charakteristika Prozessauswahl: Bestimmt nächsten Prozess für CPU-Zuteilung Basierend auf Ressourcenbenutzung, Prioritäten, Insbesondere: ( CPU w (Wartezeit auf ( CPU-Zeit e (bisher verbrauchte ( CPU-Zeit s (insgesamt benötigte Zeitpunkt der Auswahlentscheidung: Nicht-präemptives Scheduling: CPU kann einem Prozess nur entzogen werden, wenn er beendet ist, oder auf Ein-/Ausgaben wartet Präemptives Scheduling: Aktueller Prozess kann unterbrochen werden durch sog. Interrupts

37 ( präemptiv Schedulingalgorithmen (nicht First Come First Served Wenn ein Prozess beendet ist oder blockiert, kommt der Prozess an die Reihe, der schon am längsten wartet. Shortest Job First / Shortest Remaining Time Prozess mit kürzester geschätzter Laufzeit erhält CPU als erstes. => Minimiert durchschnittliche Durchlaufzeit. ( HRRN ) Highest Response Ration Next Basiert auf der geschätzten Laufzeit eines Prozesses und der bisher angesammelten Wartezeit. Daraus wird eine response ratio berechnet. Der Prozess mit der höchsten response ratio rr erhält die CPU als erster.

38 ( präemptiv ) Schedulingalgorithmen Round Robin Scheduler wird nach Ablauf fester Zeitintervalle immer wieder (periodisch) aktiviert ( Zeitscheiben, Quanten ). Laufender Prozess wird dann in eine Warteschlange wartender Prozesse eingefügt. Der am längsten wartende Prozess wird aktiviert. Feedback Muss ein Prozess die CPU abgeben, wird er in eine Warteschlange niederer Priorität eingefügt. Da die Zeitintervalle eine feste Größe haben, modellieren Warteschlangen verschiedener Prioritäten verbrauchte CPU-Zeit. Garantiertes Scheduling Prozessen erhalten Garantien, die eingehalten werden. Lotterie Scheduling CPU-Zeit wird in regelmäßigen Abständen verlost.

39 Nebenläufigkeit Nebenläufigkeit = potentieller Parallelismus Nebenläufige Prozesses können parallel auf mehreren Prozessoren ausgeführt werden. Sie können aber auch pseudo-parallel auf einem Prozessor ausgeführt werden. Grundlegende Fragestellungen: Zugriff auf gemeinsame Ressourcen? Koordination, Kommunikation Bei Zugriff auf gemeinsame Ressourcen muss häufig wechselseitiger Ausschluss garantiert werden! Zum Beispiel geteilter Speicher bei Threads

40 Nebenläufigkeit Grundlegende Fragen bei Nebenläufigkeit Betriebssystem muss Ressourcen der aktiven Prozesse verwalten. OS muss wechselseitigen Ausschluss bei gemeinsamen Ressourcen garantieren können. Die Korrektheit des Ergebnisses muss unabhängig von der relativen Ausführungsgeschwindigkeit der einzelnen Prozesse sein. 3 Kontrollprobleme Wechselseitiger Ausschluss, d.h. jeweils nur ein Prozess im kritischen Abschnitt (= der Teil des Programms, der auf gemeinsame, exklusive ( zugreift Ressourcen ( Prozesse Verhindere Deadlocks (Blockierung aller Verhindere Livelocks (obwohl ein Prozess nicht blockiert ist, geht sein (. voran Ablauf nie

41 Anforderungen an wechselseitigen Ausschluss 1. Höchstens ein Prozess im kritischen Abschnitt. 2. Jeder Prozess hält sich nur endliche Zeit im kritischen Abschnitt auf. 3. Wenn ein Prozess in den kritischen Abschnitt will, so muss er nur endliche Zeit darauf warten. 4. Wenn kein Prozess im kritischen Abschnitt ist, so wird ein interessierter Prozess ohne Verzögerung akzeptiert. 5. Alles funktioniert unabhängig von der relativen Ausführungsgeschwindigkeit der Prozesse.

42 Wechselseitiger Ausschluss in Software Peterson's Algorithmus für wechselseitigen Ausschluss (1981). Nicht-alternierender Zugriff auf den kritischen Abschnitt Wechselseitiger Ausschluss garantiert Kein Deadlock Nachteil: Software-Lösungen für wechselseitigen Ausschluss benötigen aktives Warten. Effizientere Lösungen sind möglich durch Hardware-Unterstützung Ins Betriebssystem integrierte Lösungen

43 Wechselseitiger Ausschluss in Hardware Einführung atomarer Operationen. Hardware garantiert atomare Ausführung. Testen und Setzen zusammen bilden eine atomare Operation: Vorteil: Nachteil: Definiere neuen Befehl TSL: Test and Set Lock Da TSL ein einziger Befehl ist, kann ein Prozesswechsel nicht ( Befehl zwischen Testen und Setzen erfolgen (nicht mitten im Nicht-alternierender Zugriff auf den kritischen Abschnitt Wechselseitiger Ausschluss garantiert Kein Deadlock Aktives Warten genau wie bei Softwarelösung!

44 Wechselseitiger Ausschluss im Betriebssystem Um aktives Warten zu verhindern, muss wechselseitiger Ausschluss ins Betriebssystem integriert werden! Statt aktiv zu warten, blockieren Prozesse => Scheduling ( sleep(lock Neuer Systemaufruf Nach Verlassen des kritischen Abschnitts weckt der verlassende Prozess einen anderen Prozess auf, der auf Erlaubnis wartet, den kritischen ( ist Abschnitt zu betreten (sofern ein solcher Prozess vorhanden ( wakeup(lock Neuer Systemaufruf Parameter lock wird nur gebraucht, um Aufrufe für den gleichen kritischen Abschnitt einander zuzuordnen. Eine Warteschlange pro kritischen Abschnitt

45 Mutex Mutex = Mutual Exclusion Vor dem Eintritt in einen kritischen Abschnitt wird die Funktion mutex_lock(lock) aufgerufen ( mutex_lock(lock function { ( false solange (testset(lock) = { sleep(lock); } return; } testset(lock) führt atomare TSL-Operation aus; liefert true gdw. Lockvariable vorher 0 war.

46 Mutex Nach Verlassen des kritischen Abschnitts wird mutex_unlock(lock) aufgerufen ( mutex_unlock(lock function { unset(lock); // lock wird freigegeben wakeup(lock); return; } Es muss eine Warteschlange für Prozesse geben, die auf lock warten. Nach wakeup(lock) wird der erste Prozess in der Queue bereit (aber nicht (! Scheduler-Algorithmus notwendigerweise aktiv -> Die Variable lock heißt Mutexvariable bzw. kurz Mutex.

47 Semaphor (( 1965 ) Entwickelt zur Synchronisation von Prozessen (Dijkstra Konzept: Integer-Variable mit drei Operationen: Initialisierung mit nicht-negativen Wert Entspricht der maximalen Belegung der geschützten Ressource down() Operation Belegt Ressource Verringere Wert um 1 Wenn Wert < 0, blockiere Prozess -> Warteschlange up() Operation Gibt Ressource wieder frei Erhöhe Wert um 1 Wenn Wert <= 0 wecke einen der blockierten Prozesse auf Wichtig: up() und down() müssen atomare Operationen sein.

48 Deadlocks Definition: Eine Menge von Prozessen befindet sich in einem Deadlock- Zustand, wenn jeder Prozess aus der Menge auf ein Ereignis wartet, das nur ein anderer Prozess aus der Menge auslösen kann. Folgende Voraussetzungen müssen erfüllt sein, damit ein Deadlock auftreten kann: Wechselseitiger Ausschluss: Jede Ressource ist entweder verfügbar oder genau einem Prozess zugeordnet. Hold-and-wait-Bedingung: Prozesse, die schon Ressourcen reserviert haben, können noch weitere Ressourcen anfordern. Ununterbrechbarkeit: Ressourcen, die einem Prozess bewilligt wurden, können nicht gewaltsam wieder entzogen werden. Zyklische Wartebedingung: Es muss eine zyklische Kette von Prozessen geben, von denen jeder auf eine Ressource wartet, die dem nächsten Prozess in der Kette gehört. Leider sind in realen Betriebssystemen diese Bedingungen üblicherweise erfüllt.

49 Deadlocks: Bankieralgorithmus Bankieralgorithmus von Dijkstra (1965) verhindert Deadlocks im System. Scheduling (Prozessorzuteilung an Prozesse) in einer Weise, dass keine Deadlocks auftreten können. Voraussetzungen: Es ist im Voraus bekannt, welche und wie viele Ressourcen die einzelnen Prozesse (maximal) anfordern werden. Diese maximale Anforderung übersteigt für keinen Prozess die zur Verfügung stehenden Ressourcen. Nach der 2. Voraussetzung gibt es auf jeden Fall einen Ablauf, bei dem es kein Problem mit fehlenden Ressourcen / Deadlocks gibt: Führe einfach alle Prozesse nacheinander aus. Nach Ablauf eines Prozesses gibt dieser sicherlich alle seine Ressourcen frei. Grundidee des Bankieralgorithmus: Versuche möglichst viel Pseudo-Parallelismus zu erreichen (keine streng sequentielle ( Prozesse Abarbeitung der Riskiere dabei aber an keinem Punkt eine potentielle Deadlock-Situation!

50 Deadlocks: Bankieralgorithmus Vorgehen: Überführe das System immer nur in sichere Zustände! Ein Zustand ist sicher, wenn es auf jeden Fall eine deadlockfreie Restausführung aller Prozesse gibt, unabhängig davon, in welcher Weise die Prozesse in Zukunft ihre Ressourcenanforderungen und freigaben durchführen werden, d.h. insbesondere, wenn die Prozesse ihre restlichen Anforderungen auf einen Schlag stellen und Freigaben erst bei Prozessbeendigung durchführen. Sonst: Zustand ist unsicher. Der Bankieralgorithmus prüft also bei jeder Ressourcenanforderung eines Prozesses p i, ob das System bei Erfüllung der Anforderung in einen unsicheren Zustand kommt. Falls ja: Erfülle Anforderung nicht, stelle Prozess p i zurück und mache mit einem anderen Prozess weiter. Dadurch garantiert der Bankieralgorithmus in jedem Fall eine deadlockfreie Ausführung.

51 Deadlocks: Zusammenfassung Offene Probleme: Prozesse können meist nicht im Voraus eine verlässliche Obergrenze für ihre Ressourcenanforderungen geben (zumindest nicht exakt genug, so dass das System nicht ( wird durch Überschätzung des Ressourcenbedarfs zu ineffizienter Ausführung gezwungen Garantierte Obergrenzen würden häufig sogar die Anzahl der verfügbaren Ressourcen übersteigen, aber durch ständiges Zuweisen und Freigeben von Ressourcen stellt dies trotzdem kein Problem dar Deadlock-Freiheit kann zwar prinzipiell erreicht werden, häufig jedoch um den Preis starker Effizienz-Verluste Häufig verzichtet man in der Praxis daher auf absolute Garantien für Deadlock-Freiheit.

52 Aktuelle Forschungsthemen ( Albers Energieeffiziente Algorithmen (Prof. Eine Aufgabe wird so gelöst, dass der Energieverbrauch minimiert wird. Große Bedeutung für Mobiltelefone oder Laptops wegen begrenztem Energievorrat. Die neuen Verfahren basieren zum Beispiel auf ausgefeilten Abschaltmechanismen oder nutzen aus, dass heutige Mikroprozessoren mit verschiedenen Taktfrequenzen arbeiten können. Zum Beispiel: Suche nach einem Schedule, der den Energieverbrauch minimiert und gleichzeitig gute Reaktionszeiten aufweist.

53 Aktuelle Forschungsthemen ( Scholl Fehlerdiagnose und Verifikation (Prof. Entspricht eine Implementierung ihrer Spezifikation?

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

Softwarelösungen: Versuch 4

Softwarelö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]

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

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

Paging. Einfaches Paging. Paging mit virtuellem Speicher

Paging. Einfaches Paging. Paging mit virtuellem Speicher Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz

Mehr

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1 Systeme 1 Kapitel 3 Dateisysteme WS 2009/10 1 Letzte Vorlesung Dateisysteme Hauptaufgaben Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien Kleinste logische Einheit eines Dateisystems Dateitypen

Mehr

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 7 Scheduling Maren Bennewitz Version 23.01.2013 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

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

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher Speicherverwaltung Aufgaben der Speicherverwaltung wichtigstes Betriebsmittel - neben dem Prozessor: Speicher Sowohl die ausführbaren Programme selbst als auch deren Daten werden in verschiedenen Speicherbereichen

Mehr

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Kapitel VI. Speicherverwaltung. Speicherverwaltung Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene

Mehr

Wiederholung: Realisierung von Dateien

Wiederholung: Realisierung von Dateien Wiederholung: Realisierung von Dateien Zusammenhängende Belegung Datei A Datei C Datei E Datei G Datei B Datei D Datei F Belegung durch verkettete Listen (z.b. FAT) Dateiblock 0 Dateiblock 1 Dateiblock

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Maren Bennewitz Version 5.2.214 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von

Mehr

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley)

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley) Kapitel 6 Speicherverwaltung Seite 1 6 Speicherverwaltung 6.1 Hintergrund Ein Programm muß zur Ausführung in den Hauptspeicher gebracht werden und in die Prozeßstruktur eingefügt werden. Dabei ist es in

Mehr

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel Aufgabe 1 (5 Punkte) (Multiple Choice) Beantworten Sie folgende Fragen durch Ankreuzen der richtigen Antwort. Für jede falsche Antwort wird ein Punkt abgezogen (es werden minimal 0 Punkte vergeben). Welche

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Maren Bennewitz Version 13.2.213 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten

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

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

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

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

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

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

13. Übung mit Musterlösung

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

Mehr

CPU-Scheduling - Grundkonzepte

CPU-Scheduling - Grundkonzepte CPU-Scheduling - Grundkonzepte Sommersemester 2015 Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze 4. Interruptverarbeitung in Betriebssystemen

Mehr

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen

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

Mehr

4.3 Hintergrundspeicher

4.3 Hintergrundspeicher 4.3 Hintergrundspeicher Registers Instr./Operands Cache Blocks Memory Pages program 1-8 bytes cache cntl 8-128 bytes OS 512-4K bytes Upper Level faster Disk Tape Files user/operator Mbytes Larger Lower

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

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

Speicherverwaltung (Swapping und Paging)

Speicherverwaltung (Swapping und Paging) Speicherverwaltung (Swapping und Paging) Rückblick: Segmentierung Feste Einteilung des Speichers in einzelne Segmente 750k 0 Rückblick: Segmentierung Feste Einteilung des Speichers in einzelne Segmente

Mehr

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Zusammenfassung Kapitel 4 Dateiverwaltung 1 Datei logisch zusammengehörende Daten i.d.r. permanent

Mehr

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

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper Speicherverwaltung Real Mode Nach jedem starten eines PC befindet sich jeder x86 (8086, 80386, Pentium, AMD) CPU im sogenannten Real Mode. Datenregister (16Bit) Adressregister (20Bit) Dadurch lassen sich

Mehr

4. Übung - Betriebssysteme

4. Übung - Betriebssysteme 1. ufgabe: Systemstart 4. Übung - etriebssysteme Informatik I für Verkehrsingenieure ufgaben inkl. eispiellösungen a Welche ufgabe hat das IOS und was passiert beim Starten eines Systems? b Welche ufgaben

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

Speicher Virtuelle Speicherverwaltung. Speicherverwaltung

Speicher Virtuelle Speicherverwaltung. Speicherverwaltung Speicherverwaltung Die Speicherverwaltung ist derjenige Teil eines Betriebssystems, der einen effizienten und komfortablen Zugriff auf den physikalischen Arbeitsspeicher eines Computer ermöglicht. Je nach

Mehr

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Technische Informatik II Wintersemester 2002/03 Sommersemester 2001 Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Speicher ist eine wichtige Ressource, die sorgfältig verwaltet werden muss. In der Vorlesung

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

Von der Platte zur Anwendung (Platte, Treiber, Dateisystem)

Von der Platte zur Anwendung (Platte, Treiber, Dateisystem) (Platte, Treiber, Dateisystem) 1. Einleitung 2. Dateisysteme 2.1. Logisches Dateisystem 2.2. Dateiorganisationsmodul 2.3. Basis Dateisystem 3. Festplattentreiber 3.1. Funktionsweise 3.2. Scheduling Verfahren

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

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

Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404

Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Betriebssysteme I WS 2013/2014 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 16. Januar 2014 Betriebssysteme / verteilte Systeme Betriebssysteme

Mehr

Übersicht. UNIX-Dateisystem (ext2) Super-User unter Linux werden MSDOS: FAT16 und FAT32

Übersicht. UNIX-Dateisystem (ext2) Super-User unter Linux werden MSDOS: FAT16 und FAT32 Übersicht UNIX-Dateisystem (ext2) Super-User unter Linux werden MSDOS: FAT16 und FAT32 Die in diesem Teil vorgestellten Informationen stellen lediglich das Prinzip dar - im Detail ist alles etwas komplizierter...

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

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

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

Betriebssysteme I WS 2014/2015. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404

Betriebssysteme I WS 2014/2015. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Betriebssysteme I WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Januar 2015 Betriebssysteme / verteilte Systeme Betriebssysteme

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

Domänenmodell: Fadenkommunikation und -synchronisation

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

Mehr

Betriebssysteme und Systemsoftware

Betriebssysteme und Systemsoftware Merlin Denker Version 2 1 / 18 Vorwort Dieses Dokument soll einen Überblick über verschiedene Strategien aus der an der RWTH Aachen gehaltenen Vorlesung bieten. Die vorliegende Version dieses Dokuments

Mehr

Kapitel 2. Betriebssysteme

Kapitel 2. Betriebssysteme Systeme 1 Kapitel 2 Betriebssysteme WS 2009/10 1 Übersicht Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten von Betriebssystemen Komponenten und Konzepte

Mehr

Informatik I Modul 6: Betriebssysteme

Informatik I Modul 6: Betriebssysteme Informatik I Modul 6: Betriebssysteme 2012 Burkhard Stiller M6 1 Modul 7: Betriebssysteme Überblick von Betriebssystemen Auftrags- und Speicherverwaltung Einlagerung, Zuweisung, Ersetzung 2012 Burkhard

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

Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet.

Programme 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

Mehr

6 Speicherverwaltung

6 Speicherverwaltung 6 Speicherverwaltung 6.1 Hintergrund Ein Programm muß zur Ausführung in den Hauptspeicher gebracht werden und in die Prozeßstruktur eingefügt werden. Dabei ist es in mehreren Schritten zu modifizieren.

Mehr

William Stallings. Betriebssysteme. Prinzipien und Umsetzung. 4., überarbeitete Auflage. Pearson Studium

William Stallings. Betriebssysteme. Prinzipien und Umsetzung. 4., überarbeitete Auflage. Pearson Studium William Stallings Betriebssysteme Prinzipien und Umsetzung 4., überarbeitete Auflage Pearson Studium ein Imprint der Pearson Education Deutschland GmbH Inhaltsverzeichnis Vorwort Leitfaden für den Leser

Mehr

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Memory Management Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Speicherverwaltung Effektive Aufteilung und Verwaltung des Arbeitsspeichers für BS und Programme Anforderungen

Mehr

B.5 Prozessverwaltung B.5. Prozessverwaltung. 2002 Prof. Dr. Rainer Manthey Informatik II 1

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

Mehr

Der Scheduler von Windows Konzepte und Strategien

Der Scheduler von Windows Konzepte und Strategien Gliederung Der Scheduler von Windows Konzepte und Strategien Daniel Lohmann 1 Grundbegriffe 2 Eigenschaften des Schedulers Grundlegende Eigenschaften Prioritätenmodell Dynamische Prioritätenanpassungen

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

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

Scheduling. Prozess-Ablaufplanung. Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012

Scheduling. Prozess-Ablaufplanung. Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012 Scheduling Prozess-Ablaufplanung Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012 Scheduler Der Scheduler ist ein besonders wichtiges Programmteil jedes Betriebssystems. Prozesse P 1 P

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

Implementierung von Dateisystemen

Implementierung von Dateisystemen Implementierung von Dateisystemen Teil 2 Prof. Dr. Margarita Esponda WS 2011/2012 44 Effizienz und Leistungssteigerung Festplatten sind eine wichtige Komponente in jedem Rechnersystem und gleichzeitig

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

Was machen wir heute? Betriebssysteme Tutorium 12. Organisatorisches. Frage 12.1.a. Programmieraufgaben Vorstellung. Antwort

Was machen wir heute? Betriebssysteme Tutorium 12. Organisatorisches. Frage 12.1.a. Programmieraufgaben Vorstellung. Antwort Was machen wir heute? Betriebssysteme Tutorium 12 1 Organisatorisches Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität

Mehr

Basisinformationstechnologie I

Basisinformationstechnologie I Basisinformationstechnologie I Wintersemester 2012/13 05. Dezember 2012 Betriebssysteme Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners // jan.wieners@uni-koeln.de

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

Prozessor (CPU, Central Processing Unit)

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

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

Schedulingalgorithmen Rechenzeitverteilung auf Betriebssystemebene. Andi Drebes Fachbereich Informatik Universität Hamburg

Schedulingalgorithmen Rechenzeitverteilung auf Betriebssystemebene. Andi Drebes Fachbereich Informatik Universität Hamburg Schedulingalgorithmen Rechenzeitverteilung auf Betriebssystemebene Andi Drebes Fachbereich Informatik Universität Hamburg Gliederung Notwendigkeit des Schedulings Einführung: Begriff des Multitaskings

Mehr

Anbindung zum Betriebssystem (BS)

Anbindung zum Betriebssystem (BS) 5.1 Einleitung Anbindung zum Betriebssystem (BS) Aufgaben BS Schnittstelle zur Hardware Sicherstellung des Betriebs mit Peripherie Dienste erfüllen für Benutzung Rechner durch Verwaltung der Ressourcen

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

Wenn alle Referenzbits gleich 1, wird nach FIFO entschieden

Wenn alle Referenzbits gleich 1, wird nach FIFO entschieden 4 Second Chance (5) Second chance zeigt FIFO Anomalie Wenn alle Referenzbits gleich 1, wird nach FIFO entschieden Erweiterung Modifikationsbit kann zusätzlich berücksichtigt werden (Dirty bit) vier Klassen:

Mehr

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Maren Bennewitz 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten

Mehr

1. Prozesse & Threads (10 Punkte)

1. Prozesse & Threads (10 Punkte) Fachbereich Informatik/Mathematik Seite 1/9 1. Prozesse & Threads (10 Punkte) a) Erklären Sie den Unterschied zwischen Prozessen und Threads. [4 P.] Der wesentliche Unterschied ist, dass Prozesse über

Mehr

Inhaltsverzeichnis. 1.1 Der Begriff des Betriebssystems 1.2 Zur Geschichte der Betriebssysteme 1.3 Aufbau eines Rechners

Inhaltsverzeichnis. 1.1 Der Begriff des Betriebssystems 1.2 Zur Geschichte der Betriebssysteme 1.3 Aufbau eines Rechners Inhaltsverzeichnis Systemprogrammierung - Kapitel 1 Einführung 1/19 1.1 Der Begriff des Betriebssystems 1.2 Zur Geschichte der Betriebssysteme 1.3 Aufbau eines Rechners E/A-Operationen, Speicherstrukturen

Mehr

Musterlösung der Abschlussklausur Betriebssysteme

Musterlösung der Abschlussklausur Betriebssysteme Musterlösung der Abschlussklausur Betriebssysteme 14. Februar 2014 Name: Vorname: Matrikelnummer: Tragen Sie auf allen Blättern (einschlieÿlich des Deckblatts) Ihren Namen, Vornamen und Ihre Matrikelnummer

Mehr

Banner T 1 T 2. Bild T 7 T 8. Fließtext T 9

Banner T 1 T 2. Bild T 7 T 8. Fließtext T 9 Name, Vorname: Matrikel-Nr.: Aufgabe 1 Wir schreiben das Jahr 2010. Ein Desktop-System mit drei identischen Prozessoren P = {P 1, P 2, P 3 } wird zur Darstellung einer Webseite verwendet. Insgesamt neun

Mehr

Inhaltsverzeichnis XII

Inhaltsverzeichnis XII 1 Einführung... 1 1.1 Computersysteme... 1 1.1.1 Einführung... 2 1.1.2 Aufgabe von Betriebssystemen... 3 1.1.3 Grundlegende Hardwaremodelle... 3 1.1.4 CPU-Registersatz... 7 1.1.5 Multicore-Prozessoren

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

Technische Informa/k II

Technische Informa/k II Technische Informa/k II Prof. Dr. Bernd Freisleben Sommersemester 2013 Vorlesung zur Klausurvorbereitung Folie 00-2 Organisatorisches Klausur: Dienstag, 16.07.13, 12:00-14:00 Uhr im Hörsaal 00/0070 Zugelassene

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

Betriebssystem? Übersicht. Ziele. Grundlagen. Das ist nur die Oberfläche... Wissen, was man unter einem Betriebssystem versteht

Betriebssystem? Übersicht. Ziele. Grundlagen. Das ist nur die Oberfläche... Wissen, was man unter einem Betriebssystem versteht Betriebssysteme Grundlagen Quellen: InSy Folien zum Thema Unix/Linux Wikipedia Das ist nur die Oberfläche... 1 Ziele 2 Übersicht Wissen, was man unter einem Betriebssystem versteht Was Was ist istein einbetriebssystem?

Mehr

^ Springer Vi eweg. Grundkurs Betriebssysteme. Synchronisation, Prozesskommunikation, Virtualisierung. Architekturen, Betriebsmittelverwaltung,

^ Springer Vi eweg. Grundkurs Betriebssysteme. Synchronisation, Prozesskommunikation, Virtualisierung. Architekturen, Betriebsmittelverwaltung, Peter Mandl Grundkurs Betriebssysteme Architekturen, Betriebsmittelverwaltung, Synchronisation, Prozesskommunikation, Virtualisierung 4. Auflage ^ Springer Vi eweg 1 Einführung 1 1.1 Computersysteme 1

Mehr

Systeme 1. Kapitel 10. Virtualisierung

Systeme 1. Kapitel 10. Virtualisierung Systeme 1 Kapitel 10 Virtualisierung Virtualisierung Virtualisierung: Definition: Der Begriff Virtualisierung beschreibt eine Abstraktion von Computerhardware hin zu einer virtuellen Maschine. Tatsächlich

Mehr

Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa

Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa Massenspeichermedien sind in der Regel gegenüber dem Hauptspeicher eines Rechners viel langsamer. Da Massenspeicher

Mehr

B.4. B.4 Betriebssysteme. 2002 Prof. Dr. Rainer Manthey Informatik II 1

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

Mehr

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff von Athanasia Kaisa Grundzüge eines Zwischenspeichers Verschiedene Arten von Zwischenspeicher Plattenzwischenspeicher in LINUX Dateizugriff

Mehr

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen 1 Files als lineare Liste File angeordnet als verkette Liste von Blöcken Jeder Block enthält Zeiger zum Nachfolger Zeiger = Adresse des Blocks

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

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme Wilhelm Haas Wilhelm.Haas@informatik.stud.uni-erlangen.de Friedrich-Alexander-Universität Erlangen-Nürnberg Institut für Informatik Lehrstuhl 4

Mehr

Grundkurs Betriebssysteme

Grundkurs Betriebssysteme Grundkurs Betriebssysteme Architekturen, Betriebsmittelverwaltung, Synchronisation, Prozesskommunikation von Peter Mandl 3., akt. und erw. Aufl. 2013 Springer Vieweg Wiesbaden 2012 Verlag C.H. Beck im

Mehr

8. Swapping und Virtueller Speicher

8. Swapping und Virtueller Speicher 8. Swapping und Virtueller Speicher Der physikalische Adreßraum wird weiter abgebildet auf Arbeitsspeicher und Plattenspeicher. Prozesse (deren benutzte Seiten) die nicht laufen (und bald nicht laufen)

Mehr

6.6 Persistenter virtueller Speicher

6.6 Persistenter virtueller Speicher 6.6 Persistenter virtueller Speicher Idee: alle Segmente sind persistent Datei -Begriff überflüssig! Aber: Segment hat erweiterten Deskriptor. bs-6.6 1 Segment überdauert Tod des erzeugenden Prozesses,

Mehr

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Maren Bennewitz 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten

Mehr

Was ist ein Betriebssystem? Geschichte der Betriebssystemen Klassifizierung der Betriebssystemen Aufgaben des Betriebssystems

Was ist ein Betriebssystem? Geschichte der Betriebssystemen Klassifizierung der Betriebssystemen Aufgaben des Betriebssystems Betriebssysteme Was ist ein Betriebssystem? Geschichte der Betriebssystemen Klassifizierung der Betriebssystemen Aufgaben des Betriebssystems Inhalt 1 Was ist das Betriebssystem Programme (Systemprogramme),

Mehr

Praktikum Informatik 2: Betriebssysteme und Rechnernetze

Praktikum Informatik 2: Betriebssysteme und Rechnernetze Praktikum Informatik 2: Betriebssysteme und Rechnernetze Thema: 4. Speicherverwaltung Datum: 19.03.2008 vorgelegt von: Antje Stoppa Carsten Erdmann Andr é Hartwig Ulrike Saretzki Inhaltsverzeichnis 1 Motivation

Mehr

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016 Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i

Mehr

3. Scheduler und Schedulingstrategien

3. Scheduler und Schedulingstrategien 5 3 Scheduler und Schedulingstrategien Unter Scheduling versteht man einen Ablaufplan, einen Fahrplan oder eine Auswahlstrategie, nach der ein knappes Betriebsmittel im Wettbewerb befindlichen Prozessen

Mehr

Nebenläufige Programmierung

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

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

bereit (oder Zombie genannt). Normales Ende (exit) und synchrone und asynchrone Signal-Ereignisse, z.b.

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

Mehr