Technische Informatik II (TI II) (8) Speicherverwaltung. Sebastian Zug Arbeitsgruppe: Embedded Smart Systems

Größe: px
Ab Seite anzeigen:

Download "Technische Informatik II (TI II) (8) Speicherverwaltung. Sebastian Zug Arbeitsgruppe: Embedded Smart Systems"

Transkript

1 1 Technische Informatik II (TI II) (8) Speicherverwaltung Sebastian Zug Arbeitsgruppe: Embedded Smart Systems

2 2 Fragen an die Veranstaltung Nach welchen Merkmalen lässt sich der Speicher in einem Rechner unterscheiden? Welche Entwicklungskonflikte ergeben sich daraus? Erläutern Sie die Begriffe externe und interne Fragmentierung. Woraus resultieren die Vorteile des Buddy Verfahrens? Vergleichen Sie die Anwendung einer Bitmap und einer Listenstruktur zur Verwaltung des Partitionszugriffes. Erklären Sie die Idee des virtuellen Speichers. Wie erfolgt die Abbildung der logischen Speicheradresse auf die physikalische bei der Anwendung von segmentorientiertem/seitenorientiertem Zugriff? Erläutern Sie die Konzepte Inverse Seitentabelle und mehrstufige Seitentabelle? Warum finden diese überhaupt Anwendung?

3 3 Literatur Bücher Operating System Concepts, Abraham Silberschatz Webseiten

4 4 Speicherverwaltung Wozu braucht man eine Speicherverwaltung? Welche Eigenschaften sollte ein Speicher haben? unendlich groß, unendlich schnell, unendlich billig, nichtflüchtig (?), kein Effekt durch konkurrierende Zugriffe (?), Schutz vor fehlerhaften Zugriffen (?). Die Speicherverwaltung hat das Approximieren dieser Eigenschaften zum Ziel!

5 5 Speicherverwaltung sehr teuer sehr billig sehr schnell schnell langsam sehr langsam registers scratchpad caches RAM ROM Disk DVD-ROM CD-ROM Tape on-chip on-board Hintergrund einzelner CPU Zyklus einzelner in-/ externer Buszyklus ms-minutes 0, sec 0, sec 0,001 sec

6 6 Ist das nur bei großen Rechnern ein Problem?

7 7 Speicherwaltungsebenen Register Scratchpad wird explizit vom Programmierer/Compiler kontrolliert Cache RAM ROM Disk DVD-ROM CD-ROM Tape Hardware-Kontrolle RAM Abstraktion flüchtig Dateiabstraktion persistent unter Kontrolle des Betriebssystems

8 8 Monoprogramming mit Speicherpartitionen Das alleinig laufende Programm hat Zugriff auf den gesamten Speicher. user program BS in ROM user program Geräte Treiber im ROM user program 0xFFF... BS im RAM BS im RAM 0x00...

9 9 Multiprogramm-Speicherpartitionierung Partition 7 Partition 6 Partition 5 Partition 4 Partition 3 Partition 2 Partition 1 BS Partition 4 Partition 3 Partition 2 Partition 1 BS Probleme bei gleichgroßen Partitionen: Ineffiziente Nutzung des Speichers -> INTERNE FRAGMENTIERUNG Overlay-Lösungen für Programme, die nicht in eine Partition passen Eigenschaften: Größe der Speicherblocks konstante Größe variable Größe Zeitpunkt der Allokation off-line (statisch) zur Laufzeit (dynamisch)

10 10 Verwaltung fester Partitionen mehrere Warteschlangen eine Warteschlange Partition 4 Partition 4 Partition 3 Partition 3 Jedes Element einer WS hat spez. Speicherbedarf, der in etwa (d.h. Bedarf Partition) mit der zugehörigen Partition übereinstimmt. Partition 2 Partition 2 Partition 1 BS Partition 1 BS

11 11 Multiprogramming mit dynamischen Speicherpartitionen Feste Partitionen Variable Partitionen Laufzeit allokiert Problem: interne Fragmentierung Anfangs- Situation nach einiger Zeit Problem: externe Fragmentierung benötigt aufwändigere Verwaltung Eigenschaften: Größe der Speicherblocks konstante Größe variable Größe Zeitpunkt der Allokation off-line (statisch) zur Laufzeit (dynamisch)

12 12 Variable Speicherpartitionierung - Buddy-System initial 1M block 1 M request 100 k 128 k 128 k 256 k 512 k request 240 k request 60 k 128 k 128 k 256 k 128 k 64 k 64 k 256 k 512 k 512 k request 250k 128 k 64 k 64 k 256 k 256 k 256 k release 128 k 64 k 64 k 256 k 256 k 256 k release 128 k 64 k 64 k 256 k 256 k 256 k request 75 k 128 k 64 k 64 k 256 k 256 k 256 k release 128 k 128 k 256 k 256 k 256 k release 512 k 256 k 256 k release 1 M

13 13 Herausforderung: Relokation Ein-/Auslagern: Jedes Prozessabbild wird vollständig vom Speicher auf die Platte geschoben und umgekehrt, mit seinen Code-, Daten- und Stackbereichen. Programm 1? Freispeicherverwaltung Ersetzungsstrategie Realokation des Programmes Schutzmechanismen

14 14 Dynamische Partitionen mit Ein-/Auslagern (Swapping) Problem: Wo sind freie Blöcke und welche Größe haben sie? Bitmapdarstellung: = allozierter Block 0 = Loch Darstellung durch verkettete Liste: P 0 3 H 4 2 P 5 5 H 10 2 nächstes Element

15 15 Berücksichtigung terminierender Prozesse bei der Verwaltung von Listen Auswechseln einseitig verschmelzen beidseitig verschmelzen

16 16 Verwaltung des Speichers first / next fit Start der Suche am Anfang/ fortlaufende in der Liste 0 best fit Kleinste mögliche Lücke nach vollständiger Suche 0 worst fit Größte mögliche Lücke 0? quick fit Zuteilungsalgorithmus mit getrennten Listen für unterschiedliche Löcherkategorien

17 17 Relokation eines Programmes im Speicher 1. Initialisierung eines Programmes im Speicher 2. Ausführung 3. Auslagerung Swapping 4. Erneutes Laden 5. Eintrittspunkt für das Programm Process Kontrollblock Programm Code branch und jump Operationen Daten Daten Referenzen ursprünglicher TOS (top of stack) Stack

18 18 Programmadaption beim Ein-/Auslagern (Swapping) Differenzierung von Adressen: Logische Adresse: Verwendung innerhalb des Programmes, unabhängig von der aktuellen Position im Speicher Relative Adresse: Besondere Form der logischen Adresse, repräsentiert die Distanz zwischen zwei Adressen im Speicher Physikalische Adresse: Absolute Adresse im Hauptspeicher Basis Register Bounds Register Adder Comperator Relative Adresse Absolute Adresse Process Kontrollblock Programm Code Daten Logische Adresse Stack

19 19 ManipulateProgrammCounter.c #include <stdio.h> #include <string.h> void dosomething(int a, int b, int c){ char buffer1[5]; buffer1[0]=0xee; int *ret; ret = buffer1 + 0x15; printf("address of x = %p\n", ret); printf("content of x = %p\n", (*ret)); (*ret) += 0x08; //(*ret) += 0x0123; außerhalb Prozess } Beispiel: Manipulation von Speicherinhalten zug@thinkpad:~$./manipulatepc Address of x = 0xffffcbec Content of x = 0x Value of x is 0 int main(int argc, char *argv[]) { int x; x=0; dosomething(1,2,3); x=1; printf("value of x is %d\n", x); } zug@thinkpad:~$ gcc -o ManipulatePC ManipulatePC.c m32

20 20 Analyse mit GDB (gdb) break dosomething (gdb) run (gdb) info frame Stack level 0, frame at 0xffffcbf0: eip = 0x in dosomething (ManipulateJump.c:4); saved eip = 0x called by frame at 0xffffcc20 source language c. Arglist at 0xffffcbe8, args: a=1, b=2, c=3 Locals at 0xffffcbe8, Previous frame's sp is 0xffffcbf0 Saved registers: ebp at 0xffffcbe8, eip at 0xffffcbec (gdb) x buffer1 0xffffcbd7: 0x printf("address of x = %p\n", ret); (gdb) s Address of x = 0xffffcbec 10 printf("content of x = %p\n", (*ret)); (gdb) s Content of x = 0x

21 21 Zugriffsschutz Problem - Beliebige Referenzen auf Bereiche außerhalb der Partition. Mechanismen: 1. Protektion-Codes (IBM 360) Speicherblöcke fester Länge, die mit einem 4-bit Protection-Code gekennzeichnet sind (tagged memory). Der p-code wird bei jedem Zugriff mit dem entsprechenden Feld des Programm-Status-Worts (PSW) verglichen 2. Base und Bound Register (CDC 6600) Begrenzung des Speichers für einen Prozess durch die Definition einer Basisadresse und einer Größe, in Hardware erfolgt die Prüfung des Zugriffs

22 22 Was haben wir bisher erreicht? Bisher wurde betrachtet: 1. Verwaltung des realen, physischen Speichers. 2. Der Adressraum ist dem Realspeicher angepasst. 3. Ein- und Auslagern von Speicherblocks wird explizit durch das BS vorgenommen. 4. Die Größe der Einheiten wird durch den Programmierer festgelegt. Wünschenswert: Transparenter Mechanismus für das Ein-Auslagern von Speicherblocks. Logischer Adressraum ist sehr viel größer als der Adressraum des Realspeichers. Transparenter Mechanismus zur Relokation. Besserer Zugriffsschutz durch Trennung logischer Adressräume. Idee: Betrachten des Realspeichers als ein Fenster in einen viel größeren Speicher. Trennung von logischem und physikalischem Adressraum.

23 23 Diskussion Fritz-Rudolf Güntsch, Dissertation 1957 Der Programmierer braucht auf das Vorhandensein von Schnellspeichern keine Rücksicht zu nehmen (er braucht nicht einmal zu wissen, dass solche vorhanden sind). Denn es gibt nur eine Sorte von Adressen, mit denen programmiert werden kann, als wäre nur ein Speicher vorhanden. Source:

24 24 Segmentierter virtueller Speicher Segmente Virtueller Adressraum Segment Index logische Adressse Versatz (Offset) Realer Adressraum > Offset Länge base address Basisadresse + reale Adresse 0 Basis- Adresse Segmenttabelle

25 25 Segmentierter Speicher - Beispiel logische Addresse (20 Bit) Segment tabellen index Offset realer Speicher 64 K + Länge Basis im Realspeicher base 1111 address < + physical address (16 Bit) Segmenttabelle Segmenttabellenbasisregister Ausnahme (exception) Virtueller Addressraum: 2 20 = 1 M Max. Anzahl der Segmente: 16 Größe eines Segments: 64 k

26 26 Pentium Registersatz AH BH CH DH AX BX CX DX AL BL CL DL EAX EBX ECX EDX ESI EDI EBP ESP CS: enthält Basis des Code Segments SS: enthält Basis des Stack-Segments DS: enthält Basis des Daten-Segments ES: enthält Basis des Extra-Segments FS: zusätzliches Extra-Segment (ab 386) GS: zusätzliches Extra-Segment (ab 386) CS SS DS ES FS GS EIP EEFLAGS

27 27 Segment-Deskriptoren des Pentium Prozessors Die xs-register enthalten Referenzen auf die 1. Globale Descriptor Table (OS und LDT) oder die 2. Lokale Descriptor Table (lokale Segmente). Ablauf des Zugriffs auf ein Speichersegment: 1) Analyse des Selektors im xs Register Descriptor Table Index (13 Bit) Identifier (1Bit) (GDT =0, LDT = 1) Privilegienstufe (2 Bit) (Ring 0-3) 2) Suche des entsprechenden Eintrages in der GDT oder LDT 3) Berechnung der Korrespondierenden virtuellen Adresse 4) Anfrage an die MMU

28 28 Probleme beim segmentierten virtuellen Speicher Segmente virtueller Adressraum?? realer Adressraum für jedes Segment wird ein zusammenhängender Speicherbereich gebraucht, der möglicherweise recht groß ist Verschnittprobleme, da die Segmente unterschiedlich groß sind Vollständiges Segment muss bei einem Zugriff im Hauptspeicher stehen, obwohl vielleicht nur ein kleiner Teil davon benötigt wird Offset

29 29 Alternative: Seitenorientierter virtueller Speicher virtueller Adressraum Idee: Seiten fester Größe werden auf Kacheln (Seitenrahmen: frames) fester Größe im Hauptspeicher abgebildet. 60k - 64k 56k - 60k 52k - 56k 48k - 52k 44k - 48k 40k - 44k 36k - 40k 32k - 36k 28k - 32k 24k - 28k 20k - 24k 16k - 20k 12k - 16k 8k - 12k 4k - 8k 0k - 4k (virtuelle) Seiten Realspeicher- Adresse 28k - 32k 24k - 28k 20k - 24k 16k - 20k 12k - 16k 8k - 12k 4k - 8k 0k - 4k (reale) Seitenrahmen bzw. Kacheln

30 30 Adressumsetzung mit Seiten logische (virtuelle) Adresse (20 Bit) Seiten tabellen Index Versatz (offset) Real Speicher 64 K = 16 x 4K Kacheln Kachel# (realer Seitenrahmen) reale Adresse (16 Bit) offset Seitentabelle (256 Einträge) Seitentabellenbasisregister virtueller Adressraum: 2 20 = 1 M max. Anzahl der Seiten: 256 max. Größe der Seiten: 4 k

31 31 Kritischer Parameter Seitengröße Zielkonflikte: Seitengröße: large small interne Fragmentierung Management Overhead Ladezeit von der Platte Übliche Seitengrößen liegen zwischen 512 Bytes und 64KB. Heute werden Seitengrößen von 4KB oder 8KB benutzt.

32 32 Größe der Seitentabelle 32-Bit Adressraum: 4G Adressen 64-Bit Adressraum: 4G 4G Adressen 4k: 1M Einträge 4k: 1M 4G Einträge 1. Seitengröße erhöhen: z.b. UltraSPARC II unterstützt 8k, 64k, 512k and 4M Seiten Grund: weniger Seiten Problem: interne Fragmentierung 2. Seitentabellen ein-und auslagern: mehrstufige Seitentabelle Grund: a.)virtueller Teil Speicher ist billig, b.) es wird aktuell immer nur ein kleiner Teil der Seiten benötigt ( working set) Problem: eine zusätzliche Indirektionsstufe 3. Flexible Zuordnung von Tabelleneinträgen: Invertierte Seitentabellen Verfahren: Tabelleneinträge werden Seitenrahmen fest zugeordnet Grund: Der reale Adressraum ist klein im Vergleich zum virtuellen. Problem: viel mehr Seiten als Seitenrahmen keine eindeutige Abbildung

33 33 Mehrstufige hierarchische Seitentabellen 10 bit 10 Bit 12 Bit Wurzel sekundär Kachel offset ST-Basis-Reg Eintr Eintr. Seite Abbildung eines 32Bit Seitentabelleneintrages auf 4kB große Tabellen Protektionsmechanismen auf dem Wurzelknoten Ergebnis: Strukturierung der Seitentabellen zur Reduzierung des Speicheraufwandes Beispiel: Prozess im Speicher Programmsegment/Daten/Lücke/Stack Sollten weitere Stufen eingeführt werden?

34 34 Invertierte Seitentabelle virtuelle Seitennummer offset = hit Hash virtuelle Seitennummer Kachel nummer Hashkette reale Seicheradresse

35 35 Invertiert oder nicht invertiert? Pro invertiert: Seitentabelle ist proportional zur Größe des Realspeichers: z.b. für 1 8k Seiten: 128k Einträge unabhängig von Größe d. virtuellen Adressraumes Con invertiert: Hashing muss bei jedem Speicherzugriff durchgeführt werden. Verkettung kann zu mehrfachen Zugriff führen. benötigt komplexe Ersetzungs-und Verwaltungsstrategien. ABER: Hierarchische Seitentabellen benötigen ebenfalls mehrfachen Zugriff. wenn sekundäre Seitentabellen ausgelagert sind: mehrfacher Plattenzugriff. Hardwareunterstützung wird in allen Fällen benötigt!

36 36 Diskussion: Segmente gegen Seiten Transparenz Anzahl d. virt. Adr. variable Frag- Verw. Hauptgrund für Progr. Adress- raum > realer Objektgr. ment. overhead für Einführung räume Speicher Seitenor. ein intern unendlich viel Speicher Segmentor. viele extern mehrere Adr. räume

37 37 Kombination von Segmenten und Seiten virtuelle Adresse Segm.# Seite# offset Segmentor. Teil Seitenor. Teil Segmenttabelle Seitentab. Kachel offset + Seite + Segm.# Seiten# Segm.-Tab.-Reg

38 38 Zusammenfassung Ziele: unendlich {groß, schnell, billig}, -->Zielkonflikte Verwaltung des physischen Speichers: Interne und externe Fragmentierung Lokale und globale Listenverwaltung Buddy System Virtueller Speicher: Segmentierung: Seitenorientierung: + private Adressräume, Schutz - Segment muss in physischen Speicher passen + riesiger linearer Adressraum - Schutz, Problem der Seitentabellen

39 39 Bis zur nächsten Woche

7. Speicherverwaltung

7. Speicherverwaltung 7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 11 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Freispeicherverwaltung Martin Wahl,

Freispeicherverwaltung Martin Wahl, Freispeicherverwaltung Martin Wahl, 17.11.03 Allgemeines zur Speicherverwaltung Der physikalische Speicher wird in zwei Teile unterteilt: -Teil für den Kernel -Dynamischer Speicher Die Verwaltung des dynamischen

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

Speicherverwaltung (Swapping und Paging)

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

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 11.01.2017 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 13.01.2015 1 Klausur Termin: 10. März 2016, 13:00 Uhr Raum: Audimax, KG 2 4 ECTS Punkte 3 Klausuranmeldung Anmeldefrist: 31.01.2016 (Ausnahme:

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

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

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

Mehr

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

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

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

6.Vorlesung Grundlagen der Informatik

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

Mehr

Echtzeitbetriebssysteme

Echtzeitbetriebssysteme Speicherverwaltung (Memory Management) Aufgaben der Memory-Management-Unit ist l der Speicherschutz und l die Adressumsetzung Wird durch Hardware unterstützt l Memory Management Unit (MMU) l MMU wird vom

Mehr

Assembler - Adressierungsarten

Assembler - Adressierungsarten Assembler - Adressierungsarten Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Adressierungsarten 1/31 2008-04-01

Mehr

Fachbericht Thema: Virtuelle Speicherverwaltung

Fachbericht Thema: Virtuelle Speicherverwaltung Fachbericht 15.10.99 1 HINTERGRÜNDE/ MOTIVATION 2 2 FUNKTIONEN DER SPEICHERVERWALTUNG 2 3 ARTEN DER SPEICHERVERWALTUNG 2 3.1 STATISCHE SPEICHERVERWALTUNG 2 3.2 DYNAMISCHE SPEICHERVERWALTUNG 3 3.2.1 REALER

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

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

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

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

Mehr

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl Ü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

Einführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009

Einführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009 Einführung Übungen zur Vorlesung Virtuelle Maschinen Stefan Potyra Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SoSe 2009 Übungsaufgaben 1 Entwickeln

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

Computer-Systeme Teil 15: Virtueller Speicher

Computer-Systeme Teil 15: Virtueller Speicher Computer-Systeme Teil 15: Virtueller Speicher Computer-Systeme WS 12/13 - Teil 15/Virtueller Speicher 14.01.2013 1 Übersicht Segmente Systemaufrufe Swapping Paging Computer-Systeme WS 12/13 - Teil 15/Virtueller

Mehr

Betriebssysteme (BS) Inhalt. Speicherverwaltung. Olaf Spinczyk 1.

Betriebssysteme (BS) Inhalt. Speicherverwaltung. Olaf Spinczyk 1. Betriebssysteme (BS) Speicherverwaltung http://ess.cs.tu-dortmund.de/de/teaching/ss2016/bs/ Olaf Spinczyk 1 olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os 1 In Zusammenarbeit mit Franz Hauck,

Mehr

Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum.

Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum. 15.1.1 Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum. - 15. Hauptspeicher-Adressierung 15.1 Adressierungsmodi Virtual

Mehr

6 Speicherverwaltung

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

Mehr

5.6 Segmentierter virtueller Speicher

5.6 Segmentierter virtueller Speicher 5.6 Segmentierter virtueller Speicher Zur Erinnerung: Virtueller Speicher ermöglicht effiziente und komfortable Nutzung des realen Speichers; Sharing ist problematisch. Segmentierung erleichtert Sharing,

Mehr

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 1 / 53 Inhaltsverzeichnis 1 Einführung 2 Assembler Syntax, Register und Flags 3 Hauptspeicher 4 Stack 5 Assemblerbefehle

Mehr

Assembler - Variablen

Assembler - Variablen Assembler - Variablen Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Variablen 1/30 2008-04-21 Variablen Variablen

Mehr

Technische Informatik 2 Speichersysteme, Teil 3

Technische Informatik 2 Speichersysteme, Teil 3 Technische Informatik 2 Speichersysteme, Teil 3 Prof. Dr. Miroslaw Malek Sommersemester 2004 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher (Fortsetzung) Translation Lookaside Buffer

Mehr

1. Speicher. Typische Nutzung eines Adreßraums. Systemsoftware. Textbereich relativ klein. Sehr großer Abstand zwischen Heap und Stack

1. Speicher. Typische Nutzung eines Adreßraums. Systemsoftware. Textbereich relativ klein. Sehr großer Abstand zwischen Heap und Stack 1. Speicher 1 Typische Nutzung eines Adreßraums Textbereich relativ klein Sehr großer Abstand zwischen Heap und Stack Keine Verunreinigungen durch: E/A-Bereiche nicht bestückte Adreßbereiche fremde Kontrollflüsse

Mehr

Grundlagen Rechnerarchitektur und Betriebssysteme

Grundlagen Rechnerarchitektur und Betriebssysteme Grundlagen Rechnerarchitektur und Betriebssysteme Johannes Formann Definition Computer: Eine Funktionseinheit zur Verarbeitung von Daten, wobei als Verarbeitung die Durchführung mathematischer, umformender,

Mehr

5 Kernaufgaben eines Betriebssystems (BS)

5 Kernaufgaben eines Betriebssystems (BS) 5 Kernaufgaben eines Betriebssystems (BS) Betriebssystem ist eine Menge von Programmen, die die Abarbeitung anderer Programme auf einem Rechner steuern und überwachen, insbesondere verwaltet es die Hardware-Ressourcen

Mehr

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL3 Folie 1 Grundlagen Software steuert Computersysteme

Mehr

Betriebssysteme (BS) IA-32. Überblick. das Programmiermodell der Intel Architektur. Historie der Intel x86 Prozessoren. 8086: Programmiermodell

Betriebssysteme (BS) IA-32. Überblick. das Programmiermodell der Intel Architektur. Historie der Intel x86 Prozessoren. 8086: Programmiermodell Betriebssysteme (BS) alias Betriebssystembau (BSB) IA-32 das Programmiermodell der Intel Architektur Überblick Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz "Tasks" Zusammenfassung

Mehr

Übung 4 - Betriebssysteme I

Übung 4 - Betriebssysteme I Prof. Dr. Th. Letschert FB MNI 9. Juni 2002 Übung 4 - Betriebssysteme I Aufgabe 1 1. Erläutern Sie die Begriffe der transparent und der virtuell mit ihrer in der Informatik üblichen Bedeutung. 2. Wie werden

Mehr

2. Aufgabenblatt Musterlösung

2. Aufgabenblatt Musterlösung 2. Aufgabenblatt Musterlösung Technische Informatik II Sommersemester 2011 Problem 2: Assembler Syntax Register eines 32-bit Intel-Prozessors: 16 bits 8 bits 8 bits general purpose registers EAX Accumulator

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

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

Grundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes

Grundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes Grundlagen der Informatik III Wintersemester 2010/2011 25. Vorlesung Dr.-Ing. Wolfgang Heenes int main() { printf("hello, world!"); return 0; } msg: main:.data.asciiz "Hello, world!".text.globl main la

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

Variablen. Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes

Variablen. Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes Variablen Deklaration: «Datentyp» «Variablenname» Datentyp bestimmt Größe in Bytes: sizeof Beispiel: long int v; Größe: 4 Bytes v ist Stück im Speicher, der 4 Bytes lang ist Speicherzugriff? Über Adressen!

Mehr

Klausur zur Mikroprozessortechnik

Klausur zur Mikroprozessortechnik Prof. Dr. K. Wüst WS 2001 FH Gießen Friedberg, FB MNI Studiengang Informatik Klausur zur Mikroprozessortechnik Nachname: Vorname: Matrikelnummer: 7.3.2001 Punkteverteilung Aufgabe Punkte erreicht 1 3 2

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

Bootvorgang des DSM-Systems Systems Plurix

Bootvorgang des DSM-Systems Systems Plurix Bootvorgang des DSM-Systems Systems Plurix Stefan Frenz Vortrag im Rahmen der Abteilungsbesprechung Voraussetzungen: CPU CPU-Modi Voraussetzungen: BIOS Rechner-Initialisierung durch das BIOS Interrupt

Mehr

Lösungsvorschlag zur 6. Übung

Lösungsvorschlag zur 6. Übung rof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 9/1 Lösungsvorschlag zur 6. Übung 1 räsenzübungen 1.1 Schnelltest a) Caches und virtueller Speicher können

Mehr

Speicher. Betriebssysteme (zu Teilen nach Tanenbaum) Hermann Härtig TU Dresden. Tanenbaum MOS

Speicher. Betriebssysteme (zu Teilen nach Tanenbaum) Hermann Härtig TU Dresden. Tanenbaum MOS Speicher Betriebssysteme (zu Teilen nach Tanenbaum) Tanenbaum MOS Hermann Härtig TU Dresden Wegweiser Einführung Elementare Techniken Virtueller Speicher (Paging) Anliegen - Begriffe - Vorgehen Adressumsetzung

Mehr

Übung zu Einführung in die Informatik # 10

Übung zu Einführung in die Informatik # 10 Übung zu Einführung in die Informatik # 10 Tobias Schill tschill@techfak.uni-bielefeld.de 15. Januar 2016 Aktualisiert am 15. Januar 2016 um 9:58 Erstklausur: Mi, 24.02.2016 von 10-12Uhr Aufgabe 1* a),

Mehr

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1

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

Mehr

(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

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

GCC 3.x Stack Layout. Auswirkungen auf Stack-basierte Exploit-Techniken. Tobias Klein, 2003 tk@trapkit.de Version 1.0

GCC 3.x Stack Layout. Auswirkungen auf Stack-basierte Exploit-Techniken. Tobias Klein, 2003 tk@trapkit.de Version 1.0 1 GCC 3.x Stack Layout Auswirkungen auf Stack-basierte Exploit-Techniken Tobias Klein, 2003 tk@trapkit.de Version 1.0 2 Abstract Eine spezielle Eigenschaft des GNU C Compilers (GCC) der Version 3.x wirkt

Mehr

DHBW Stuttgart Mikrocomputertechnik Labor KEIL Entwicklungsumgebung. Projektstruktur

DHBW Stuttgart Mikrocomputertechnik Labor KEIL Entwicklungsumgebung. Projektstruktur Projektstruktur 25.10.12 K.Kraft D\MCT_Labor_2013\Dokumente\Projektdetails.odt 1 Typischer Aufbau eines 8051 Programms Start Adresse = 0003H External Interrupt 0 ISR Interrupt Service Routinen Start Adresse

Mehr

Informatik I WS 07/08 Tutorium 24

Informatik I WS 07/08 Tutorium 24 Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 31.01.08 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Organisatorisches Anmeldung Hauptklausur : allerspätestens

Mehr

5.5.5 Der Speicherverwalter

5.5.5 Der Speicherverwalter 5.5.5 Der Speicherverwalter Speicherverwalter (memory manager) reagiert auf = im einfachsten Fall ein Systemprozess, der für die Umlagerung der Seiten (page swapping) zuständig ist (analog zum Umlagerer/Swapper)

Mehr

Bsys2 Zusammenfassung. Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus.

Bsys2 Zusammenfassung. Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus. Prozessoren Definition Die CPU ist das Gehirn des Computers. Sie holt Befehle aus dem Speicher und führt sie aus. Register Alle Prozessoren besitzen interne Register, um den Zugriff auf Daten zu beschleunigen.

Mehr

Basisinformationstechnologie I Wintersemester 2011/ November 2011 Betriebssysteme

Basisinformationstechnologie I Wintersemester 2011/ November 2011 Betriebssysteme Basisinformationstechnologie I Wintersemester 2011/12 23. November 2011 Betriebssysteme Seminarverlauf 12. Oktober: Organisatorisches / Grundlagen I 19. Oktober: Grundlagen II 26. Oktober: Grundlagen III

Mehr

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

Intel x86 Bootstrapping

Intel x86 Bootstrapping Intel x86 Bootstrapping Meine CPU, mein Code! Andreas Galauner SigInt 2010 Democode Es gibt Democode: http://github.com/g33katwork/ SigInt10OSWorkshop git clone git://github.com/g33katwork/ SigInt10OSWorkshop.git

Mehr

Speicherverwaltung, Interrupts & Exceptions. Daniel Richter Seminar Prozesssteuerung und Robotik 03. Dezember 2008

Speicherverwaltung, Interrupts & Exceptions. Daniel Richter Seminar Prozesssteuerung und Robotik 03. Dezember 2008 Speicherverwaltung, Interrupts & Exceptions Daniel Richter Seminar Prozesssteuerung und Robotik 03. Dezember 2008 Agenda 2 Speicherverwaltung Grundlagen Möglichkeiten auf verschiedenen Ebenen CPU/Hardware,

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung. Maren Bennewitz

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

Mehr

Technische Informatik 1

Technische Informatik 1 Technische Informatik 1 7 Prozesse und Threads Lothar Thiele Computer Engineering and Networks Laboratory Betriebssystem 7 2 7 3 Betriebssystem Anwendung Anwendung Anwendung Systemaufruf (syscall) Betriebssystem

Mehr

Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming

Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Task Wiederholung 1 System SysCalls (1) Wozu? Sicherheit Stabilität Erfordert verschiedene modes of execution: user mode privileged mode

Mehr

TECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl

Mehr

Programmieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff

Programmieren in C. Speicher anfordern, Unions und Bitfelder. Prof. Dr. Nikolaus Wulff Programmieren in C Speicher anfordern, Unions und Bitfelder Prof. Dr. Nikolaus Wulff Vergleich: Felder und Strukturen Felder müssen Elemente vom selben Typ enthalten. Strukturen können Elemente unterschiedlichen

Mehr

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 2007 13. Vorlesung Inhalt Cache Lesen Schreiben Überschreiben Memory Management Unit (MMU) Translation Lookaside Buffer (TLB) Klausurvorbereitung Inhalte der Klausur Rechnergrundlagen

Mehr

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 2 Virtual Storage el0100 copyright

Mehr

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3 Institut für Kommunikationsnetze und Rechnersysteme Technische Informatik I Paul J. Kühn, Matthias Meyer Übung 3 Speicherhierarchie Inhaltsübersicht Aufgabe 3.1 Daten-Cache Aufgabe 3.2 Virtueller Speicher

Mehr

Übung 1 - Betriebssysteme I

Übung 1 - Betriebssysteme I Prof. Dr. Th. Letschert FB MNI 13. März 2002 Aufgabe 0: Basiswissen Rechnerarchitektur: Übung 1 - Betriebssysteme I Aus welchen Komponenten besteht ein Rechner mit Von-Neumann Architektur? Was sind Bits

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

Linux Paging, Caching und Swapping

Linux Paging, Caching und Swapping Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches

Mehr

Grundlagen der Informatik III Wintersemester 2010/2011

Grundlagen der Informatik III Wintersemester 2010/2011 Grundlagen der Informatik III Wintersemester 21/211 Wolfgang Heenes, atrik Schmittat 12. Aufgabenblatt mit Lösungsvorschlag 7.2.211 Hinweis: Der Schnelltest und die Aufgaben sollen in den Übungsgruppen

Mehr

Speicher- Management

Speicher- Management - Management hierarchie Die Hauptcharakteristika von sind: Kosten Kapazitäten Zugriffszeiten Generell gilt: kürzere Zugriffszeiten bedingen höhere Kosten pro bit größere Kapazität bedingt geringere Kosten

Mehr

Teil IX. Adressraum und Arbeitsspeicher

Teil IX. Adressraum und Arbeitsspeicher Teil IX Adressraum und Arbeitsspeicher wosch SS 2005 SOS1 IX-1 Überblick 11 Adressraum Adressraum Physikalischer Adressraum Logischer Adressraum Virtueller Adressraum Zusammenfassung Arbeitsspeicher Speicherzuteilung

Mehr

Übungen zu Softwaresysteme I Jürgen Kleinöder Universität Erlangen-Nürnberg Informatik 4, 2004 E-Uebung3.fm

Übungen zu Softwaresysteme I Jürgen Kleinöder Universität Erlangen-Nürnberg Informatik 4, 2004 E-Uebung3.fm E 3. Übung E 3. Übung Besprechung 1. Aufgabe Aufgabe 3: malloc Debugger gdb E.1 1. Include, Deklarationen #include #include void append_element(int value); int remove_element(void);

Mehr

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) VL 6 IA-32: Das Programmiermodell der Intel-Architektur Daniel Lohmann Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen Nürnberg

Mehr

Assembler Unterprogramme

Assembler Unterprogramme Assembler Unterprogramme Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler Unterprogramme 1/43 2008-06-03 Unterprogramme

Mehr

Betriebssysteme 1. Thomas Kolarz. Folie 1

Betriebssysteme 1. Thomas Kolarz. Folie 1 Folie 1 Betriebssysteme I - Inhalt 0. Einführung, Geschichte und Überblick 1. Prozesse und Threads (die AbstrakFon der CPU) 2. Speicherverwaltung (die AbstrakFon des Arbeitsspeichers) 3. Dateisysteme (die

Mehr

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18.

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18. Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 9, Dienstag 18. Dezember 2012 (Performance Tuning, Profiling, Maschinencode) Prof. Dr.

Mehr

Anbindung zum Betriebssystem (BS)

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

Mehr

Beim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen:

Beim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen: 1 ADRESSIERUNG IN MMIX Beim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen: no base address is close enough to the address A! relative address

Mehr

ggf. page fault virtuelle Adresse physikalische Adresse Hauptspeicher Seitenrahmen Register Seitentabelle logical address page number frame number

ggf. page fault virtuelle Adresse physikalische Adresse Hauptspeicher Seitenrahmen Register Seitentabelle logical address page number frame number Se 19 14:20:18 amd64 sshd[20494]: Acceted rsa or esser rom :::87.234.201.207 ort 61557 Se 19 14:27:41 amd64 syslog-ng[7653]: STATS: droed 0 Se 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root) CMD (/sbin/evlogmgr

Mehr

Hausübung 5 (Musterlösung )

Hausübung 5 (Musterlösung ) SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 5 (Musterlösung ) 2014-06-23 bis 2014-07-04 Hausübungsabgabe: Format: Lösungen in schriftlicher

Mehr

Assembler - Einleitung

Assembler - Einleitung Assembler - Einleitung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Einleitung 1/19 2008-04-01 Teil 1: Hochsprache

Mehr

C- Kurs 09 Dynamische Datenstrukturen

C- Kurs 09 Dynamische Datenstrukturen C- Kurs 09 Dynamische Datenstrukturen Dipl.- Inf. Jörn Hoffmann jhoffmann@informaak.uni- leipzig.de Universität Leipzig InsAtut für InformaAk Technische InformaAk Flexible Datenstrukturen Institut für

Mehr

Speicherverwaltung ÜBERBLICK

Speicherverwaltung ÜBERBLICK Speicherverwaltung 3. Systeme ohne Speicherabstraktion............... 229 3.2 Speicherabstraktion: Adressräume................ 232 3.3 Virtueller Speicher................................ 24 3.4 Seitenersetzungsalgorithmen.....................

Mehr

6 Speicherorganisation

6 Speicherorganisation Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für

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

Betriebssysteme Teil 10: Virtueller Speicher

Betriebssysteme Teil 10: Virtueller Speicher Betriebssysteme Teil 10: Virtueller Speicher 11.12.15 1 Übersicht Segmente Systemaufrufe Swapping Paging 2 Physikalischer Adressraum I - Wiederholung 3 Physikalischer Adressraum II - Wiederholung Es wird

Mehr

Betriebssysteme Vorstellung

Betriebssysteme Vorstellung Am Anfang war die Betriebssysteme Vorstellung CPU Ringvorlesung SE/W WS 08/09 1 2 Monitor CPU Komponenten eines einfachen PCs Bus Holt Instruktion aus Speicher und führt ihn aus Befehlssatz Einfache Operationen

Mehr

Übungen zur Vorlesung Systemsicherheit

Übungen zur Vorlesung Systemsicherheit Übungen zur Vorlesung Systemsicherheit Address Space Layout Randomization Tilo Müller, Reinhard Tartler, Michael Gernoth Lehrstuhl Informatik 1 + 4 19. Januar 2011 c (Lehrstuhl Informatik 1 + 4) Übungen

Mehr

Betriebssysteme BS-V SS 2015. Hans-Georg Eßer. Foliensatz V: Ulix: Interrupts und Faults Ulix: System Calls. Dipl.-Math., Dipl.-Inform.

Betriebssysteme BS-V SS 2015. Hans-Georg Eßer. Foliensatz V: Ulix: Interrupts und Faults Ulix: System Calls. Dipl.-Math., Dipl.-Inform. BS-V Betriebssysteme SS 2015 Dipl.-Math., Dipl.-Inform. Foliensatz V: Ulix: Interrupts und Faults Ulix: System Calls v1.0, 2015/05/28 (klassische Dokumentation) Folie V-1 Übersicht: BS Praxis und BS Theorie

Mehr

Anzeigen des Ereignisprotokolls (Windows) Anzeigen aller Fehler im Anwendungsprotokoll (Windows)

Anzeigen des Ereignisprotokolls (Windows) Anzeigen aller Fehler im Anwendungsprotokoll (Windows) 1. Shellprogrammierung (17.10.) Jeweils unter cmd und Powershell Öffnen einer Konsole Anzeigen des aktuellen Verzeichnisses Anzeigen der Dateien im Verzeichnis c:\windows\system32 Seitenweises Anzeigen

Mehr

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl Ü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

Speicher. Speicher. Speicherhierarchie. Speicher. Interessante Zahlen:

Speicher. Speicher. Speicherhierarchie. Speicher. Interessante Zahlen: Übersicht 1 Einleitung Hauptspeicher 2 Hauptspeicher 3 Caches, Cache-Kohärenz Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009

Mehr

Übung zu Betriebssystembau (Ü BS)

Übung zu Betriebssystembau (Ü BS) Übung zu Betriebssystembau (Ü BS) Interruptbehandlung in OOStuBS Wanja Hofer Lehrstuhl für Informatik IV WS 07/08 1 Agenda: IRQ-Behandlung in OOStuBS Interrupts und Traps beim x86 Die Interrupt-Deskriptor-Tabelle

Mehr

Klausur Betriebssystemkonzepte sowie Architektur von Rechnersystemen und Betriebssystemkonzepte

Klausur Betriebssystemkonzepte sowie Architektur von Rechnersystemen und Betriebssystemkonzepte BSK/ARBK SS-04 Oß (Fachbereich 5, Elektrotechnik und Informationstechnik) Zuname: Vorname: Matr.-Nr.: Klausur Betriebssystemkonzepte sowie Architektur von Rechnersystemen und Betriebssystemkonzepte Fach-Nummer:

Mehr