Betriebssystembau (BSB)
|
|
- Dagmar Straub
- vor 6 Jahren
- Abrufe
Transkript
1 Betriebssystembau (BSB) Das Programmiermodell der x86_64-architektur Daniel Friesel, Olaf Spinczyk AG Eingebettete Systemsoftware Informatik 12, TU Dortmund
2 Überblick: Vorlesungen Struktur des OO-StuBS -Betriebssystems: Anwendung(en) Gerätezugriff (Treiber) Kontrollflussabstraktion Unterbrechungssynchronisation Hardware Prozessverwaltung Unterbrechungsbehandlung Interprozesskommunikation Betriebssystementwicklung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 2
3 Überblick: Vorlesungen Struktur des OO-StuBS -Betriebssystems: Anwendung(en) Gerätezugriff (Treiber) Hardware Prozessverwaltung Interprozesskommunikation Unterbrechungsbehandlung Unterbrechungssynchronisation Kontrollflussabstraktion Betriebssystementwicklung Thema der heutigen Vorlesung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 3
4 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 4
5 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 5
6 Historie der Intel x86-prozessoren (1) 886 (1978) der Urvater des PC-Prozessors 8286 (1982) Einführung des Protected Mode segmentbasierter Speicherschutz 8386 (1985) erster IA-32-Prozessor seitenbasierter virtueller Speicher 8486 (1989) integrierte FPU, RISC-Ansätze Pentium (1993) superskalar, 64-Bit-Datenbus SMM, MMX, APIC, Dualprozessor-fähig Pentium Pro (1995) Server, High-End Pentium II (1997) Pentium Pro + MMX RISC-artige Mikroinstruktionen Pentium III (1999) SSE Pentium 4 (2) Netburst-Architektur SSE2, Hyperthreading, Vanderpool, Intel 64/EM64T 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 6
7 Historie der Intel x86-prozessoren (2) Core (25) Dual Core, weniger Strom Pentium III-Derivat, SSE3, Core 2 (26) Dual/Quad Core, 64 Bit (amd64) Core i3/i5/i7 (28) SSE4, QPI, SMT, L3-Cache On-die L3-Cache, integrierter Speichercontroller und teils GPU Atom (28) noch weniger Strom Sandy Bridge (211) AVX, AES-NI Haswell/Broadwell (213) AVX2, TSX Sky-/Kaby-/Cannonlake (215-17) AVX3, MPX, SGX, ADX integrierte Southbridge, USB 3.1, GPU für 3D und 4k-Video 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 7
8 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 8
9 886: Programmiermodell 16-Bit-Architektur, little-endian 2-Bit-Adressbus, d.h. maximal 1 MiB Hauptspeicher wenige Register (jedenfalls aus heutiger Sicht) 123 Befehle kein orthogonaler Befehlssatz Befehlslängen von 1 bis 4 Byte segmentierter Speicher noch immer aktuell obwohl von 1978: noch heute von jeder amd64-cpu unterstützt Real Mode, Virtual 886 Mode Aufwärtskompatibilität wird bei Intel großgeschrieben 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 9
10 886: Registersatz Befehls- und Stapelzeiger 15 IP SP Flags-Register 15 FLAGS Vielzweckregister 15 AH BH CH DH AL BL CL DL Segmentregister 15 CS SS DS ES Stack Data Extra SI DI BP 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 1
11 886: Registersatz Befehls- und Stapelzeiger 15 IP SP Vielzweckregister 15 AH BH CH DH SI DI BP AL BL CL DL Jedes Vielzweckregister erfüllt seinen speziellen Zweck AX: Accumulator Register arithmetisch-logische Operationen I/O Flags-Register kürzester 15 Maschinencode FLAGS BX: Base Address Register CX: Count Register für LOOP-Befehl Segmentregister für 15 String-Operationen mit REP für Bit Shift und Rotate CS DX: Data SS Register Stack DX:AX DSsind 32 Bit für MUL/DIVData Portnummer ES für IN und OUT Extra SI, DI: Index Register für Array-Zugriffe (Displacement) BP: Base Pointer 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 11
12 886: Segmentierter Speicher logische Adressen bestehen beim 886 aus Segmentselektor (i.d.r. der Inhalt eines Segmentregisters) Offset (i.d.r. aus einem Vielzweckregister oder dem Befehl) Berechnung der physikalischen Adresse: 15 Segmentselektor 15 + Offset 19 physikalische Adresse Die 16-Bit-Konkurrenz konnte i.d.r. nur 64KB adressieren. 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 12
13 886: Segmentierter Speicher logische Adressen bestehen beim 886 aus Segmentselektor (i.d.r. der Inhalt eines Segmentregisters) Offset (i.d.r. aus einem Vielzweckregister oder dem Befehl) Berechnung der physikalischen Adresse: 64K ought to be enough for anybody 15 Segmentselektor 15 + Offset angeblich ein Zitat von Bill Gates, physikalische Adresse Die 16-Bit-Konkurrenz konnte i.d.r. nur 64KB adressieren. 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 13
14 886: Speichermodelle Programme können Adressen unterschiedlich bilden. Das Ergebnis waren unterschiedliche Speichermodelle: Tiny -, Daten- und Stacksegment sind identisch: 64K insgesamt Small Trennung des s von Daten und Stack: 64K + 64K Medium 32- (bzw. 2-) Bit-Zeiger für, Daten- & Stapelseg., aber fest (64K) Compact Festes -Segment (64K), 32- (2-) Bit-Zeiger für Daten & Stack Large far -Zeiger für alles: 1MB komplett nutzbar Huge wie Large, aber mit normalisierten Zeigern 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 14
15 886: Fazit Urvater der PC-Prozessoren bildete den Kern der ersten PCs noch heute sind x86- und amd64-prozessoren kompatibel Segmentregister brachten Vorteile trotz 16-Bit-Architektur 1 MB Speicher Trennung von logischen Modulen im Hauptspeicher Programm- und Übersetzerentwicklung ist aber vergleichsweise schwierig verschiedene Speichermodelle nicht-orthogonaler Befehlssatz 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 15
16 IA-32 die 32-Bit-Intel-Architektur die erste IA-32-CPU war der 8386 wobei der Begriff IA-32 erst sehr viel später eingeführt wurde 32-Bit-Technologie: Register, Daten- und Adressbus ab Pentium Pro: 64 Bit Daten- und 36 Bit Adressbus zusätzliche Register komplexe Schutz- und Multitasking-Unterstützung Protected Mode ursprünglich schon mit dem 8286 (16-Bit) eingeführt Kompatibilität mit älteren Betriebssystemen durch den Real Mode mit älteren Anwendungen durch den Virtual 886 Mode segmentbasiertes Programmiermodell seitenbasierte MMU 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 16
17 amd64 Die 64-Bit-AMD-Architektur IA-32 erlaubte nur maximal 4 GB virtuellen Speicher Lösung: 64-Bit-Architektur Derzeit 48 Bit virtueller Adressraum (bis zu 256 TB) Weitere (und 64 Bit breite) Register Seitenbasierters Programmiermodell mit Speicherschutz No Execute-Bit für einzelne Seiten (Fast) keine Segmentierung Weiterhin rückwärtskompatibel Long Mode zur Nutzung der neuen Eigenschaften 32-Bit Legacy Mode für Systeme oder einzelne Anwendungen Von AMD entwickelt und von Intel (als Intel 64) übernommen Inzwischen meist als x86_64 / x64 bezeichnet Intels IA-64 (Itanium) konnte sich nicht durchsetzen 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 17
18 x86_64: Registersatz (Erweiterungen) erweiterte Register heißen aus Kompatibilitätsgründen R RAX RBX RCX RDX RSI RDI RBP R8 R15 Vielzweckregister AX BX CX DX SI DI BP RIP RSP RFLAGS Stack Data Extra Befehls- und Stapelzeiger 63 Flags-Register Segmentregister 15 CS SS DS ES Extra Extra 15 IP SP FLAGS FS GS Erweiterung zum Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 18
19 x86_64: Registersatz (neue Register) Speicherverwaltungsregister TR TSS-Sel. TSS-Basisadresse LDTR LDT-Sel. LDT-Basisadresse IDTR IDT-Basisadresse GDTR GDT-Basisadresse Steuerregister CR8 CR4 CR3 CR2 CR Modellspezifische Register TSS-Limit LDT-Limit IDT-Limit GDT-Limit 15 DR DR1 DR2 DR3 DR6 DR7 Debugregister Erläuterungen folgen 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 19
20 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 2
21 x86_64: Adressierungsarten Effektive Adressen (EA) werden nach einem einfachen Schema gebildet alle Vielzweckregister können dabei gleichwertig verwendet werden EA = Basis-Reg. + (Index-Reg. * Scale) + Displacement Beispiel: MOV RAX, Feld[RSI * 4] 1/2/4/ /2/4 Byte EA Lesen aus Feld mit 4 Byte großen Elementen und RSI als Index Neu bei x86_64: Relative Adressierung EA = RIP + Displacement 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 21
22 Das A2-Gate ist ein Relikt aus der Zeit der 8286-Systeme (IBM AT) beim IBM XT (886) konnte es bei der Adressberechnung zu einem Überlauf kommen. Im Maximalfall: xffef nur 2 Bit! xffff + xffff x1ffef Segment * 16 Offset phys. Adresse MS-DOS (und andere Systeme) verwenden diesen Trick. Aus Kompatibilitätsgründen wurde im IBM AT die A2-Leitung über das A2 Gate (Register im Tastaturcontroller) maskiert. A2 muss explizit freigeschaltet werden, um Speicher > 1 MiB zu adressieren Ab dem 486 hat Intel das A2-Gate in die CPU integriert! 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 22
23 IA-32: Protected Mode Segmente Ein Programm (in Ausführung) besteht aus mehreren Speichersegmenten Traditionell mindestens CODE, DATEN und STACK Segmentselektoren beschreiben (indirekt) Adresse und Länge Lineare Adresse ist Segmentstartadresse + EA Lineare Adresse entspricht physikalischer Adresse, falls die Paging Unit nicht eingeschaltet ist. Segmente dürfen sich überlappen, z.b. Startadressen == In der Praxis wird i.a. ein solcher flacher Adressraum genutzt Kein segmentbasierter Schutz im Long Mode Nur FS/GS-Startadresse und CS-Attribute werden berücksichtigt 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 23
24 x86_64: Segmente Segment Register SS GS FS ES DS CS Selektor Tabelle Flags Limit Startadresse SS GS FS ES DS CS Segmentdeskriptoren effektive Adresse + + Segmentgrenze lineare Adresse Startadresse des Segments Basis-Register Index-Register Scale 1, 2, 4 oder 8 Displacement (im Befehl) Operand selektiertes Segment 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 24 x Limit linearer Adressraum
25 x86_64: Seitenbasierte MMU Ein- und Auslagerung von Speicher (zwecks virtuellem Speicher) auf Seitenbasis Ab dem 8386 kann eine Paging Unit (PU) optional hinzugeschaltet werden, in x86_64 obligatorisch Die wichtigsten Verwaltungsinformationen stehen in den Steuerregistern CR/2/3: CR3 CR2 CR 63 reserviert Basis-Adresse der Page Map Virtuelle Adresse des Page-Faults reserviert PG sonstige reserviert PE Paging: 1=aktiv Protected-Mode Enable: 1=aktiv 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 25
26 x86_64: Seitenübersetzungstabelle lineare Adresse 63 N/A PML4-Index PDP-Index PD-Index Page-Index Offset 51 CR3 PML4-Basis 12 Page-Map Level 4 Eintrag Eintrag 2 Eintrag 1 Eintrag Page Directory Pointers Eintrag Eintrag 2 Eintrag 1 Eintrag Page Directory Eintrag Eintrag 2 Eintrag 1 Eintrag Page Table Eintrag Eintrag 2 Eintrag 1 Eintrag Page Frames (phys. Adr.)... Page-Frame 4KiB (, Daten) Page-Frame 4KiB (, Daten) Page-Frame 4KiB (, Daten) Page-Frame (, 4KiB Daten) 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 26
27 x86_64: TLB Problem: Speicherzugriffe werden durch Indirektion über PML4, PDP, Page Directory und Page Table verlangsamt Lösung: der Translation Lookaside Buffer (TLB): assoziativer Cache Tag: PML4/PDP/PD/PT Daten: Page-Frame-Adresse Größe und Assoziativität hängen von CPU ab bei normalen Anwendungen erreicht der TLB eine Trefferrate von etwa 98% Schreiben in das CR3-Register invalidiert den TLB 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 27
28 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 28
29 Schutz unter IA-32 die wichtigste Eigenschaft des Protected Mode ist das Schutzkonzept Ziel: fehlerhaften oder nicht vertrauenswürdigen isolieren Schutz vor Systemabstürzen Schutz vor unberechtigten Datenzugriffen keine unberechtigten Operationen, z.b. I/O-Port-Zugriffe Voraussetzungen: und Daten werden hinsichtlich der Vertrauenswürdigkeit kategorisiert bekommen einen Besitzer (siehe "Multitasking") 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 29
30 Schutzringe und Gates Durch einen 2-Bit- Eintrag im Segmentdeskriptor wird jedes Segment einer Privileg-Ebene zugeordnet. Daten Daten Daten Daten Daten Daten 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 3
31 Schutzringe und Gates Privileg-Ebene 3 ist die niedrigste und für Anwendungen gedacht. Anwendungen Daten Kundenspezifische BS-Erweiterungen Daten Systemdienste Daten Kern Daten Privileg-Ebene ist die höchste und dem Betriebssystemkern vorbehalten. Daten Daten 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 31
32 Schutzringe und Gates Zugriff auf Daten Daten eines inneren Rings ist verboten Daten Daten eines inneren Rings kann nur durch Gates aufgerufen werden Zugriff auf Daten eines Daten äußeren Rings Zugriffe erlaubt Daten Daten auf Segmente der Aufruf von derselben eines äußeren Rings Ebene sind ist i.a. verboten! erlaubt 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur erlaubt 32
33 Segmentdeskriptoren Erlauben Schutz von im Protected Mode jede Verletzung führt zum Auslösen einer Ausnahme In 64-Bit-Systemen erlauben sie die Ausführung von 32-Bit- ein Segment-Deskriptor Segment Base G D/B L AVL Limit P S DPL Segment Base Segment Limit TYPE Segment Base TYPE : C - Conforming R - Readable A - Accessed P - Present Bit G - Granularity DPL - Descriptor Privilege Level D/B - 16/32 Bit Seg. S - System Segment L - Long Mode aktiv 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 33
34 Schutz unter x86_64 Segmentierung wurde in der Praxis kaum angenommen Fast alle IA-32-Systeme nutzen flaches Speichermodell Offset der logischen Adresse = lineare Adresse Stattdessen: Schutz durch virtuellen Speicher Phys. Speicher Prozess 1: Prozess 2: Prozess n: CR3 CR3 CR3 Seiten- Tabelle Seiten- Tabelle Seiten- Tabelle... Seite 2 Seite 2 Seite 2 Seite 1 Seite Jeder Prozess sieht nur seinen virtuellen Adressraum Seitentabelle ist vor Anwendungssoftware verborgen Zusätzliche Einschränkungen pro Seite möglich 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 34
35 Einträge der Seitenübersetzungstabelle N X Available Basisadresse der Tabelle / Basisadresse der Seite AVL... U/S R/W P No Execute User/Supervisor Read/Write Present Einstellung in jeder Hierarchieebene möglich Daten dürfen nicht als ausgeführt werden (NX=1) Schutz vor Lesezugriffen aus Ring 3 (U/S=) Readonly-Seiten (R/W=) Erlaubt Umsetzung von Shared Memory Oder Readonly-Zugriff auf Betriebssystemstrukturen Effektiv werden nur Ring (Kern) und 1-3 (Anwendung) getrennt 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 35
36 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 36
37 IA-32: Multitasking Neben dem Schutz vor unberechtigten vertikalen Zugriffen zwischen Segmenten unterschiedlicher Ebenen unterstützt IA-32 auch ein Task-Konzept ( horizontale Trennung ) Ist im x86_64 Long Mode nicht verfügbar Daten Globale Segmente (Deskriptoren in Daten Daten der GDT) Segmente aus der LDT von Task A Daten Daten Task A Daten Task C Task B 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 37
38 Task State-Segmente Das Task-Register TR verweist auf das Task State Segment (TSS) In IA-32 nimmt es den Task- Zustand auf Segmente, Registerinhalt,... Task-Wechsel sind so komplett in Hardware möglich x86_64 unterstützt dies nicht Stattdessen: TSS für E/A- Berechtigungen und Stackpointer I/O Permission Bitmap I/O Map Base Address IST7 IST6 IST5 IST4 IST3 IST2 IST1 RSP2 RSP1 RSP 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 38
39 Ein-/Ausgaben im Long Mode Nicht jeder beliebige Task darf Ein-/Ausgaben durchführen! Zugriffe auf Geräte im Speicher (memory-mapped I/O) können über Speicherschutz abgefangen werden Zugriffe auf I/O-Ports werden eingeschränkt: die I/O Privilege Level-Bits im RFLAGS-Register erlauben Ein- und Ausgaben auf bestimmten Schutzringen auf den anderen Ebenen regelt die I/O Permission Bitmap im TSS den Zugriff: TSS Die Bitmap endet mit eine '1' verhindert dem TSS den Portzugriff Segmentende, Ports mit größeren Port Nummern dürfen nicht angesprochen I/O Map Base Address werden. IST7 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 39...
40 x86_64: Was gibt es sonst noch? Bald: 5-Level Paging Bis zu 4 PB Speicher (128 PB Adressraum) statt bisher 64/256 TB System Management Mode (SMM) gibt dem BIOS Kontrolle über das System das Betriebssystem merkt davon nichts! Virtualisierung der CPU der Virtual 886 Mode 16-Bit-Anwendungen oder Betriebssysteme laufen als Task in einer geschützten Umgebung Intel-VT, AMD-V Hardwareunterstützung für virtuelle Maschinenlösungen wie VMware, VirtualPC oder Xen erlaubt die Ausführung von Ebene--Protected-Mode- in einer VM 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 4
41 Agenda Historie Basisprogrammiermodell Speicherverwaltung und Adressierung Schutz Tasks Zusammenfassung 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 41
42 Zusammenfassung die x86_64-architektur ist ausgesprochen komplex, u.a. Virtueller Speicher mit vierfacher Seitentabelle Seitenbasierter Speicherschutz Schutz von I/O-Ports pro Task Ausführung von im 32-Bit Legacy Mode in einem 64-Bit-System Kaum genutzte IA-32-Features wurden in amd64 entfernt Segmentierung (viele Systeme nutzen einen flachen Adressaum) Task-Wechsel in Hardware Dennoch: konsequente Kompatibilität mit älteren Prozessorversionen Stichwort Legacy / Virtual 886 Mode, PIC und A2 Gate! 16. Nov 217 Betriebssystembau: 6-Das Programmiermodell der x86_64-architektur 42
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
MehrBetriebssysteme (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
MehrBetriebssysteme (BS) IA-32. Überblick: Vorlesungen. das Programmiermodell der Intel-Architektur. Agenda. Historie der Intel x86-prozessoren
Betriebssysteme (BS) Überblick: Vorlesungen Daniel Lohmann IA-32 das Programmiermodell der Intel-Architektur Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Gerätezugriff (Treiber) Anwendung(en)
MehrProseminar Konzepte von Betriebssystem- Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging
Proseminar Konzepte von Betriebssystem- Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Grundlegende Bedeutung von Speicheradressierung: Wie sind die Daten auf Dem Speicher
MehrIntel 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
Mehr5.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,
MehrZwei Möglichkeiten die TLB zu aktualisieren
Zwei Möglichkeiten die TLB zu aktualisieren Die MMU kümmert sich um alles (Hardware-Lösung) sucht die p-entry wenn diese nicht da ist, behandelt direkt das TLB-miss zum Schluss wird die neue p-entry (virt
MehrBetriebssystembau (BSB)
Betriebssystembau (BSB) Einführung https://ess.cs.tu-dortmund.de/de/teaching/ws2016/bsb/ Horst Schirmeier, Olaf Spinczyk horst.schirmeier@tu-dortmund.de https://ess.cs.tu-dortmund.de/~hsc AG Eingebettete
MehrProseminar Konzepte von Betriebssystem-Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Von Christian Hubert
Proseminar Konzepte von Betriebssystem-Komponenten (KVBK) Vortrag zum Thema: Speicheraddressierung, Segmentierung, Paging Von Christian Hubert 1.: Speicherung und Adressierung von Daten Bei der Speicheradressierung
MehrKompatibilitä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
MehrProf. Dr. Sharam Gharaei. Inhaltsverzeichnis. 1 Einleitung 1. 2 Grundlage der Realisierung 2. 3 Die Realisierung 3. Literaturverzeichnis 7
Prof. Dr. Sharam Gharaei Version 1.2.0, 07.04.2017 Inhaltsverzeichnis 1 Einleitung 1 1.1 Code-bezogene Aspekte 2 1.2 Speicherungsbezogene Aspekte 2 2 Grundlage der Realisierung 2 3 Die Realisierung 3 3.1
Mehr15. Hauptspeicher-Adressierung
15. Hauptspeicher-Adressierung 15.1 Adressierungsmodi 15.1.1 Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum. 16 Bit
MehrDOSEMU. Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Matthias Felix FAU. 13.
DOSEMU Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren Matthias Felix filo@icip.de FAU 13. Juni 2007 Matthias Felix (FAU) DOSEMU 13. Juni 2007 1 / 22 Inhalt 1 Einführung
MehrVirtueller Speicher und Memory Management
Virtueller Speicher und Memory Management Speicher-Paradigmen Programmierer ein großer Adressraum linear adressierbar Betriebssystem eine Menge laufender Tasks / Prozesse read-only Instruktionen read-write
MehrWie schreibt man ein Betriebssystem?
Wie schreibt man ein Betriebssystem? Vom BIOS in den Userspace Andreas Galauner Easterhegg 2011 Democode Es gibt Democode: http://github.com/g33katwork/sigint10osworkshop git clone git://github.com/g33katwork/
Mehrx86-assemblerprogrammierung
x86-assemblerprogrammierung von Michael Röhrs (Ergänzend zum Vortrag am 25.04.01) Einleitung Die Familie der x86-prozessoren gehört zur Klasse der CISC-Prozessoren ( Complex Instruction Set Computer ).
MehrTutorium 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
MehrBetriebssystembau (BSB)
Betriebssystembau (BSB) Einführung 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 Überblick Organisatorisches
Mehr7. Speicherverwaltung
7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 10 am 29.06.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrPru fungsprotokoll. Prüfer: Dr. Lenhardt Beisitzer:? Datum der Prüfung: Dauer: 25 Minuten
Pru fungsprotokoll Prüfer: Dr. Lenhardt Beisitzer:? Datum der Prüfung: 09.12.2016 Dauer: 25 Minuten Das folgende Protokoll habe ich nach bestem Wissen und Gewissen erstellt. Es besteht kein Anspruch auf
MehrBetriebssystemtechnik
Betriebssystemtechnik Übung 2 - Den Speicher beseiten Daniel Danner Christian Dietrich Gabor Drescher May 19, 2015 Betriebssystemtechnik 1 13 Ziel dieser Übung Betriebssystemtechnik 2 13 Ziel dieser Übung
MehrWie 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
MehrEchtzeit-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
MehrEchtzeit-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
MehrAssembler - 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
MehrBesprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben
Themen heute Besprechung des 9. Übungsblattes Virtuelle Speicherverwaltung Aufgaben Besprechung des 9. Übungsblattes Aufgabe 2 Ist in einer Aufgabe wie hier keine explizite Wortbreite angegeben, nicht
MehrEchtzeitbetriebssysteme
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
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrDas Assembler-Buch. Trutz Eyke Podschun. Grundlagen und Hochsprachenoptimierung. 4., aktualisierte Auflage ADDISON-WESLEY
Trutz Eyke Podschun Das Assembler-Buch Grundlagen und Hochsprachenoptimierung 4., aktualisierte Auflage ^ ADDISON-WESLEY An imprint of Addison Wesley Longman, Inc. Bonn Reading, Massachusetts Menlo Park,
MehrVorlesung "Struktur von Mikrorechnern" (CBS)
5 Entwicklung der Prozessorarchitekturen 5.1 Intel Prozessorenreihe i86 5.1.1 8088 und 8086 Prozessoren 5.1.3 80386 Prozessoren 5.1.5 Pentium Prozessoren 5.2 Vergleich von Prozessorarchitekturen unterschiedlicher
MehrBetriebssysteme Sommersemester Betriebssysteme. 5. Kapitel. Adressumsetzung. Dr. Peter Tröger / Prof. M. Werner. Professur Betriebssysteme
Betriebssysteme Sommersemester 2017 Betriebssysteme 5. Kapitel Adressumsetzung Dr. Peter Tröger / Prof. M. Werner Professur Betriebssysteme 5.1 Speicher schneller, teurer, kleiner Betriebssysteme Adressumsetzung
MehrSchreiben von Pages. Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen).
Schreiben von Pages Schreiben einer Page in den Swap Space ist sehr teuer (kostet millionen von CPU Zyklen). Write Through Strategie (siehe Abschnitt über Caching) ist hier somit nicht sinnvoll. Eine sinnvolle
MehrBetriebssystembau. 3. Übung. Michael Engel Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund
Betriebssystembau 3. Übung Michael Engel Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund michael.engel@tu-dortmund.de http://ess.cs.uni-dortmund.de/~me/ 1 Agenda: IRQ-Behandlung
MehrKlausur 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Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 9 und Präsenzaufgaben Übung 10 Dominik Schoenwetter Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität
MehrRechnergrundlagen 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
MehrRealisierung: virtueller Prozessor: der reale Prozessor wird periodisch dem Programm zugewiesen Im Prozessor: durch Task-Status Segment (TSS)
1.2 Multitasking Damit ein Computer mehrere Aufgaben gleichzeitig erledigen kann, die jede für sich oder die auch gemeinsam arbeiten, z.b. Daten lesen Berechnungen ausführen Netzwerkkontakt abarbeiten
MehrEinführung in Computersysteme
Einführung in Computersysteme Sommersemester 2015 Prof. Dr. Peter Mandl Prof. Dr. Peter Mandl Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze
MehrVorlesung "Struktur von Mikrorechnern" (SMR)
2 16-Bit Bit-Prozessoren 2.4 Datentypen in PASCAL 2.5 PIN-Funktionen beim I 8086 2.5.1 Adressbus 2.5.2 Multiplexbus 2.5.3 Interruptlogik 2.5.4 Betriebsmodi 2.6 Mehrrechnerkonzept Inhaltsverzeichnis Kapitel
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrAufgabe 1 Entwicklung einer Virtuellen Maschine
Aufgabe 1 Entwicklung einer Virtuellen Maschine Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Entwicklung
MehrRO-Tutorien 17 und 18
RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 12 AM 19.07.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der
MehrKonzepte von Betriebssystemkomponenten Referat am Thema: Adressräume, Page Faults, Demand Paging, Copy on Write Referent: Johannes Werner
Konzepte von Betriebssystemkomponenten Referat am 24.11.2003 Thema: Adressräume, Page Faults, Demand Paging, Copy on Write Referent: Johannes Werner Gliederung Adressräume Page Faults Demand Paging Copy
MehrÜ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
MehrTechnische 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
MehrVirtueller 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
Mehr01744 PC-Technologie Prüfungsprotokoll (Note 1,3) vom 20.06.16 bei Dr. Lenhardt, Protokollführer Dr. Bähring
01744 PC-Technologie Prüfungsprotokoll (Note 1,3) vom 20.06.16 bei Dr. Lenhardt, Protokollführer Dr. Bähring Dr. Lenhardt legt Wert darauf, dass man kurz und ohne ausschweifen Antwortet. Abkürzungen sollen
Mehr3 Schnittstelle zum Betriebssystem 3.1 Einleitung
3.1 Einleitung 1 Anbindung zum Betriebssystem (BS) Aufgaben BS Schnittstelle zur Hardware Sicherstellung des Betriebs mit Peripherie Dienste erfüllen für Benutzung Rechner Dateiverwaltung (Kopieren, Verwalten,.)
Mehr1. 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
MehrHans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1
Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2 Befehlsschnittstelle 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen
MehrÜberschrift. Speicherverwaltung. Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012
Überschrift Speicherverwaltung Prof. Dr. Margarita Esponda Freie Universität Berlin 2011/2012 1 Hauptziele: Speicherverwaltung Speicher ist die zweite wichtigste Ressource, die das Betriebssystem verwalten
MehrTIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems
Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving
MehrVorlesung: Virtualisierung und Rechenzentrumsinfrastrukturen. Lars Göbel & Christian Müller VL04: Einführung in die Virtualisierung
Vorlesung: Lars Göbel & Christian Müller VL04: Einführung in die Virtualisierung Themenüberblick Virtualisierung VL 02: Einführung in die Virtualisierung (heute) VL 06: VL 08: XaaS VL 09: PaaS + SaaS VL
MehrEinfü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
MehrEinfü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
MehrLösungsvorschlag für Übung September 2009
Universität Mannheim Vorlesung Betriebssysteme Lehrstuhl für Praktische Informatik 1 Herbstsemester 2009 Prof. Dr. Felix Freiling Dipl.-Inform. Jan Göbel Lösungsvorschlag für Übung 2 25. September 2009
MehrTECHNISCHE 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
MehrVorwort 15 Inhalt der DVD 18. Kapitel 1 Halbleitertechnik im Überblick 19. Kapitel 2 Logikschaltungen 29
Band 1 Vorwort 15 Inhalt der DVD 18 Kapitel 1 Halbleitertechnik im Überblick 19 1.1 Bipolar-Halbleiter 20 1.2 Der MOSFET 22 GUI Kapitel 2 Logikschaltungen 29 2.1 Logische Grundschaltungen 29 2.2 Sequentielle
MehrDas Paging: Stellen wir uns eine Zahlenmenge vor mit 12 Zahlen und zwar von 0 bis 11.
Das Paging: Stellen wir uns eine Zahlenmenge vor mit 12 Zahlen und zwar von 0 bis 11. {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11} Stellen wir uns nun vor, die 12 Zahlen sind nicht in der richtigen Reihenfolge,
MehrLeichtgewichtsprozesse
Leichtgewichtsprozesse häufiger Prozeßwechsel stellt in einem Betriebssystem eine hohe Belastung dar; auch erfordert die Generierung eines neuen Prozesses viele System-Resourcen in vielen Anwendungen werden
MehrBetriebssystembau (BSB)
Betriebssystembau (BSB) PC-Bussysteme und deren Programmierung http://ess.cs.tu-dortmund.de/de/teaching/ws2012/bsb/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os AG Eingebettete
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)
MehrAufgabe 2 - Erweiterung um PIC und Interrupts
Aufgabe 2 - Erweiterung um PIC und Interrupts Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Erweiterung
MehrRechnerorganisation. IKS 2016 H.-D. Wuttke, K. Henke
Rechnerorganisation Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen (9) Rechneraufbau
MehrMemory 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
Mehr12. Sicherheit. A, B3, B2, B1, C2, C1, D sicher unsicher. Betriebssysteme, Sommer 2005, Verteilte Systeme, Universität Ulm, M.
12. Sicherheit 12.1 Einleitung Ziel: Schutz vor Fehlern & Eindringlingen. Objekt: passive Ressource (z.b. Datei) Subjekt: aktive Einheiten (Proz. & Benutzer) Sicherheit: Fähigkeit eines BS, für seine Objekte
MehrPaging. 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
Mehr20 Task-Management Was bleibt noch zu tun? Wird ein Poolelement in die Queue aufgenommen, dann muß der Poolelemente-Zähler inkrementiert werden. Dies erledigt die Anweisung pool_kopf_adr -> anzahl_der.pool_elemente
MehrAlgorithmen 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.
MehrTechnische Informatik 1 - HS 2017
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 11 Datum: 21. 22. 12. 2017 Virtueller Speicher 1 Performanz Gehen Sie von einem virtuellen
MehrKapitel 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
MehrGrundlagen 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,
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
Mehr(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
Mehri386 Interrupt-Deskriptortabelle (IDT)
Agenda: IRQ-Behandlung in OO-Stubs Interrupts und Traps bei x86 Die Interrupt-Deskriptor-Tabelle (IDT) Aufbau der IDT Traps und Hardware IRQs Der Programmierbare Interruptcontroller PIC 8295A Aufbau Verwendung
MehrLinux 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
MehrGeräteentwurf mit Mikroprozessoren 1
Geräteentwurf mit Mikroprozessoren 1 Vorlesung am Institut für Elektronik der TU Graz Dipl.-Ing. Dr. Gerhard Stöckler SS 2003 Vorausgesetzte Kenntnisse: Grundlagen der Digitaltechnik Binäre Informationsdarstellung
MehrMikrorechentechnik 1. Befehlssatzarchitektur. Professur für Prozessleittechnik Wintersemester 2011/2012
Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik Mikrorechentechnik 1 Befehlssatzarchitektur Professur für Prozessleittechnik Wintersemester 2011/2012 Qualifikationsziele
MehrLinker: 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(Cache-Schreibstrategien)
Übungsblatt 2 Aufgabe 1 (Digitale Datenspeicher) 1. Nennen Sie einen digitalen Datenspeicher, der mechanisch arbeitet. 2. Nennen Sie zwei rotierende magnetische digitale Datenspeicher. 3. Nennen Sie zwei
MehrMemory Management Units in High-Performance Processors
Memory Management Units in High-Performance Processors Ausgewählte Themen in Hardwareentwurf und Optik Seminar Universität Mannheim LS Rechnerarchitektur - Prof. Dr. U. Brüning WS 2003/2004 Frank Lemke
MehrBetriebssysteme Teil 10 B: Fragen rund um Seitenfehler
Betriebssysteme Teil 10 B: Fragen rund um Seitenfehler 1 Überlegungen Wenn wir einige Seiten eines Programms in den Speicher laden, brauchen wir eine Strategie, welche Seiten als nächstes geladen werden
MehrProjekt 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
MehrSysteme 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
MehrTechnische 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
MehrTutorium Rechnerorganisation
Woche 3 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
MehrSysteme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard
Systeme I: Betriebssysteme Kapitel 4 Prozesse Wolfram Burgard Version 18.11.2015 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrNeue Prozessor-Architekturen für Desktop-PC
Neue Prozessor-Architekturen für Desktop-PC Bernd Däne Technische Universität Ilmenau Fakultät I/A - Institut TTI Postfach 100565, D-98684 Ilmenau Tel. 0-3677-69-1433 bdaene@theoinf.tu-ilmenau.de http://www.theoinf.tu-ilmenau.de/ra1/
MehrWunschvorstellung der Entwickler vom Speicher
Wunschvorstellung der Entwickler vom Speicher Unendlich groß Unendlich schnell Nicht flüchtig billig Obwohl sich der verfügbare Speicher laufend erhöht, wird immer mehr Speicher benötigt, als verfügbar
MehrInhaltsübersicht. Speicherverwaltung Teil I. Motivation. Prinzipielle Arten der Speicherverwaltung
Speicherverwaltung Teil I Hard- und Software-Komponenten zur Speicherverwaltung Inhaltsübersicht Zusammenhängende Speicherzuteilung Partitionen fester Größe Partitionen variabler Größe Methoden zur Verwaltung
MehrÜ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
Mehr5 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
MehrHinweise 80x86-Architektur
Hinweise 80x86-Architektur Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Hinweise 80x86-Architektur
Mehr6. Intel IA-32 Prozessoren Aufbau und Adressierungsarten
6. Intel IA-32 Prozessoren Aufbau und Adressierungsarten 6.1 Gegenstand der Vorlesung Interne Organisation - Architektur - Register - Statusbits - Speicherstruktur Basis-Adressierungsarten - direct - absolute
MehrRechnerorganisation. Überblick über den Teil 13
Rechnerorganisation Teil 3 9. Juni 2 KC Posch Überblick über den Teil 3 Arbiter: Wie können sich 2 aktive Partner vertragen? Direkter Speicherzugriff: Ein Ko Prozessor zum Daten Schaufeln Die Verbesserung
MehrKapitel 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