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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Vorlesung: Betriebssysteme

Vorlesung: Betriebssysteme Vorlesung: Betriebssysteme T. Fahringer Institut für f r Informatik Universität t Innsbruck Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick 2 Was ist ein Betriebssystem

Mehr

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Friedrich-Alexander-Universität Erlangen-Nürnberg Ausgewählte Kapitel eingebetteter Systeme Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Sven Kerschbaum 1. Einführung Bei einem eingebetteten

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

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

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

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

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

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

Kapitel I Betriebssysteme: Aufgaben und Überblick Betriebssysteme: VO Betriebssysteme 2

Kapitel I Betriebssysteme: Aufgaben und Überblick Betriebssysteme: VO Betriebssysteme 2 Vorlesung: Betriebssysteme T. Fahringer Institut für Informatik Universität Innsbruck VO Betriebssysteme Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick VO Betriebssysteme

Mehr

Kapitel III. Prozesse. Prozessverwaltung. Was ist ein Prozess?

Kapitel III. Prozesse. Prozessverwaltung. Was ist ein Prozess? Kapitel III Prozessverwaltung 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 verantwortlich

Mehr

Skript zur Vorlesung. Betriebssysteme. Principles of Modern Operating Systems. Wintersemester 2003/2004 Deutsche Telekom Fachhochschule Leipzig

Skript zur Vorlesung. Betriebssysteme. Principles of Modern Operating Systems. Wintersemester 2003/2004 Deutsche Telekom Fachhochschule Leipzig Skript zur Vorlesung Betriebssysteme Principles of Modern Operating Systems Wintersemester 2003/2004 Deutsche Telekom Fachhochschule Leipzig Prof. Dr. Michael Meßollen Raum A 0.28 Email: messollen@fh-telekom-leipzig.de

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

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

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

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

2 Echtzeitbetriebssysteme

2 Echtzeitbetriebssysteme 35 2 Echtzeitbetriebssysteme In den letzten Jahren hat sich die Automobilindustrie zu einem der wesentlichen Anwender von Echtzeitbetriebssystemen für eingebettete Systeme entwickelt. Relativ zeitig erkannten

Mehr

8. Vorlesung Betriebssysteme

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

Mehr

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 2008 Kapitel 2: Betriebssysteme Vorlesung:

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

^ 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

Rechnerarchitektur. 11. Betriebssysteme und Prozesse. Inhalt. Ziele von Betriebssystemen. Betriebssystemkomponenten. Betriebssystemkomponenten

Rechnerarchitektur. 11. Betriebssysteme und Prozesse. Inhalt. Ziele von Betriebssystemen. Betriebssystemkomponenten. Betriebssystemkomponenten Inhalt Rechnerarchitektur 11. e und Soft- und eines Rechners Ziele von en komponenten dienste und -funktionen Mehrprogrammbetrieb Dateisysteme Ein-/Ausgabe architekturen Monolithische Systeme Geschichtete

Mehr

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken.

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken. Betriebssysteme: Auswahl alter Klausuraufgaben Seite 1 Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken. a) sort < MeineDatei.txt > MeineDateiSort.txt b) find / -type d \( -name man

Mehr

Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance

Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance 5. November 2013 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität Basel Repetition

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Ausarbeitung zum Thema Approximationsalgorithmen im Rahmen des Fachseminars 24. Juli 2009 Robert Bahmann robert.bahmann@gmail.com FH Wiesbaden Erstellt von: Robert Bahmann Zuletzt berarbeitet von: Robert

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

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

Der SUN-Pool. 64 Arbeitsplätze, reine Terminals

Der SUN-Pool. 64 Arbeitsplätze, reine Terminals Der SUN-Pool 64 Arbeitsplätze, reine Terminals 4 SUN-Server (SUN-Fire oder Enterprise) {alexander,delenn,ivanova,winter}.babylon.cs.uni-potsdam.de, vollkommen symmetrisch installiert; verwalten dasselbe

Mehr

IT-Sicherheit. Informationssicherheit: IT-Sicherheit bzw. IT-Risikomanagement

IT-Sicherheit. Informationssicherheit: IT-Sicherheit bzw. IT-Risikomanagement IT-Sicherheit Informationssicherheit: Schutz aller Informationen im Unternehmen elektronisch gespeicherte Daten Informationen in nichtelektronischer Form z.b. auf Papier Expertenwissen, in den Köpfen der

Mehr

Quantitative Methoden. Betriebssysteme

Quantitative Methoden. Betriebssysteme Quantitative Methoden Betriebssysteme Problem und Gegenstand Problem Erfüllen von QoS-Anforderungen mit zeit- bzw. größenbeschränkten Ressourcen Gegenstand Scheduling basierend auf deterministischen Modellen

Mehr

Inhalte der heutigen Vorlesung

Inhalte der heutigen Vorlesung Inhalte der heutigen Vorlesung Wiederholung und Fortsetzung Hardware Von-Neumann-Architektur (Rechnerarchitektur) Speicher Software Wie groß ist ein Gigabyte? http://www.spiegel.de/netzwelt/tech/0,1518,606308,00.html

Mehr

Betriebssysteme Teil C: Betriebsarten

Betriebssysteme Teil C: Betriebsarten Betriebssysteme Teil C: Betriebsarten 1 Zielgruppe Ein Betriebssystem (bzw. das von ihm verwaltete Computersystem) kann konzipiert sein dezidiert für nur einen einzigen Benutzer (vgl.: Workstation, Arbeitsplatzrechner)»

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

5) Realzeitscheduling

5) Realzeitscheduling Inhalte Anforderungen Klassifizierungen Verschiedene Verfahren: FIFO, Round Robin, Least Laxity, EDF, fixed/dyn. Prio. Beispiele und Aufgaben Seite 1 Motivation Gegeben: Ein Einprozessorsystem, das Multiprogrammierung

Mehr

5 Speicherverwaltung. bs-5.1 1

5 Speicherverwaltung. bs-5.1 1 5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus

Mehr

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil 18.04.2002

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil 18.04.2002 Die L4-Mikrokern Mikrokern-Familie Hauptseminar Ansätze für Betriebssysteme der Zukunft 18.04.2002 Folie 1 Aufbau des Vortrags 1. Mikrokerne: Idee und Geschichte 2. L4: ein schneller Mikrokern 3. L4Linux:

Mehr

Fragenkatalog zum Kurs 1802 "Betriebssysteme" zusammengestellt von Jan Bartelsen nach Fragen von Dr. Lihong Ma

Fragenkatalog zum Kurs 1802 Betriebssysteme zusammengestellt von Jan Bartelsen nach Fragen von Dr. Lihong Ma Fragenkatalog zum Kurs 1802 "Betriebssysteme" zusammengestellt von Jan Bartelsen nach Fragen von Dr. Lihong Ma Hinweis: Ich habe mich bemüht, fehlerfreie Antworten zu finden, kann dies jedoch nicht garantieren.

Mehr

SmartExporter 2013 R1

SmartExporter 2013 R1 Die aktuelle Version wartet mit zahlreichen neuen Features und umfangreichen Erweiterungen auf. So können mit SmartExporter 2013 R1 nun auch archivierte Daten extrahiert und das Herunterladen der Daten

Mehr

Prozesse. Prozesse. Nebenläufigkeit. Prozess-Scheduling. Echtzeit-Scheduling. Multiproz.-Scheduling. Inhalt Prozesse

Prozesse. Prozesse. Nebenläufigkeit. Prozess-Scheduling. Echtzeit-Scheduling. Multiproz.-Scheduling. Inhalt Prozesse Modul: B-BS Betriebssysteme WS 2012/13 Prozesse Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik (12) Inhalt Prozesse Was ist ein Prozess?

Mehr

Themenfelder. programmierung programme aufrufe funktionen. UNIX-ähnlicher

Themenfelder. programmierung programme aufrufe funktionen. UNIX-ähnlicher Themenfelder SoS i System programmierung programme aufrufe funktionen in C UNIX-ähnlicher Betriebssysteme SoS ii Datenbanksysteme SoS iii Softwaretechnik 2 Einleitung SoS i, c 2004 wosch [Einleitung.tex,v

Mehr

Approximation in Batch and Multiprocessor Scheduling

Approximation in Batch and Multiprocessor Scheduling Approximation in Batch and Multiprocessor Scheduling Tim Nonner IBM Research Albert-Ludwigs-Universität Freiburg 3. Dezember 2010 Scheduling Zeit als Ressource und Beschränkung Formaler Gegeben sind Jobs

Mehr

5 CPU Scheduling. FH Regensburg BT/SS04 Betriebssysteme Wirtschaftsinformatik. 5.1 Grundlagen - 54 - 5.1.1 CPU Burst / I/O Burst

5 CPU Scheduling. FH Regensburg BT/SS04 Betriebssysteme Wirtschaftsinformatik. 5.1 Grundlagen - 54 - 5.1.1 CPU Burst / I/O Burst FH Regensburg BT/SS04 5 CPU Scheduling 5.1 Grundlagen 5.1.1 CPU Burst / I/O Burst Beobachtung: Programme rechnen typischerweise etwas, dann tätigen sie Ein/Ausgabe: CPU-Burst: das Programm rechnet eine

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

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

Mehr

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

Betriebssysteme. Vorlesungsskript WS 2001/2002. Version vom 15. Oktober 2001. Fachbereich Mathematik/Informatik Universität Osnabrück

Betriebssysteme. Vorlesungsskript WS 2001/2002. Version vom 15. Oktober 2001. Fachbereich Mathematik/Informatik Universität Osnabrück Betriebssysteme Vorlesungsskript WS 2001/2002 Jürgen Schönwälder Version vom 15. Oktober 2001 Fachbereich Mathematik/Informatik Universität Osnabrück Vorwort Betriebssysteme sind notwendig, um auf einer

Mehr

TIMI: Technische Informatik für Medieninformatiker

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

Mehr

Kapitel 9 Hauptspeicherverwaltung

Kapitel 9 Hauptspeicherverwaltung Kapitel 9 Hauptspeicherverwaltung Einführung: Speicher als Betriebsmittel Speicherkapazität wächst ständig ein PC heute hat 1000 mal soviel Speicher wie 1965 der größte Computer der Welt Anwendungsprogramme

Mehr

Datenträgerverwaltung

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

Mehr

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin Scheduling in Echtzeitbetriebssystemen Prof. Dr. Margarita Esponda Freie Universität Berlin Echtzeitsysteme Korrekte Ergebnisse zum richtigen Zeitpunkt Hart Echtzeitsysteme Eine verspätete Antwort ist

Mehr

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

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper 1. Der Prozess beginnt im Zustand Erzeugt, nachdem sein Vaterprozess den Systemaufruf fork() (s.u.) abgesetzt hat. In diesem Zustand wird der Prozess-Kontext initialisiert. 2. Ist diese Aufbauphase abgeschlossen,

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

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

Mehr

183.579, SS2012 Übungsgruppen: Do., 14.6. Mi., 20.6.2012

183.579, SS2012 Übungsgruppen: Do., 14.6. Mi., 20.6.2012 VU Technische Grundlagen der Informatik Übung 8: Systemsoftware und Netzwerke 183.579, SS2012 Übungsgruppen: o., 14.6. Mi., 20.6.2012 ufgabe 1: Virtual Memory Zeichnen Sie ein System das Paging zur Speicherverwaltung

Mehr

Systemprogrammierung

Systemprogrammierung Systemprogrammierung Skript zur Vorlesung an der RWTH-Aachen Lehrstuhl für Informatik IV Prof. Dr. O. Spaniol Mesut Güneş Ralf Wienzek Klaus Macherey 2 Vorwort Neben der Hardware bildet die Software die

Mehr

(Prüfungs-)Aufgaben zum Thema Scheduling

(Prüfungs-)Aufgaben zum Thema Scheduling (Prüfungs-)Aufgaben zum Thema Scheduling 1) Geben Sie die beiden wichtigsten Kriterien bei der Wahl der Größe des Quantums beim Round-Robin-Scheduling an. 2) In welchen Situationen und von welchen (Betriebssystem-)Routinen

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Software Im Original veränderbare Word-Dateien Prinzipien der Datenverarbeitung Als Software bezeichnet man alle Programme, die in einer Computeranlage verwendet werden. Dabei unterscheiden wir zwischen

Mehr

Angewandte Informatik

Angewandte Informatik Angewandte Informatik Teil 2.1 Was ist Hardware? Die Zentraleinheit! 1 von 24 Inhaltsverzeichnis 3... Was ist Hardware? 4... Teile des Computers 5... Zentraleinheit 6... Die Zentraleinheit 7... Netzteil

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler

Mehr

Buddy - Algorithmus Handbuch für Endnutzer Stand 02.08.2005

Buddy - Algorithmus Handbuch für Endnutzer Stand 02.08.2005 Buddy - Algorithmus Handbuch für Endnutzer Stand 02.08.2005 1. Vorwort 1 2. Systemvoraussetzungen 2 3. Programmarten 2 4. Sicherheit der Endnutzer 2 5. Handhabung 3 5.1 allgemeine Programmübersicht 3 5.2

Mehr

Teil VIII Von Neumann Rechner 1

Teil VIII Von Neumann Rechner 1 Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only

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

Betriebssystem-basierte Virtualisierung

Betriebssystem-basierte Virtualisierung Betriebssystem-basierte Virtualisierung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2011/2012 Betriebssystem-basierte Virtualisierung

Mehr

1.7 Assembler Programmierung

1.7 Assembler Programmierung 1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet

Mehr

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Was ist ein Rechner? Maschine, die Probleme für

Mehr