Informatik II. Betriebssysteme. Betriebssysteme. Betriebssysteme. Betriebssysteme. Rainer Schrader. 26. November 2008

Größe: px
Ab Seite anzeigen:

Download "Informatik II. Betriebssysteme. Betriebssysteme. Betriebssysteme. Betriebssysteme. Rainer Schrader. 26. November 2008"

Transkript

1 Informatik II Rainer Schrader Zentrum für Angewandte Informatik Köln 26. November / 73 2 / 73 Gliederung Aufgaben Scheduling Speicherverwaltung ist ein Standardthema in jedem Informatik-Curriculum wir können es in dieser Grundvorlesung nur kurz (zwei Vorlesungen) anreißen wir beginnen mit einer Übersicht und geben dann exemplarisch erste Einblicke in zwei zentrale Themen: Prozess-Scheduling und Speicherverwaltung im Hauptstudium wird regelmäßig eine Spezialvorlesung angeboten weiterführende Literatur: A. S. Tanenbaum: Moderne, 2. Auflage, Person Studium, / 73 4 / 73

2 Aufbau eines Computersystems (Schichtenmodell) Was ist ein Betriebssystem? Das Betriebssystem (BS) ist ein Programm, das die Verbindung zwischen Nutzer und Hardware herstellt es schafft dem Nutzer eine Umgebung, in der seine Programme einfach und schnell ausgeführt werden können daher muss es vorhandene Hardware-Ressourcen (CPU-Zeit, Speicher, Ein-/Ausgabe ) den Anwendungsprogrammen zur Verfügung stellen und dabei Kriterien wie Fairness und Effizienz berücksichtigen User 1 User 2 User Compiler, Editor,..., Spiele,...., DB-System Anwendungsprogramme Betriebssystem Computerhardware 5 / 73 6 / 73 Ein Betriebssystem Nach DIN umfasst ein Betriebssystem: die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten des Rechensystems bilden und die insbesondere die Abwicklung von Programmen steuern und überwachen verschleiert die Komplexität der Maschine dem Anwender gegenüber (Abstraktion), stellt Benutzerschnittstellen bereit (Shell, Kommandointerpreter, Desktop, ), verwaltet Maschinen-Ressourcen wie Prozessor(en), Hauptspeicher (Cache), Hintergrundspeicher (Platte, Band, ), Geräte (Terminal, Scanner, Drucker, Platten, ), Rechenzeit koordiniert den Ablauf von Prozessen. 7 / 73 8 / 73

3 Historische Klassifikation 2. Computergeneration ( ) Charakteristikum: Transistoren und Stapelverarbeitung 1. Computergeneration ( ) hatte kein Betriebssystem Charakteristikum: Röhren und Steckbretter Programmierung via Steckbrett, Lochstreifen, Lochkarten keine (höheren) Programmiersprachen Eingabe eines Auftrags in geschlossener Form: Programm + Daten + Steueranweisungen Ausgabe nach Abschluss der Bearbeitung i.d.r. als Ausdruck auf Papier Batch-Betrieb (Stapelverarbeitung) einfache Job-Control-Sprache Programmiersprachen (Assembler, Cobol, Fortran, ) Magnetbänder als Zwischenspeicher 9 / / Computergeneration ( ) Charakteristikum: Integrierte Schaltkreise und Multiprogrammierung Kommunikation mit Computer via Tastatur, Bildschirm zum Starten, Verfolgen und Beeinflussen des Programms Multiprogrammierung (mehrere Programme gleichzeitig im Speicher) simulierte quasisimultane Bearbeitung der einzelnen Programme, Timesharing-Betrieb mit Terminals SPOOLING (simultaneous peripheral operation on line) direktes Speichern von Rechenaufträgen und Druckaufträgen auf der Platte MULTICS als UNIX-Vorgänger (MIT) 4. Computergeneration (seit 1980) Charakteristikum: Personal Computer (PC) UNIX und C Multitasking, d.h. quasisimultane Bearbeitung weitgehend unabhängiger Programmabschnitte innerhalb eines Auftrags MS-DOS, Windows Mehrprozessorsysteme mit verteiltem Betriebssystem 11 / / 73

4 Weitere Entwicklung verbesserte Unterstützung der Parallelverarbeitung Realzeitfähigkeiten zur Unterstützung von Multimedia-Anwendungen (Audio, Video) Software in Eingebetteten Systemen benötigt Betriebssystem-Unterstützung (Palm OS, Windows CE) Klassifikation nach Betriebsart des Rechensystems Stapelverarbeitungs- (batch processing) Dialogbetrieb- (interactive-, dialog-processing) Netzwerk- (network processing) Realzeit- (realtime processing, fest nach oben begrenzte Antwortzeiten) für Prozessrechner für Steuerungs- und Regelaufgaben (kurze Antwortzeiten gefordert) Universelle (erfüllen mehrere Kategorien) 13 / / 73 Klassifikation nach der Anzahl gleichzeitig laufender Programme (task b= Prozess b= Aufgabe, Auftrag) Einzelprogrammbetrieb (single tasking): Abarbeitung mehrerer Programme nacheinander Mehrprogrammbetrieb (multitasking): Abarbeitung mehrerer Programme gleichzeitig bei mehreren CPUs oder zeitlich verschachtelt b= quasiparallel Klassifikation nach der Anzahl gleichzeitig arbeitender Benutzer Einzelbenutzerbetrieb (single user mode) Computer exklusiv für einen Benutzer Mehrbenutzerbetrieb (multiuser mode) Mehrere Nutzer greifen via Terminals oder Netzwerkverbindung auf den Computer zu 15 / / 73

5 Strukturierung eines BS in mehreren Schichten/Schalen: Klassifikation nach der Anzahl der verwalteten Prozessoren/Rechner Ein-Prozessor-Betriebssystem (Rechner, die auf von-neumann- Architektur aufgebaut sind), haben nur einen Universalprozessor. Zugehörige unterstützen nur einen Prozessor Mehr-Prozessor-Betriebssystem (Hier existieren wenigstens zwei Prozessoren, die auf verschiedene Weisen gekoppelt sein können.) Hardware BS - Kern Anwendungsprogramme 17 / / 73 Strukturierung eines BS in mehreren Schichten/Schalen: Die unterste Schicht umfasst alle hardwareabhängigen Teile des Betriebssystems (insbesondere die Verarbeitung von Interrupts) setzt direkt auf die Rechner-Hardware auf verwaltet reale Betriebsmittel stellt statt dessen virtuelle Betriebsmittel bereit wird auch als BIOS (Basic I/O-System) bezeichnet alle weiteren Schichten arbeiten dann hardwareunabhängig Strukturierung eines BS in mehreren Schichten/Schalen: die nächste Schicht enthält grundlegende E/A-Dienste für Plattenspeicher und Peripheriegeräte die darauffolgende Schicht behandelt Kommunikations- und Netzwerkdienste, Dateien und Dateisysteme weitere Schichten sind je nach Anforderungen möglich 19 / / 73

6 jede Schicht bildet abstrakte (virtuelle) Maschinen diese kommunizieren mit benachbarten Schichten mittels wohldefinierter Schnittstellen ruft ggf. Funktionen in der nächstunteren Schicht auf stellt Funktionen für die nächsthöhere Schicht zur Verfügung Gesamtheit der Funktionen einer Schicht: Dienste der Schicht Gesamtheit der Vorschriften, die für Nutzung der Dienste einzuhalten sind: = Protokoll höhere BS-Schichten sind durch Programmierschnittstellen (API = Application Program Interface) vom Kern getrennt dadurch haben Änderungen am BS-Kern oder der Hardware keine (kaum) Auswirkungen auf Anwenderprogramme Prozesse beim Multitasking-/Multiuser-Betrieb müssen die Betriebsmittel auf die Programme verteilt werden zu jedem Programm muss vermerkt werden, welche Betriebsmittel (Speicher, CPU-Zeit, ) von ihm benötigt werden diese Informationen über benötigte Betriebsmittel für Programme werden zusammen mit dem Programm selbst auch Prozess (task) genannt Prozess = Programm im Stadium der Ausführung in Multitaskingsystemen muss das BS die Abarbeitungsreihenfolge der Prozesse festlegen (Scheduling) das Scheduling ist selbst in Spezialfällen (nonpreemptive Scheduling) aus algorithmischer Sicht schwierig, wie wir später sehen werden 21 / / 73 Prozessverwaltung ein Prozess ( Elternprozess ) kann andere Prozesse ( Kindprozesse ) erzeugen ein Programm (Job) in einem Multiprogramm-System kann mehrere Prozesse (Multiprocessing) erzeugen z.b. in Unix kann man dem Interpreter (der shell) das Kommando geben: cat Text1 Text2 pr lpr dieses Kommando erzeugt drei Prozesse: (1) Aneinanderhängen von Text1 und Text2 (2) Konvertieren einer Textdatei in eine ausdruckfähige Datei (3) Ausdrucken (durch wird die Ausgabe eines Prozesses zur Eingabe des nächsten) bei Einprozessorsystemen ist nur ein Prozess aktiv, die anderen sind blockiert bei gleichzeitigem Zugriff von zwei Prozessen auf das gleiche Betriebsmittel muss dieser Zugriff koordiniert werden dazu ordnet man den Prozessen Prozesszustände zu, die die Koordination herstellen: Prozesszustand running ready waiting blocked new killed terminated Bedeutung Prozess wird gerade ausgeführt Prozess ist zur Ausführung bereit und wartet auf einen freien Prozessor Prozess wartet auf das Eintreten eines Ereignisses (z.b. auf Freigabe eines von ihm belegten Betriebsmittels) Prozess wartet auf ein fremdbelegtes Betriebsmittel Prozess wird erzeugt Prozess wird vorzeitig abgebrochen Prozess ist beendet 23 / / 73

7 Zustandsdiagramm (Übergänge zwischen Prozesszuständen) new admitted interrupted exit terminated Bei Prozessen ist das Betriebssystem primär zuständig für die Prozessverwaltung: Aufteilung von Speicherplatz und CPU-Zeit ready running Bereitstellung von Mechanismen zur Synchronisation und Kommunikation unter Prozessen Behandlung von Verklemmungs-Situationen ( Deadlock ) I/0 or event completion scheduler dispatch waiting I/0 or event wait 25 / / 73 im Betriebssystem werden Prozesse durch Prozesskontrollblöcke (PCB) repräsentiert diese enthalten alle für das Betriebssystem wichtigen Informationen über die Prozesse z.b. sind folgende Informationen gespeichert: PCB-Feld Bedeutung Status enthält den Prozesszustand Programmzähler enthält die Adresse der nächsten auszuführenden Instruktion Speichermanagment enthält die letzten Werte der Speicherregister, Seitentabellen, und weitere Informationen für die Speicherverwaltung E/A-Status enthält Listen zugeordneter E/A-Geräte, offener Dateien, Accounting enthält die verbrauchte CPU-Zeit, Zeitbeschränkung, Buchungszahlen, CPU-Scheduling enthält Prioritäten, Zeiger auf Warteschlangen und andere Scheduling-Parameter Die Kommunikation zwischen Prozessen erfolgt durch: Message Passing oder Shared Memory Message Passing das BS baut eine uni- oder bidirektionale Verbindung zwischen zwei Prozessen A und B auf dazu dienen Systemaufrufe wie open_connection, accept_connection oder close_connection mit send und receive erfolgt ein Nachrichtenaustausch über diese Verbindungen 27 / / 73

8 Shared Memory ein Prozess hebt die exklusive Nutzung von Speicherbereichen auf über diese Speicherbereiche können Nachrichten ausgetauscht werden Prozess A speichert Nachrichten an Prozess B in dessen Speicherbereich ohne Umweg über den BS-Kern Vorteile von Shared Memory gegenüber Message Passing: grosse Datenmengen können schneller übertragen werden mögliche Probleme bei Shared Memory: Synchronisation und Konsistenz: A muss geschrieben haben, erst danach kann B lesen Singletasking der Hauptspeicher enthält: den Betriebssystemkern darauf aufsetzend den Command Interpreter (CI) darauf wird ein aufgerufener Prozess exklusiv in den Speicher geladen Bei Multiprogramming und Multitasking können daneben mehrere Prozesse gleichzeitig im Speicher sein: P j... P 2 P 1 CI BS-Kern Das BS regelt den Zugriff der Prozesse auf die CPU Scheduling. 29 / / 73 Das Scheduling geschieht auf zwei Ebenen: der Langzeit-(Job)Scheduler ist zuständig für die Prozesse, die in Speicher geladen werden Scheduling Aufgaben Scheduling Speicherverwaltung der Kurzzeit-(CPU)Scheduler legt fest, welcher der geladenen Prozesse im ready-status wann auf CPU zugreifen kann gute Scheduler achten auf einen ausgewogenen Job-Mix zwischen E/A-intensiven und rechenintensiven Prozessen im Interesse einer guten Auslastung des Gesamtsystems bei Multitasking organisiert das Betriebssystem das timesharing meist durch eine Round-Robin-Strategie: Prozesse erhalten Zeitintervalle zur Bearbeitung zugeteilt nach Ablauf des Zeitintervalls wird der Prozess zugunsten eines anderen unterbrochen und hinten in eine Prioritätsschlange eingefügt 31 / / 73

9 wenn die Nachfrage das Angebot übersteigt, ist auch eine Koordination des Zugriffs auf Betriebsmittel nötig Scheduler koordinieren dann die Prozesse durch Einsortieren in eine Warteschlange, wodurch die Zuweisung des Prozessors an die Prozesse geregelt wird Schedulingstrategien versuchen bestimmte Ziele zu realisieren: möglichst hohe CPU-Auslastung (Wunsch : 100%, real 40 90%) hoher Durchsatz (throughput) d.h. möglichst hohe Zahl an Jobs pro Zeiteinheit als Maß für hohe Systemauslastungdarauf Die Ziele beim Prozess-Scheduling umfassen Fairness (kein Job sollte anderen gegenüber ohne Sondervereinbarung bevorzugt werden) niedrige Ausführungszeit (turnaround time) (Zeitspanne von Jobbeginn bis Jobende; enthält die Summe der Zeiten in Warteschlangen, der Ausführung selbst (Bedienzeit) und der Zeit für Ein- und Ausgabe) niedrige Wartezeit (waiting time) (Die Schedulerstrategie beschränkt sich auf die Minimierung der Wartezeit in der ready-liste) niedrige Antwortzeit (response time) (Zeit zwischen interaktiver Eingabe und Ausgabe der Antworten auf ein Ausgabegerät) 33 / / 73 obige Ziele können natürlich nicht gleichzeitig verfolgt werden, z.b. führt die Bevorzugung kurzer Prozesse zu gutem Durchsatz und niedriger Antwortzeit, verletzt aber die Fairness ein idealer Scheduling-Algorithmus existiert nicht daher ist es sinnvoll, in einem Scheduling-Algorithmus alle möglichen Schedulingstrategien zu integrieren je nach konkreter Situation können verschiedene der oben genannten Ziele stärker berücksichtigt werden das Scheduling ist für das BS ein zentralen und recht kompliziertes Gebiet wir wollen uns einen einen ersten Eindruck verschaffen wir beschäftigen uns nur mit dem Fall, in dem laufende Prozesse nicht unterbrochen werden dürfen (non-preemptive Scheduling) wir betrachten zunächst den 1-Prozessorbetrieb 35 / / 73

10 Scheduling-Strategien first-come-first-served (FCFS oder FIFO): Jobs werden bei ihrem Entstehen in die Warteschlange eingefügt shortest-job-first (SJF): Prozesse mit (geschätzt) kürzester Ausführungzeit werden zuerst bedient highest-response-ratio-next (HRN): Jobs mit maximalem Verhältnis Ausführungszeit Bedienzeit werden zuerst bedient (den Zeiten liegen Schätzungen zugrunde bzw. werden aktualisiert) priority-scheduling (PS): ein Job, der in ready-liste aufgenommen wird, wird in die Warteschlange gemäß seiner Prioritäten einsortiert Beispiel: es kommen fast gleichzeitig drei zu bearbeitende Jobs mit Rechenzeitbedarf 9, 3 und 1 Zeiteinheiten an die first-come-first-served-strategie bearbeitet zuerst der Job mit Laufzeit 9, danach der mit Laufzeit 3 und schließlich der mit Laufzeit 1 abgearbeitet Für diese Reihenfolge beträgt die mittlere Fertigstellungszeit 1 3 ( ) = 34 3 = Zeiteinheiten die shortest-job-first-strategie wählt die umgekehrte Reihenfolge die mittlere Fertigstellungszeit ist 1 ( ) = 6 Zeiteinheiten 3 berechnet SJF stets eine Reihenfolge der Jobabarbeitung mit kleinster mittlerer Fertigstellungszeit? 37 / / 73 Satz SJF berechnet zu einer Folge von n Jobs mit Ausführungszeiten t 1, t 2,..., t n eine Abarbeitungsreihenfolge mit minimaler mittlerer Fertigstellungszeit. Beweis: die mittlere Fertigstellungszeit bei Abarbeitung der Jobs in Reihenfolge J i1, J i2,..., J in beträgt: 1 n nx kx k =1 j=1 dieser Ausdruck wird minimiert, wenn t ij = 1 n nx (n + 1 k )t ik k =1 nt i1 + (n 1)t i t in 1 + t in minimiert wird letzterer Ausdruck wird aber offensichtlich für t i1 t i2 t in 1 t in minimiert, d.h. bei jeder von der SJF-Strategie gewählten Reihenfolge. 39 / 73 die SJF-Strategie hat aber den Nachteil, dass sie das Fairnessgebot nicht beachtet bei kontinuierlich entstehenden neuen Jobs kann es zum Verhungern (starvation) eines Jobs mit hoher benötigter Rechenzeit kommen Bemerkungen zu HRN und PS: highest-response-ratio-next (HRN): bevorzugt Jobs mit kurzer Bedienzeit mit zunehmender Wartezeit steigt aber auch die Präferenz für Jobs mit langen Bedienzeiten priority-scheduling (PS) bei statischen Prioritäten können Prozesse wie bei SJF verhungern das kann mittels dynamischer Prioritätenzuweisung verhindert werden 40 / 73

11 Wir betrachten nun Scheduling in Multiprozessorsystemen (non-preemptive) Szenario: wir haben m gleichartige Prozessoren P 1,..., P m auf ihnen sollen n Jobs J 1,..., J n mit Ausführungzeiten t 1,..., t n abgearbeitet werden es gibt keine Abhängigkeiten zwischen den Jobs (Prozessen) ein Belegungsplan (Schedule) S legt für jeden Job J i den Prozessor und das Zeitintervall zur Abarbeitung fest sei f i Zeitpunkt, zu dem die Abarbeitung von J i unter S beendet ist dann beträgt die mittlere Fertigstellungszeit (mean finish time (MFT)) der Jobs unter S: MFT(S) = 1 n nx i=1 f i sei w i > 0 ein zu J i gehöriges Gewicht, 1 i n die mean weighted finish time (MWFT) unter S ist: MWFT(S) = 1 n nx w i f i sei T j Zeitpunkt, zu dem Prozessor P j alle durch S zugewiesenen Jobs abgearbeitet hat dann beträgt die Fertigstellungszeit (makespan, finish time (FT)) von S: FT(S) = max 1 j m {T j } Ziel: bestimme einen Schedule S, der die jeweils gewünschte Zielfunktion MFT(S), MWFT(S) bzw. FT(S) minimiert i=1 41 / / 73 man kann zeigen, dass alle drei Probleme in einem präzisierbaren Sinne schwierig sind ( NP-schwierig Komplexitätstheorie, letztes Kapitel dieser Vorlesung) Beispiel: Belegungsplan für 10 Jobs J 1, J 2,..., J 10 mit Bearbeitungszeiten t 1, t 2,..., t 10 für m = 3 Prozessoren: wir zeigen nun, dass man das Minimum von FT(S) aber bis auf den Faktor 2 approximieren kann P 1 t 1 t 4 t 7 t 9 wir nehmen an, dass die Jobs so schnell entstehen, dass keiner der Prozessoren vorher arbeitslos ( idle ) wird P 2 P 3 t 2 t 6 t 3 t5 t 5 t 8 Strategie: ordne den nächsten ankommenden Job dem Prozessor zu, dessen bisherige Belegung ihn am wenigsten lange auslastet bis hier sind alle Prozessoren beschäftigt sei FT opt die Fertigstellungszeit eines optimalen Belegungsplans für die n Jobs sei FT approx die Fertigstellungszeit eines Belegungsplans, der durch die obige Strategie erzielt wird 43 / 73 Offensichtlich gilt: FT opt max{ 1 m P n i=1 t i, max 1 i n {t i }} Daraus folgt: FT approx 1 Xn 1 t i + t n 1 m m i=1 nx i=1 t i + max 1 i n {t i } 2 FT opt. 44 / 73

12 mit diesem (kurzen) Einblick in die Scheduling-Problematik wollen wir uns hier begnügen bereits der Einprozessor-Fall ohne Unterbrechungen wird NP-schwierig, wenn Abhängigkeiten berücksichtigt werden müssen (Bedingungen der Art, dass ein Job A beendet sein muss, bevor ein Job B beginnen kann) nebenläufige Prozesse (auf Multiprozessorsystemen oder im Time-Sharing auf Einprozessorsystemen) können zu korrupten Daten führen, wenn nicht gewisse kritische Bereiche nur exklusiv betreten werden können Verklemmungen ( Deadlocks ), d.h. permanente Blockaden für gewisse Prozesse, von denen jeder auf ein Ereignis wartet, das nur von einem anderen dieser Prozesse ausgelöst werden kann, müssen vermieden werden eine Spezialvorlesung über im Hauptstudium beinhaltet eine Fülle von derartigem Material, das algorithmisch interessant und anspruchsvoll ist wir schließen diesen Abschnitt mit einer Illustration eines berühmten Deadlocks jenseits der fünf Philosophen kennen nur zwei Zustände in ihrem Leben: denken oder essen sie sitzen an einem runden Tisch, in deren Mitte eine Schüssel mit Spaghetti steht jeder Philosoph hat einen Teller vor sich, und zwischen je zwei Philosophen befindet sich eine Gabel ein Philosoph kann nur essen, wenn er beide Gabeln hat hier wird die Gefahr des Verhungerns offensichtlich 45 / / 73 Gliederung Aufgaben Scheduling Speicherverwaltung wir wenden uns nun der Speicherverwaltung zu wir werden drei Techniken kennen lernen, die von modernen Prozessoren und den darauf laufenden n unterstützt verwendet werden: Paging Segmentierung Buddy Systeme 47 / / 73

13 Der Speicher eines von-neumann-rechners ist typischerweise hierarchisch aufgebaut: CPU Register Cache Hauptspeicher Hintergrundspeicher Faustregeln wir betrachten zwei benachbarte Stufen in der Speicherhierarchie, z.b. Hauptspeicher/Hintergrundspeicher der Speicher wird in Seiten (pages) gleicher Größe partitioniert Ablauf der Speicherverwaltung: eine im Hauptspeicher nicht vorhandene Seite wird benötigt ( Seitenfehler ) diese wird aus dem erheblich langsameren Hintergrundspeicher in einen freien Seitenrahmen geladen falls der Hauptspeicher schon vollständig belegt war, muss dafür eine Seite ausgelagert werden S17 Seiten (90,10)-Regel: 90% der Zugriffe auf Daten benötigen lediglich 10% der Daten, auf denen das Programm arbeitet Speicherzugriffe auf den Cache sind wesentlich schneller als auf den Hauptspeicher diese wiederum wesentlich schneller als die auf einen Hintergrundspeicher (eine Festplatte ist ungefähr mal langsamer als der Hauptspeicher.) S18 S19 S20 S21 S22 hjkhk S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 S16 49 / 73 S23 SPEICHER HINTERGRUNDSPEICHER 50 / 73 online-algorithmen Paging-Problem gegeben eine Folge σ = (σ 1, σ 2,..., σ m ) von Seitenreferenzen lagere die Seiten so aus und ein, dass die Anzahl der Seitenfehler minimal wird Strategie: LFD (longest forward distance): lagere bei einem Seitenfehler eine solche Seite aus, die am weitesten in der Zukunft nachgefragt wird. Satz (Belady (1966)) Ein auf LFD basierender Algorithmus ist ein optimaler (offline-)algorithmus für das Paging-Problem. sind Verfahren für Probleme, über die nicht alle Informationen a priori vorliegen sei σ = (σ 1, σ 2,..., σ m ) eine Folge von Anfragen ( requests ) ein online-algorithmus A muss die Anfrage σ i sofort beantworten, sobald σ i eingelesen worden ist er hat dabei keine Kenntnis der weiteren Anfragen σ i+1,..., σ m auch m ist im allgemeinen nicht bekannt online-algorithmen sind i.a. nicht kostenoptimal in der Regel versucht man die Lösung des besten fffline-algorithmus zu approximieren die Bewertung der Güte von online-algorithmen erfolgt im Vergleich mit den Kosten eines besten Offline-Algorithmus für beliebige Anfragefolgen (bei vollständiger Information) 51 / / 73

14 bezeichne C A (σ) die Kosten der Lösung eines online-algorithmus A zur Verarbeitung der Eingabefolge σ bezeichne C OPT (σ) die Kosten der Lösung eines optimalen offline-algorithmus OPT auf σ ein online-algorithmus A ist c-kompetitiv, falls für alle Eingabefolgen σ gilt: C A (σ) c C OPT (σ) + a für eine Konstante a. (beim Multiprozessor-Scheduling haben wir kürzlich bereits einen 2-kompetitiven online-algorithmus kennen gelernt) online-algorithmen für das Paging-Problem entscheiden bei einem Seitenfehler zum Zeitpunkt t allein aufgrund von σ 1, σ 2,..., σ t, welche Seite entfernt werden soll. LIFO: entferne bei einem Seitenfehler die zuletzt geladene Seite FIFO: entferne bei einem Seitenfehler die zuerst geladene Seite LRU (least recently used): entferne bei einem Seitenfehler die Seite, auf die am längsten nicht mehr zugegriffen worden ist LFU (least frequently used): entferne bei einem Seitenfehler die Seite, auf die am seltensten zugegriffen wurde FWF (flush when full): lösche bei einem Seitenfehler den gesamten Speicher 53 / / 73 1 S S11 S2 S9 S Flush When Full kjkdfl Analyseergebnisse LIFO, FWF und LFU sind nicht c-kompetitiv für beliebiges c > 0 LRU und FIFO sind k -kompetitiv, wenn k die Anzahl der Seitenrahmen im Hauptspeicher bezeichnet kann man den Faktor k schlagen? 6 S10 0 nein, denn es gilt: 7 S / / 73

15 Satz Sei A ein online-algorithmus für das Paging-Problem. Wenn A c-kompetitiv ist, so gilt c k. Beweis: sei S = {p 1,..., p k +1 } eine Folge von Seiten sei A ein beliebiger online-algorithmus und OPT ein optimaler offline-algorithmus betrachte die Anfragefolge, die jeweils diejenige Seite anfordert, die A nicht im Hauptspeicher hat d.h. A macht bei jeder Anfrage einen Seitenfehler OPT habe einen Seitenfehler bei Anfrage σ t beim Bedienen von σ t kann OPT eine Seite auslagern, die während der nächsten k 1 Anfragen σ t+1,..., σ t+k 1 nicht nachgefragt wird somit macht OPT für je k aufeinanderfolgende Anfragen höchstens einen Fehler. Segementierung beim Paging ist der Speicher in gleichgroße Seiten (pages) aufgeteilt dagegen sind bei der Segmentierung die Daten gemäß ihres logischen Zusammenhangs in Segmente (von i.d.r. unterschiedlicher Größe) zusammengefasst jedes Segment besitzt einen Namen und eine Länge Adressen bestehen aus Segmentnamen und dem Offset innerhalb des Segments bei Numerierung der Segmente besteht eine (logische) Adresse eines Datums aus einem geordnetem Paar (Segmentnummer,Offset) das Betriebssystem lädt die für die Prozess benötigten Segmente in den Hauptspeicher 57 / / 73 wenn der Hauptspeicher nicht gross genug ist: einzelne Segmente werden bei Anfrage in den Hauptspeicher geladen, andere werden dazu ausgelagert Resultat: der Hauptspeicher ist mit Segmenten und Lücken belegt benachbarte Lücken sollten zu einer großen vereinigt werden dazu muss das Betriebssystem eine Liste der Segmente und Lücken mit den zugehörigen Größen verwalten wenn ein neues Segment im Hauptspeicher abgelegt werden soll, gilt es, eine Lücke zu finden, die mindestens so groß wie das abzulegende Segment ist zur Auswahl der Lücke gibt es u.a. folgende Strategien: First Fit (FF): lege das Segment in die erste passende Lücke ab Best Fit (BF): platziere das Segment in die kleinste passende Lücke Worst Fit (WF): platziere das Segment in die größte passende Lücke Rotating First Fit (RFF): wie FF, jedoch wird für das nächste Segment vom Ende der Lücke, in die das letzte Segment gelegt wurde, aus die nächste passende Lücke gesucht 59 / / 73

16 Analyseergebnisse Beispiel, in dem das BF versagt: Speicherfüllung: Nachteil von FF: ws entstehen viele kleine Lücken am Speicheranfang und das führt zu einem hohen Speicherverlust Nachteil von BF: die nach Platzierung verbleibenden Restlücken sind oft zu klein für eine spätere Nutzung, so dass viele unbrauchbare kleine Lücken entstehen eine Simulation ergibt die folgende Relation zwischen den Strategien ( S 1 > S 2 bedeutet S 1 ist besser als S 2 ): RFF > FF > BF > WF für jede der Strategien lassen sich Beispiele konstruieren, für die sie optimal bzw. sehr schlecht sind füge folgende Segmente in der angegebenen Reihenfolge ein: BF fügt erst 40 in 50er Lücke ein, danach 45 in 90er Lücke, danach ist kein Platz mehr für 50 FF und RFF dagegen können das Einfügen der drei Segmente ohne Probleme lösen, wenn sie bei der 1. Lücke beginnen von der 2. Lücke aus gestartet versagen FF und RFF ebenfalls 61 / / 73 Buddy-Systeme (Buddy = Kumpel) sind ein Kompromiss zwischen Paging und Segmentierung sie erzeugen weniger Speicherverschnitt als die Segmentierung und sind weniger starr als Paging der physikalische Speicher habe die Größe 2 n Speicheranforderungen seien nur in Zweierpotenz-Größen erlaubt bei einer Anforderung wird der Speicher solange in kleinere Zweierpotenzen zerlegt, bis die gewünschte Größe verfügbar ist zu jeder Zweierpotenz k gibt es eine Liste L k, in der der freie Speicher der Länge 2 k vermerkt ist soll ein Segment der Größe 2 k gespeichert werden, so wird in L k nachgesehen, ob freier Speicher der gewünschten Länge vorhanden ist ist L k, so platziere das Segment in einen freien Speicherbereich und lösche diesen aus L k ist L k =, so suche bei L k +1 beginnend, falls nötig in L k +2, u.s.w., solange, bis ein freier Speicherbereich gefunden ist zerlege diesen durch Halbieren solange, bis eine freie Stelle der gewünschten Größe gefunden ist, in die das Segment dann eingefügt wird füge die restlichen durch Halbieren erzeugten freien Zweierpotenzen in die entprechenden Listen ein 63 / / 73

17 Beispiel: n = 8. Füge ein Segment der Größe 2 6 in den ursprünglich leeren Speicher ein wird ein Segment der Größe 2 k freigegeben, so prüfe, ob der zugehörige Buddy mit demselben Vater auch frei ist falls ja, vereinige sie zu einem freien Speicherbereich der Größe 2 k +1 und iteriere solange, bis keine Buddies mehr vereinigt werden können freier Speicher belegter Speicher splitten in Buddies 65 / / 73 sei der Speicheradressbereich das Intervall [0, 2 n 1 ] in Binärdarstellung: [ , ] mit n-bit langen Speicheradressen durch die hierachische Teilung umfasst ein Speicherbereichs der Länge 2 k im Buddy-System ein Intervall [α 0. {z.. 0 }, α 1. {z.. 1 } ] k Bits k Bits der (n k )-Bit lange Präfix α repräsentiert den zugehörigen Speicherbereich der Buddy α der Länge 2 k wird in zwei Buddies α 0 und α 1 der Länge 2 k 1 zerlegt bei Freigabe der Buddies α 0 und α 1 werden diese zum Buddy α wiedervereinigt benachbarte freie Buddies können nicht immer zusammengefasst werden, z.b lassen sich nicht zusammenfassen! 0 Zerlegung oder Wiedervereinigung zweier Buddies erfolgt in Zeit O(1) deshalb erlauben Buddysysteme eine sehr schnelle Speicherverwaltung sie bieten deutlich mehr Flexibilität, unterschiedlich große Speicheranforderungen zu bedienen, als Pagingverfahren da die Speicherzuteilung immer in Zweierpotenzen erfolgt, wird jedoch Speicherplatz verschwendet / / 73

18 Analyse sei die Gesamtspeicherplatzgröße 2 n Modellannahme: alle 2 n möglichen Speichergrößen s (1 s 2 n ) werden mit Wahrscheinlichkeit p(s) = 1 2 n angefordert (Gleichverteilungsmodell: dieses ist in der Regel nicht realistisch, ein realistisches Modell hängt von der jeweiligen Anwendung ab) dann gilt für die mittlere tatsächliche Speicherplatzanforderung S a in diesem Modell: S a = 2 n X s=1 s p(s) = 1 n X2 s 2 n = 1 2 n 2n (2 n + 1) 2 s=1 = 2 n n 1 bei Buddy-Systemen: werden s Speicherplätzen angefordert so wird ein Buddy der Größe 2 log 2 (s) bereitgestellt Anfragen : n Reservierung : {z } {z } {z n } n 1 2 n d.h. für 2 i 1 aufeinanderfolgende verschiedene Speicherplatzanforderungen stellen Buddysysteme effektiv jeweils 2 i Speicherplätze bereit 69 / / 73 S b bezeichne die mittlere tatsächliche Speicherplatzbelegung durch das Buddy-System im Modell. Dann gilt: S b = 2 n X s=1 2 log 2 (s) p(s) # = 1 Xn 1 "1 + 2 i 2 i+1 2 n i=0 # = 1 Xn 1 " i 2 n i=0 = 1» n 1 2 n = 1 2 n + 2n n n+1 (geometrische Reihe) somit beträgt die mittlere Speicherplatzausnutzung: S a = 2n 1 S 1 b = 3 3 2n+1 4 d.h. 75% des reservierten Speicherplatzes werden im Mittel tatsächlich belegt. 71 / / 73

19 soweit der kurze Einblick in das Kapitel viele wichtige Themen habe wir gar nicht angesprochen: Vermeidung von Deadlocks Synchronistaion Dateiorganisationen Benutzerverwaltung Sicherheitsmechanismen Details werden in der Spezialvorlesung über Betriebsysteme besprochen 73 / 73

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Kompetitive Analysen von Online-Algorithmen

Kompetitive Analysen von Online-Algorithmen Kompetitive Analysen von Online-Algorithmen jonas echterhoff 16. Juli 004 1 Einführung 1.1 Terminologie Online-Algorithmen sind Algorithmen, die Probleme lösen sollen, bei denen Entscheidungen getroffen

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

8. Betriebssysteme. und überwachen.

8. Betriebssysteme. und überwachen. 8. Betriebssysteme 8.1. Was ist ein Betriebssystem? Unter einem Betriebssystem (engl. operating system) versteht man Software, die zusammen mit den Hardwareeigenschaften des Rechners die Basis zum Betrieb

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

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

Vorlesung Betriebssysteme Hochschule Niederrhein, Prof. Pohle-Fröhlich, SS 2015

Vorlesung Betriebssysteme Hochschule Niederrhein, Prof. Pohle-Fröhlich, SS 2015 1. Einführung Vorlesung Betriebssysteme Hochschule Niederrhein, Prof. Pohle-Fröhlich, SS 2015 1.1 Inhalt der Vorlesung Ziele und Funktionen von Betriebssystemen Unix und Linux: Benutzerschnittstelle, Skript-Programmierung

Mehr

Kapitel III. Prozessverwaltung. VO Betriebssysteme

Kapitel III. Prozessverwaltung. VO Betriebssysteme Kapitel III Prozessverwaltung V 1 Was ist ein Prozess? Prozesse ein exekutierendes Programm (aktive Einheit) ein Prozess benötigt Ressourcen: CPU-Zeiten, Speicher, Files, I/O Systeme Betriebssystem ist

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

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

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

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

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

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

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

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

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

Betriebssysteme Kap F: CPU-Steuerung CPU-Scheduling

Betriebssysteme Kap F: CPU-Steuerung CPU-Scheduling Betriebssysteme Kap F: CPU-Steuerung CPU-Scheduling 1 termini technici Der englische Fachausdruck scheduler wurde eingedeutscht : Der Scheduler Für scheduling ist im Deutschen auch zu verwenden: Ablaufplanung

Mehr

1 Einleitung. 1.1 Aufgaben und Grobstruktur. Was ist ein Betriebssystem?

1 Einleitung. 1.1 Aufgaben und Grobstruktur. Was ist ein Betriebssystem? 1 Einleitung 1.1 Aufgaben und Grobstruktur Was ist ein Betriebssystem? Betriebssystem (Definition nach DIN 44300) Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage

Mehr

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

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

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

Technische Grundlagen. Betriebssystem, Mac, GoLive

Technische Grundlagen. Betriebssystem, Mac, GoLive Technische Grundlagen Betriebssystem, Mac, GoLive Betriebssystem Nutzer Anwendungsprogramme Systemprogramme Hardware U1...Un Textverarbeitungssysteme Buchungssysteme Verwaltungsprogramme Spiele Kommandointerpreter

Mehr

Einführung in die Informationstechnik. II Einführung in Betriebssysteme

Einführung in die Informationstechnik. II Einführung in Betriebssysteme Einführung in die Informationstechnik II Einführung in Betriebssysteme 2 Übersicht Themen Betriebssysteme allgemein Microsoft Windows Unix am Beispiel Linux Bedienoberfläche von Linux Unix am Beispiel

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

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

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

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

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

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

Kapitel 11: Speicherverwaltung

Kapitel 11: Speicherverwaltung Kapitel 11: Speicherverwaltung Motivation Speicherverwaltungsmodul Entwurfsparameter Konkrete Speicherverwaltungsverfahren o Ringpuffer o Stapel o Randkennzeichnungsverfahren o Halbierungsverfahren o Linux

Mehr

Von Prozessen und Prozessoren (Prozess-Management)

Von Prozessen und Prozessoren (Prozess-Management) Von Prozessen und Prozessoren (Prozess-Management) V1.1 Technische Berufsschule Zürich IT Seite 1 Aus dem Geschichtsbuch: Grossrechner IBM 7094, 1965: Online- und Batchbetrieb IBM-Lochkarte Technische

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

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

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

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

20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem

20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem 20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem Autor Susanne Albers, Universität Freiburg Swen Schmelzer, Universität Freiburg In diesem Jahr möchte

Mehr

Musterlösung Prüfung SS 2002

Musterlösung Prüfung SS 2002 Musterlösung Prüfung SS 2002 Fach: I4neu (SEE, KOS, GRS, BTS) Teilprüfung: Betriebssystem Tag: 2.7.2002 8:15 12:15 Raum 1006 Bearbeitungszeit: 72 Minuten Name:... Matr.Nr.:... Punkte:... Note:... Hilfsmittel:

Mehr

Vorl. 6: Single- und Multitasking

Vorl. 6: Single- und Multitasking Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorl. 6: Single- und Multitasking Peter B. Ladkin Single Tasking Command Interpreter (ComInt) läuft wartet auf Tastatur-Eingabe

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

Ü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

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

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

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

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

BP 2 Prozessorvergabe - Multiprozessoren: Kern-Fäden. besten, wenn der Zusatzaufwand für Kontextumschaltungen gering ist.

BP 2 Prozessorvergabe - Multiprozessoren: Kern-Fäden. besten, wenn der Zusatzaufwand für Kontextumschaltungen gering ist. BP 2 Prozessorvergabe - Multiprozessoren: Kern-Fäden 5.2 Prozessorvergabe für Kern-Fäden Scheduler-Struktur Struktur der Warteschlangen Parallele Bearbeitung von Warteschlangen Strategien Statische oder

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

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

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

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

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 213/214 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 271/74-45, Büro: H-B 844 Stand: 2. Januar 214 Betriebssysteme / verteilte Systeme Betriebssysteme

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

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 3 Betriebssystem Überwacher

Mehr

Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition)

Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Ein Prozess kann unmittelbar vom Zustand 1. Running in den Zustand Ready 2. Running in den Zustand Blocked 3. Ready in den Zustand Running Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Der Adressraum

Mehr

Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen

Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen Christian Scheideler SS 2009 16.07.2009 Kapitel 2 1 Übersicht Notation Paging Selbstorganisierende Suchstrukturen Finanzielle

Mehr

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de)

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112

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

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

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

Redwood Cronacle und REALTECH theguard! Integration

Redwood Cronacle und REALTECH theguard! Integration Redwood Cronacle und REALTECH theguard! Integration Einleitung Redwood Software und REALTECH haben gemeinsam eine Lösung entwickelt, die die Systemverfügbarkeit von SAP und mysap Systemen signifikant erhöht.

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

6.Vorlesung Betriebssysteme Hochschule Mannheim

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

Mehr

Sicherheitsdienste. Schutz von Rechnern und Speichermedien vor

Sicherheitsdienste. Schutz von Rechnern und Speichermedien vor Sicherheitsdienste Schutz von Rechnern und Speichermedien vor bewusster Manipulation unbefugtem Zugriff Fehlfunktionen des Systems menschlichem Fehlverhalten # 86 Klassen von Bedrohungen der Sicherheit

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

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen

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

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Betriebssysteme eine Einführung Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Betriebssystem Was ist das? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS

Mehr

Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen.

Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen. Kapitel 4 Prozesse Seite 1 4 Prozesse 4.1 Prozeßkonzept Prozess- ein Programm in Ausführung Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen. Üblicher Start: über eine Kommandozeileneingabe

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

Kap. 2. Prozesse. Version vom 05.10.2009. Kap. 2 - Inhalt. Definition Prozeßzustände Threads Scheduling Beispiele. Folie 2

Kap. 2. Prozesse. Version vom 05.10.2009. Kap. 2 - Inhalt. Definition Prozeßzustände Threads Scheduling Beispiele. Folie 2 Kap. 2 Prozesse Version vom 05.10.2009 Kap. 2 - Inhalt Definition Prozeßzustände Threads Scheduling Beispiele Folie 2 Definition I - Woraus bestehen Prozesse? Prozeß ist ein Programm in seiner Ausführung,

Mehr

Betriebssysteme Wintersemester 2005/06

Betriebssysteme Wintersemester 2005/06 Betriebssysteme Wintersemester 2005/06 Vorlesung 4 CPU Scheduling Dr. Oliver Waldhorst Rechnernetze und verteilte Systeme Universität Leipzig http://www.informatik.uni-leipzig.de/rnvs Fahrplan Nr. 1 2

Mehr

stattdessen: geräteunabhängiges, abstraktes Format für Speicherung und Transfer von Daten Datei

stattdessen: geräteunabhängiges, abstraktes Format für Speicherung und Transfer von Daten Datei Dateiverwaltung Dateiverwaltung 2002 Prof. Dr. Rainer Manthey Informatik II 1 Dateien weitere zentrale Aufgabe des Betriebssystems: "Verbergen" der Details der Struktur von und der Zugriffe auf Sekundärspeicher-Medien

Mehr

Operating System Design - Now and Then. Christian Behnert Proseminar Technische Informatik FU Berlin

Operating System Design - Now and Then. Christian Behnert Proseminar Technische Informatik FU Berlin Operating System Design - Now and Then Christian Behnert Proseminar Technische Informatik FU Berlin 29.01.09 Motivation Wie kann man Betriebssysteme historisch klassifizieren? Welche technischen Entwicklungen

Mehr

Grundlagen der Informatik. Teil VI Betriebssysteme

Grundlagen der Informatik. Teil VI Betriebssysteme Grundlagen der Informatik Teil VI Betriebssysteme Seite 1 Definition nach DIN: Unter Betriebssystem versteht man alle Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage

Mehr

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

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