Aufgabe Inhalt 1..4 Aufbau PC, Mikroprozessor, Mikrocontroler 5..8 von Neumann, Abarbeitung eines Befehls Speicherhierarchie und Cache 23..

Größe: px
Ab Seite anzeigen:

Download "Aufgabe Inhalt 1..4 Aufbau PC, Mikroprozessor, Mikrocontroler 5..8 von Neumann, Abarbeitung eines Befehls 9..22 Speicherhierarchie und Cache 23.."

Transkript

1 Aufgabe Inhalt 1..4 Aufbau PC, Mikroprozessor, Mikrocontroler 5..8 von Neumann, Abarbeitung eines Befehls Speicherhierarchie und Cache Paging, Relocation, Segmentation, virtueller Speicher Pipelining und Scoreboarding Sprungvorhersage, Branchtargetbuffer, Branchfolding Leistungsbewertung von Rechnerarchitekturen Bussysteme E/A PIO, DMA, IOP Taxonomie nach Flynn, UMA, NUMA, CCNUMA Superskalare Architekturen, Shadowregister und Registerrenaming

2 1.) Unterschied zw. Mikroprozessor und Mikrocontroller Prozessor Kontroller Verwendung: allgemeine Aufgaben speziell auf Aufgabe zugeschnitten bzw. Für diese programmiert Speicher: Cache (Ram), Ram, EEProm bzw. Flash Eventuell mit MMU (statischen und flüchtigen Speicher) IO: Systembusse A/D sowie D/A, serielle (z.b. I2C), Grafik (LCD oder VGA),CAN... Einsatzgeb: universell Chipkarten, Automatisierung, embedded Devices Prozessor: nur eine Recheneinheit Kontroller: autonome Verarbeitungseinheit 2.) Bestandteile eines modernen PC s - Gehäuse - Netzteil - Hauptplatine (Motherboard mit Chipsatz) darauf: CPU Speicher (SD/DDR/...) Grafikkarte Netzwerkkarte Soundkarte - Festplatten + event. Extra Controller - Peripherie (USB/PS2/SERIELL...) 3.) Schnittstellen moderner PC externe: serielle, parallele, PS2, USB, FireWire, Netzwerk, Grafik (VGA/DVI...), Audio IN/OUT interne: IDE, Floppy, SATA, SCSI, 4.) Aufbau Grafikkarte RAM, RAMDAC, Schnittstellencontroller (AGP/PCI/PCIX/VESALOCALBUS), GPU, BIOS, Monitorschnittstelle

3 5.) Rechnerarchitektur von Neumann - gemeinsamer Speicher für Daten und Programme hohe Auslastung auf dem Datenbus da dieser von Daten und Code geteilt wird - taktgesteuert verhindert Konflikte durch Synchronisation, aber Befehle werden in festem Zeitraster abgearbeitet - Verarbeitungsbreite der Befehle ist fest, egal ob NOP oder DIV planbare Busbelastung aber Verschwendung bei kurzen Befehlen - programmgesteuerte Funktion nicht spezialisiert, kann alles aber nur weniges richtig gut - Speicher linear adressiert Adressberechnung nötig - sequenzielle Programmabarbeitung

4 6.) einfache CPU Rechenwerk Registersatz, speichern von Operanden und Ergebnissen ALU, Arithmetisch-Logische Einheit, das Rechenherz, verknüpft Operanden^w durch z.b. DIV, ADD, AND, OR, LSHIFT, RSHIFT Statusregister, speichert Zustände der ALU nach Operationen (z.b. Überlauf, Vergleichsergebnisse,...) TS, TargetSelect, Ergebnis in Register oder Speicher schreiben Steuerwerk: Logik, steuert Zusammenspiel der Komponenten BC, Befehlszähler, erzeugen der Adresse des nächsten Befehls Befehlsdecoder, decodiert den Befehl in Opcode und Operanden/Adressen Befehlsregister, speichert Opcode sowie Operanden/Adressen MBR: MemoryBufferRegister, Zugriff lesen/schreiben auf den Speicher Puffern (Latches)

5 7.) Abarbeitung des Befehls in 5 Schritten 1. Phase IF Instruction Fetch (Befehl holen) -> Befehl vom Datenbus bzw. aus dem Cache holen 2. Phase DC Decode (Befehl_Opcode ermitteln sowie benötigte Register/Speicher) -> feststellen um welchen Befehl es sich handelt, Operanden des Befehls ermitteln, entsprechende Verarbeitungseinheit der ALU scharf schalten, event. Statusregister zurücksetzen 3. Phase OF Operand Fetch (benötigte Operanden holen) -> Operanden aus den Registern/Speicher holen und der ALU zur Verfügung stellen 4. Phase EX Execute (ausführen der Operation) -> ausführen der Operation def. Durch Opcode 5. Phase WB WriteBack (schreiben der Ergebnisse) -> sichern der Operationsergebnisse 8.) Warum 5 Phasen? -> Synchronisierung der CPU-Verarbeitungseinheiten -> planbarer Zugriff auf Busse -> parallele Abarbeitung von Befehlen -> einheitliches Schema für die Bearbeitung unterschiedlicher Befehle (in Bezug auf Länge und Aufbau des Befehls) 9.) Speicherhierarchie erläutern, Auswirkung auf virtuelle Speicherverwaltung Speicher Speed Register Primärspeicher CPU_Speed Cache Level 1 annähernd CPU_Speed Cache Level 2 ca. 0,25 CPU_Speed Hauptspeicher ca. 0,1 CPU_Speed Festplatte Sekundärspeicher ca. 20 ms CDROM,MO Bandlaufwerke Tertiärspeicher ca. 500 ms Speicher werden in der Hierarchie vom Register abwärts stetig langsamer aber auch größer. Austausch zwischen den Schichten erfolgt über Datenblöcke. Auswirkung: je tiefer der Zugriff vom Register aus gesehen desto mehr Zeit vergeht bis Daten verfügbar sind. Durch die wesentlichen Größenunterschiede der Speichermedien ist eine virtuelle Speicherarchitektur möglich, d.h. es kann mehr Speicher adressiert werden wir physikalisch vorhanden ist. Dies erreicht man durch auslagern bzw. einlagern von Speicherbereichen über die Hierarchiegrenzen hinweg. Allerdings ist dazu eine Umrechnung der Speicheradressen notwendig, die unter Umständen wertvolle zeit kosten kann. Oft ist auch ein Auslagern von Speicherbereichen eines Prozesses bei einem Kontextswitch notwendig (z.b. flushen der Caches).

6 10.) Merkmale Speicherhierarchie sowie Techniken Speicher Speed Technik Register CPU_Speed FkipFlop, flüchtig, sehr klein Cache Level 1 annähernd CPU_Speed FlipFlop, flüchtig, Kb Cache Level 2 ca. 0,25 CPU_Speed FlipFlop, flüchtig 8MB Hauptspeicher ca. 0,1 CPU_Speed Transistor-Kondensator, flüchtig...4gb Festplatte ca. 20 ms magnetisches Verfahren, Platte, nicht flüchtig, 500 GB CDROM,DVD, blueray optisches Verfahren, nicht flüchtig,...50gb MO-Disk Magneto-optisches Verfahren nicht flüchtig,... Bandlaufwerke ca. 500 ms magnetisches Verfahren, Band, nicht flüchtig, GB Wichtige Merkmale beim Datenaustausch zwischen den Ebenen: Block placement - wo wird der Block geschrieben BestFit, WorstFit, FirstFit, RotatingFirstFit, BinaryBudy Block identification - wie wird der Block adressiert Direct, full mapped, set Block replacement - welcher Block soll wann/wie ausgelagert werden Auswahl: LRU, FIFO, RANDOM (FixedSize) Write Strategie - wann werden Blocks geschrieben Verzögert (z.b. OnFlush, Kontextswitch) Sofort (AfterChange) 11.) Warum Caches -> Hauptspeicher langsam, langer Zugriff, Pufferung durch schnellen, intelligenten Cache -> Steigerung der Geschwindigkeit, Pipeline im Ideal immer voll, niedrigere Busbelastung, ausnutzen der räumlichen und zeitlichen Lokalität 12.) Funktionsweise von Caches Cache ist wesentlich schneller als Hauptspeicher und wird zur Pufferung benutz. -bei Zugriff auf Hauptspeicher prüfen ob angeforderte Daten im Cache vorhanden sind -> NEIN: einlagern der Daten (abhängig von Cacheline-> Größe des eingelagerten Bereichs) -> JA: Zugriff direkt auf Cache - falls Cache voll/belegt auslagern von Cachlines in den Hauptspeicher nach Verdrängungsmechanismus/Replacementpolicy (z.b. RANDOM, LRU, FIFO,...) - Einlagerung / Zugriff durch Adressübersetzung (Assoziativität -> full, set, direct mapped)

7 13.) Beitrag zur Geschwindigkeitssteigerung von Caches Zugriffszeit MM: Zugriffszeit Cache: Trefferrate Cache: Tm Tc Pc Durchschnittliche Zugriffszeit: Tavg = Tc*Pc + Tm*(1-Pc) Da Cachezugriff min. um den Faktor 10 schneller ist ergibt sich bei einer hohen Pc ein erheblicher Zeitgewinn. 14.) Unterschied Cache MM -> Cache ist wesentlich schneller als MM (Speichertechnologie, Cache ist aus FlipFlops, MM aus Transistor und Kondensator) -> Cache ist wesentlich kleiner als MM (für FF braucht man min. 6 Transistoren -> Teuer!!!) -> Cache meist in der CPU auf dem DIE (näher an der CPU) -> Cache <-> CPU eigener BUS, dadurch exklusiver Zugriff -> MM wird linear adressiert, Cache über Tabellen durchsucht 15.) Begriffe zeitliche Lokalität, räumliche Lokalität in Bezug auf Rechnerarchitekturen und erläutern sie deren Einsatzmöglichkeiten zeitliche Lokalität: räumliche Lokalität: ein verwendetes Datum wird mit hoher Wkt in näherer Zukunft wieder verwendet auf ein benutztes Datum folgende Daten werden mit hoher Wkt ebenfalls benutz Anwendung im Cache: - zeitliche Lokalität, weil häufig benutze Daten im Cache vorliegen - räumliche Lokalität, weil ein/auslagern von Daten erfolgt in Lines bzw. Blockweise Anwendung beim Prefetching / Peekahead: - räumliche Lokalität, folgende Befehle im voraus lesen oder abarbeiten Anwendung beim TLB: - zeitliche Lokalität, weil häufig umgesetzte/angefragte Adressen gespeichert werden Caches werden im allgemeinen in jeder Ebene der Speicherhierarchie eingesetzt um den Datenverkehr zu puffern.

8 16.) zeitliche Lokalität, räumliche Lokalität am Beispiel eines iterativen Berechnungsverfahrens Summe aller Zahlen im Speicher von Addr 100 bis 200, Pseudocode 0 s:=0 1 c:=0 2 s: = s + mem(100+c) 3 c: = c +1 4 if c<= 100? 5 ja -> springe nach c,s zeitlich Lokal mem(100+c) räumlich Lokal 17.) Berechnung durchschnittliche Zugriffszeit Trefferrate: Pc = 99/100 Zugriff Cache: Tc = 10 ns Zugriff MM: Tm = 70 ns Tavg = Pc*Tc + (1-Pc)*Tm = 99/100 * 10ns + (1-99/100)*70ns = 10,6ns 18.) Begriff der Assoziativität erläutern -> Bezug des Hauptspeichers zum Cache hinsichtlich der Adressumsetzung, Aufteilung des Caches nach Methoden direct mapped: jedem Speicherbereich des MM ist direkt eine Cacheline zugeordnet Full Assoziativ: jeder Speicherbereich des MM kann an jeder beliebigen Stelle im Cache stehen Set assoziativ: Aufteilung des Caches in Set s zu einer Anzahl von Cachelines, jeder Speicherbereich des MM kann eine fixe Cacheline in jedem Set belegen

9 19.) Kosten und Nutzen der Assoziativität 1,4,32 bei einem Cachespeicher mit 32 Cachelines in Relation setzen Aufwand Nutzen 1 einfacher Aufwand gering, häufige Cache-Misses, trashing sehr wahrscheinlich 4 vierfacher Aufwand 4fach weniger Cache-Misses als bei 1facher Assoziativität 32 32facher Aufwand weite Teile können ungenutzt sein, (32*32Bit-Komparator,,,) so gut wie nie Konflikte In diesem Beispiel bestes Verhältnis von Kosten und Nutzen bei 4fach Assoziativität. Allgemein: je höher die Assoziativität, um so höher die Kosten (Platz und damit Geld). Ab einem gewissen Grad der Assoziativität wird der Platzbedarf für Komparatoren so hoch das zu kaskadierten Lösungen gegriffen wird Suche in den Cachelines erfordert mehr Zeit. 4fache Assoziativität mit 32 Byte pro Cacheline wird unter anderem in der UltraSparc verwendet (Tanenbaum, Computerarchitektur, Auflage 5, S. 344, ISBN: ) 20.) Vorteile von Prefetching in Bezug auf Cache Prefetchning nutzt die räumliche Lokalität der Daten. Durch vorrausschauendes lesen von Daten aus dem MM kann die Verarbeitungsleistung ernorm gesteigert werden. Wird der Cache nur nach einem CacheMiss gefüllt ist ein zeitverschwendender Zugriff auf den MM notwendig. Zu der wesentlich geringeren Geschwindigkeit des MM muss man auch die Latenz des Speicherzugriffes an sich (Adressumsetzung, Adressierung durch MBR/TLB/MMU) hinzurechnen. Diese Latenz lässt sich durch Prefetching wirkungsvoll kompensieren. 21.) Warum Ersetzungsstrategien für Caches -> Größe des Caches im Vergleich zum MM gering -> ein- und auslagern von Speicher notwendig LRU: der, der am seltensten benutzt wurde fliegt raus RANDOM: zufälliger Eintrag wird ausgewählt und geändert FIFO: der, der am längsten im Cache ist fliegt raus ROBBIN: zyklisch, 1 dann 2 dann 3... n Eintrag fliegt raus FINFO/LIFO: der, der am längsten im Cache ist wird nicht geändert Problem: trashing!!!

10 22.) in Hardware leicht zu realisierende Ersetzungsstrategie für Cache LRU der am wenigsten verwendete fliegt raus, dafür zwei Ansätze: Mittels Countern: Counter pro Eintrag, der beim einlagern der Daten auf definierten Wert gesetzt wird, bei jedem Cachezugriff auf einen andren Bereich Decrementierung (-1) des Counters, bei jedem Zugriff auf diesen Bereich Incrementierug (+1) des Counters. Counter mit dem niedrigsten Wert am wenigsten genutzt. Mittels Matrix: -> Assoziativität ist n -> Aufbau von n*n-matrix -> Zugriff auf i -> Spalte i auf 1 -> Zeile i auf 0 der am längsten nicht verwendete Block i ist der mit nur Nullen in Spalte i Realisierung in Hardware: N*N Matrix aus FF, S Spaltenweise zusammengefasst, K Zeilenweise zusammengefasst, Auswertung mittels nicht(q), Spaltenweise mit UND verbunden ) Welche Ziele verfolgt man mit Speicherverwaltung -> Schutz von Speicherbereichen / Protection (z.b. Schutz von OS-Speicherbereichen, nicht Ausführbarkeit des Stack und Heap) -> Relocation (Zerlegung in Segmente, Addressierung über Segmentadresse und Offset, jedes Segment beginnt mit Offset 0 -> freie Verschiebbarkeit von Programmen und Prozeduren, Mehrfachnutzung ermöglichen, ermöglicht kompelieren von Modulen ohne auf deren Startadressen rücksicht nehmen zu müssen) -> Trennung von großem Logischen Adressraum von relativ kleinem physischem Adressraum -> intelligentes Swaping und Paging möglich -> schnelle Antwortzeiten (geringe Latenzen) durch Caching Speicherverwaltung ist in der Regel für den Programmierer transparent. Nur Betriebssystementwickler und Studenten müssen darüber bescheid wissen.

11 24.) Welcher virtuelle Adressraum steht einem Programm auf einer 32-Bit-Architektur zur Verfügung, wenn noch 9 weitere Programme auf dem Rechner laufen? Weiterhin 32 Bit (4 Gbyte), da der virtuelle Speicherbereich jedem Programm voll zur Verfügung steht. 25.) Probleme bei Nutzung von virtuellen Adressen bei Caches darstellen, erläutern und bewerten beide möglichen Methoden zur Lösung zur Beschleunigung der Umrechnung. Benennen der derzeit eingesetzten Methode zur Umrechnung von virtuellen in reale Adressen. Probleme: -> Umrechnung virtuell <-> real nötig Frage: an welcher Stelle umrechnen (vor oder nach Cache)??? (Beachte hier: Ziel ist es so viel wie möglich auf dem Cache zu arbeiten) two possibilities: (Dude, watch DAGON, on of the greatest and most famous horror-movies) -> Cache arbeitet mit virtuellen Adressen -> keine Umrechnung bei Cachezugriff nötig ABER -> zwei Programme können auf gleiche virtuelle Adresse zugreifen, benutzen dabei aber unterschiedliche physische Adressen (was für den Cache intransparent ist) -> Cache arbeitet mit realen Adressen ABER -> Adressumrechnung vor jedem Cachezugriff notwendig (Zeitaufwendig) Genutzt wird IMHO virtuelles Caching da bei heutigen Designs das Prinzip der räumlichen und zeitlichen Lokalität vorherscht (Cachezugriff = Normalzustand).

12 26.) Was ist der Translation Lookaside Buffer TLB -> hält bereits übersetzte Adressen (virtuell -> real) vor -> bei Speicherzugriff wird parallel zur suchen in den Pagetablen der TLB durchsucht -> TLB relativ klein -> parallele suche -> sehr schnell Ergebnis Adresse schon übersetzt oder auf Pagetables warten -> wenn Adresse in TLB gefunden -> direktes legen dieser auf den Adressbus, anfordern des Speichers SONST -> Adressübersetzung mittels Pagetable, eintragen der Übersetzung in den TLB, zugriff auf Speicher Warum?... TLB schneller... Lokalitätsprinzip... SPEEED! Wo?... zwischen CPU und Speicher... muhar... also auf dem virtuellen Adresspfad mit einem Abzweig Richtung Pagetables, das andere Ende des TLB ist in der realen Speicherwelt verankert ) Verfahren zur dynamischen Speicherverwaltung nennen und Stichpunkte... paging: -> Speicher in Seiten fester Größe einteilen -> Speicher eines Prozesses wird auf diese Seiten aufgeteilt -> Speicher muss nicht zwingend im physikalischen Speicher aufeinander folgen -> Adressierung über Pagetable -> PROBLEM: durch feste Größe der Seiten entstehen Speicherlöcher (2 KB Code in 4KB Seite...) segmentation: -> Speicher wird in Segmente mit variabler Größe aufgeteilt -> Teile eines Prozesses (Code, Stack, Heap) liegen in unterschiedlichen Segmenten -> Segmente können wachsen und schrumpfen -> Adressierung: Segmentadresse und Offset im Segement -> PROBLEM: durch uneinheitliche Segmentgröße kann der Speicher fragmentieren ->EXTERNE FRAGMENTIERUNG paged segmentation: -> Pages in Segmenten -> dadurch bessere Ausnutzung des Speichers (Segmente müssen um vielfaches einer Page wachsen) -> 2 stufige Adressumsetzung (Segment -> Page -> Offset) -> Page kann in sich über mehrere Segmente erstrecken ->PROBLEM: relativ hoher Verwaltungsaufwand

13 relocation: -> abbilden des virtuellen Speichers auf zusammenhängenden realen Speicher -> angeforderter Speicher kann nie größer sein wie physikalisch vorhanden -> Adressauflösung über Rellokationregister (RR) 28.) Erläutern Relocation... Erläutern: siehe oben Anmerkung: das RR wird bei Kontextswitch umgeladen und enthält neue Startadresse des Speichers oder jedem Prozess ein eigenes RR zuordnen Einprozesssystem: -> unkritisch, Nutzung von nur einem RR -> Prozess kann fast gesamten Speicher nutzen (bis auf OS-Bereiche) Mehrprozesssystem: -> Prozesse müssen sich Speicher teilen -> wachsen des Speichers des Speichers nicht möglich Batch: Speichernutzung vorhersag- und damit reservierbar Interaktiv: dynamische Speicheranforderung, mit Relocation problematisch 29.) Probleme Relocation siehe 27,28 30.) Paging erläutern -> siehe 26,27 -> Adresse wird zerlegt in Page und Offset

14 31.) Leistungsfähigkeit des Pagings und Strategien zur Organisation der Seiten -> Umrechnung von Pages über Pagetable -> braucht Zeit -> jeder Prozess hat eigene Pagetable -> braucht Platz Nachladestrategien: Superfluity: -> alle Daten eines Prozesses werden geladen, egal ob sie verwendet werde oder nicht PROBLEM: Zeitverschwendung und verwendeter Speicher kann nicht größer wie physikalischer sein Demand paging: -> nur das einlagern was gebraucht wird ERGEBNIS: angeforderter Speicher kann größer sein als physikalisch vorhanden PROBLEM: wenn angeforderte Daten nicht im Speicher sind -> PageFault und dadurch Kontextswitch (sollten Sie Erläuterungen zum eben geschriebenen brauchen hören sie auf zulesen, exmatrikulieren sie sich und werden sie ordentlicher Assozialer im Sinne der APPD) 32.) Seitenersetzungsstrategien beim Paging FIFO, LRU, RANDOM,... siehe Ersetzungsstrategien beim Cache 33.) invertierte Seitetabelle nicht invertiert: Zuordnung von virtuell auf real 1:1, dh. Abhängig von Pagegröße sehr große Übersetzungstabelle -> teuer invertiert: -> Zuordnung von real auf virtuell, da weniger reale Adressen als virtuell -> kleinere Übersetzungstabelle nötig -> virtuelle Adressen werden mittels Hash auf diesen kleineren Bereich abgebildet, Kollisionsliste verwaltet Überschneidungen 34.) Skizze Adressumsetzung aus einer virtuellen bei 2-stufiger Adressumsetzung

15 35.) Kurz die Idee des Pipelinings erläutern -> Abarbeitung eines Befehls in meherere atomare Schritte zerlegt -> jeder Schritt hat klar definierte, feste Aufgabe welchen in konstanter Zeit abgearbeitet wird -> klare Definition welcher Schritt auf welche Register/Funktionen/Speicher zugreift dadurch parallele Abarbeitung von Befehlen möglich -> Geschwindigkeitsgewinn SUM: homogene Befehle, wenige Adressmodi, seltene Speicherzugriffe Load/Store-Architektur, viele Register, einfache Befehle 36.) 5 Stufen einer Pipeline, Aufgaben dieser Stufen Aufbau für Wirtschaftsinformatiker: IF DC OF EX WB IF Instruction Fetch holen des Befehls aus dem Cache/Speicher DC Instruction Decode decodieren des Befehls, ermitteln Befehlstyp und Operanden- oder Speicherzugriff OF Operand Fetch zugriff auf Register, holen von Operanden EX Execute Ausführen des Befehls (ALU) bzw. Adressumrechnung WB Write Back Ergebnis speichern Aufbau für tigthe checker: IF DR EX MA WB IF Instruction Fetch holen des Befehls aus dem Cache/Speicher DR Decode and Read steigende Flanke: decodieren des Befehls, ermitteln Befehlstyp fallende Flanke: Operanden- oder Speicherzugriff EX Execute Ausführen des Befehls (ALU) bzw. Adressumrechnung MA Memory Access zugriff auf MM, Ergebnis direkt im Speicher ablegen (überbrückbar) WB Write Back Ergebnisse in Registern sichern 37.) Zugriff auf Ergebnisse von vorhergegangener Befehle beschleunigen -> nach dem dritten Abarbeitungsschritt (EX) Ergebnisse in Schattenregister schreiben -> dadurch Zugriff auf Ergebnisse bereits 2 Takte zeitiger möglich FORWARDING -> erfordert zusätzliche Datenleitungen und Scoreboard (Belegung des Scoreboards checken, wenn nachfolgender Befehl auf Register X zugreift und dieses im Schattenregister einen gültigen Werte enthält -> zugriff auf Schattenregister)

16 38.) Probleme beim Pipelining Strukturelle Konflikte: gleichzeitiger Zugriff auf Resourcen Lösung1: aufteilen der der Zugriffe auf steigende und fallende Flanken IF DR EX MA WB IF DR EX MA WB IF DR EX MA WB IF DR EX MA WB IF DR EX MA WB Lösung2: umsortieren von Befehlen (z.b. durch Compiler) Datenkonflikte: zugriff auf Register, deren Werte noch nicht zur Verfügung stehen oder Falsche Ergebnisse beinhalten dirty read, dirty write Lösung1: durch Software (einfügen von NOP s oder semantisch invariantes umsortieren) Lösung2: verwenden eines Scoreboardes Lösung3: Forwarding über Schattenregister (Bypass) Steuerkonflikte: Sprünge, Sprung steht erst nach DR fest, nächster Befehl schon im IF Lösung1: einfügen von NOP s (doof weil Zeitverschwendung) Lösung2: delayed branching -> Befehlsfolge umsortieren (wenn sich der Sprung nicht auf Ergebnisse vorangegangener Befehle bezieht), berechnen des Sprunges und Ausführung der Befehle nach dem Sprung Lösung3: Sprungvorhersage, spekulative Ausführung der nachfolgenden Befehle 39.) Belegungsmatrix zwei unterschiedliche Beispiele Sinn: strukturelle Konflikte erkennen und vermeiden IF DR EX MA WB IF DR EX MA WB IF DR EX MA WB IF DR EX MA WB IF DR EX MA WB -> MA und IF greifen beide auf den Speicher zu -> WB und DR greifen auf Register zu

17 40.) Ziele der RISC-Achitektur, Auswirkungen auf Pipeline -> jeder Befehl gleich lang, gleiche Ausführungszeit -> einheitliches Befehlsformat -> Load/Store-Architektur (Operationen nur über Register, explizite Befehle für Speicherzugriff -> Verringerung von Buskonflikten) Auswirkung auf Pipeline: -> durch geringen Befehlsumfang schnelleres Decode möglich -> durch einheitliche Ausführungszeit Vermeidung von dirty read und write Konflikten -> durch einheitliches Befehlsformat und Operation nur über Register einfachere Planung von Zugriffen auf Speicher 41.) Warum besitzen die meisten Architekturen nichtlineare, multifunktionale Pipelines unifunktional: multifunktional: linear: nichtlinear: alle Befehle haben ein Belegungsschema unterschiedliches Befehlsformat (jmp xyz und add x,y,z ; jmp <adresse> add <t>,<s1>,<s2>) jede Hardwareeinheit wird in genau einer Stufe der Pipe benötigt Überschneidung beim zugriff auf Hardwareeinheiten in unterschiedlichen Stufen der Pipe Warum? Nichtlinear: Multifunktional: lineare Pipe müsste länger sein und zugriff auf Hardwareeinheiten flexibel gestaltet werden -> hoher Aufwand in Silizium und Zeit zum Anpassen der Einheitenzuordnung, nichtlineare Pipe besser da hier durch Umsortieren der Befehle (z.b. durch Compailer) Strukturelle Konflikte vermieden werden können bei einer unifunktionalen Architektur würde jeder Befehl in jeder Stufe der Pipe die entsprechende Einheit belegen, durch multifunktionale Pipe können nicht benutzte Einheit von folgenden Befehlen bereits verwendet werden 42.) Welche Konflikte vermeidet man in der Pipe durch Harvard-Architektur -> getrennten Speicher und Bus für Daten und Befehle (Harvard) -> vermeidet strukturellen Konflikt IF und WB, da IF auf Code und WB auf Daten zugreift 43/44.) Was sind und warum kommt es zu Strukturellen Konflikten und Datenkonflikten in der Pipe? siehe 38

18 45.) Wozu dient das Scoreboard? Funktionsweise... -> im Scoreboard wird festgehalten welcher Befehl welche Register verwendet -> dient zur Vermeidung von dirty reads/writes (read_after_write und write_after_read und write_after_write RAW, WAR, WAW) Funktionsweise: -> wenn ein Befehl ein Register lesend benötigt wird in der Decodephase im Scoreboard nachgesehen ob dieses bereits schreibend verwendet wird, wenn nicht lesen sonst warten -> wenn ein Befehl ein Register schreibend verwenden will, schauen ob schon belegt ja: warten nein: ins scoreboard eine 1 für das entsprechende Register eintragen nach Abschluss der WB-Phase Freigabe in Scoreboard durch nullsetzen 46.) Warum Verarbeitung Sprungbefehl in Architekturen ohne Sprungvorhersage potentiell längere Verzögerung als jeder andere Konflikt? -> große Anzahl von bedingten Sprüngen ( ca. 11%) -> ohne Vorhersage verliert man 2 Takte durch annulieren der 2 nachfolgenden Befehle (ca. 10 Prozent Leistungseinbuße) -> Executephase kann nicht abgebrochen werden (bsp. DIV braucht 10 Takte, wenn der schon in der ALU ist muss er fertig abgearbeitet werden...) 47.) Qualität der Sprungvorhersage -> Einfluss auf die Länge der Pipe -> schlechte Sprungvorhersage und lange Pipe -> spätes feststehen ob Sprung genommen oder nicht -> viele nachfolgende Befehle bearbeitet -> müssen alle annuliert werden -> ineffektiv -> je besser Sprungvorhersage, desto länger kann Pipe sein -> je besser Sprungvorhersage, desto weniger Annulierungen nötig -> effektiver 48.) Vergleich statische und dynamische Sprungvorhersage, Erläutern statisch: ->durch den Programmierer oder Compiler (Analyse des Codes notwendig) indem vorbelegte bedingte Sprungbefehle verwendet werden (bei MMIX wird vor den bedingten Sprung ein P gestellt für hohe Wahrscheinlichkeit das dieser Sprung genommen wird, BZ unwahrscheinlich, PBZ seht wahrscheinlich) dynamisch: -> durch den Prozessor über Branchhistorybits in welchen die Sprunggeschichte des bedingten Sprunges gespeichert wird -> anpassen der Sprungwahrscheinlichkeit an den Programmablauf Vergleich: -> statische Voraussage hat Trefferquote von ca % -> ausreichend für kurze Pipelines, allerdings muss der Compailer den Code analysieren (sehr schwierig) -> dynamische Voraussage hat Trefferquote von ca. 98%, allerdings muss sich der Prozessor um die Verwaltung der Branchhistory kümmern

19 49.) Worin liegt der Nutzen einer statischen Sprungvorhersage, Anforderungen an Befehlssatz, welches Werkzeug führt die Vorhersage durch und wie gelangt man an die Notwendigen Eingaben -> Beschleunigung des Programmablaufs durch vermeiden von Annulierungen in der Pipe -> kein Aufwand für eine dynamische Sprungvorhersage -> Taken or Not Taken im Befehl implementiert -> Aussage ob Sprung wahrscheinlich oder unwahrscheinlich durch Mnemonic codiert -> Programmfortführung steht bereits nach Decode fest -> Eingaben von: -> Codeanalyse durch Compailer bzw. Profilbasierend, Vergabe von taken oder not taken an Gruppen von Befehlen (z.b. erkennen von Schleifenkonstrukten, If s...) -> Testen -> stupides rödeln lassen der App, Sprünge protokollieren 50.) Branchpredichtbist, Branchhistorytable, Branchadressbit, Branchtargetbuffer Branchpredichtbits: -> speichert die Sprungwahrscheinlichkeit Bsp: Bit Zustände Aufteilung not taken, 1 taken strongly not taken, 1 not taken, 2 taken, 3 strongly taken strongly not taken 7 strongly taken Wenn Sprung genommen wurde -> +1 sonst -1 Kleiner Wert: geringe Sprungwahrscheinlichkeit Branchhistorytable: -> speichert Sprünge, deren Branchpredictbits sowie die Adresse des Sprungs (siehe Branchadressbits!!!) sowie möglicherweise das Ziel des Sprunges (siehe Branchtargetbuffer!!!) Branchadressbit: -> die Bits der Adresse des Sprunges, mit welchem der Sprung in der Branchhistorytable identifiziert wird (bei MMIX der untern Bits der Adresse), die komplette Adresse des Sprunges wird zur eindeutigen Identifizierung ebenfalls gespeichert! Branchadressbit dient nur dem schnellen finden des Sprunges in der Branchhistorytable!!! Branchtargetbuffer: -> speichert das Ziel des Sprunges (keine Adressberechnung mehr nötig)

20 51.) Sprungvorhersage mittels Branchpredictbits erläutern und diskutieren Sie wie viele Bits gewählt werden sollten. -> jeder Sprung in der Branchhistorytable besitzt sogenannte Branchpredictbits -> diese geben Auskunft darüber, ob der Sprung genommen oder nicht genommen wurde -> Sprung genommen -> Counter +1, sonst 1 (siehe Skizze) -> siehe 50! Da mit einem Bit nur 2 Zustände gespeichert werden können ist die Falschvoraussagewahrscheinlichkeit ( schönes Wort!!!) in geschachtelten Schleifen sehr hoch (nach jedem Neustart einer inneren Schleife wird eine Falschvoraussage getätigt). Abhilfe schafft hier die Erweiterung der Branchpredictbits auf 2 (4 Zustände). Die Praxis hat gezeigt das mehr als 3 PBBit s kaum eine Leistungssteigerung bringen. 52.) Warum wurde der Branchtargetbuffer eingeführt? Aufbau? Welche Einträge? -> Ergebnis der Adressberechnung des Sprungziels steht erst nach Decode and Read zur Verfügung -> kostet Zeit -> deshalb Speichern des Sprungziels in Branchtargetbuffer (inkl. Befehlsadresse des Sprungs) -> auch möglich: Operartion, welche sich am Sprungziel befindet ebenfalls speichern Befehl kann direkt in Pipeline gepackt werden -> beinhaltet: Sprünge die genommen wurden Sprungadressencache

21 53.) Wann wird der Branchtargetbuffer untersucht, wann werden Einträge hinzugefügt, wann entfernt? Untersucht: -> während IF-Phase, da die Adresse des zu fetchenden Befehls bekannt ist kann somit direkt im BTB nachgesehen werden. Letztlich muss die Decode_and_Read-Phase ergeben ob ein Sprung genommen oder abgelehnt wird (denn erst an dieser Stelle ist ein Zugriff auf die Statusregister der ALU, welche bedinget Sprünge bestimmen, möglich) -> hinzufügen: Sprung ist noch nicht in BTB und wurde genommen -> gelöscht: Sprung ist im BTB und wurde nicht genommen 54.) Warum ist der Branchtargetbuffer nicht groß? -> parallele Suche notwendig damit schnell -> n Komparatoren a m Bits -> hoher Schaltungsaufwand -> deshalb ist er klein -> Programme beschäftigen sich 90% der Zeit mit 10 % des Codes -> Anzahl der Sprünge in einem solchen Segment abzählbar (meint relativ gering) 55.) Charaktersieren Sie den Returnadressbuffer... -> enthält Rücksprungadresse (Befehlsposition nach dem Sprungbefehl) für aufgerufene Routinen -> wenn Subroutine abgearbeitet keine Adressberechnung des Rücksprungziels notwendig -> kann in BHT oder BTB gespeichert werden 56.) Was versteht man unter Branchfolding? Vorteile? -> im BTB wird der Befehl, auf welchen der Sprung verweist, mitgeführt -> handelt es sich um einen unbedingten Sprung oder steht das Ergebnis eines bedingten Sprunges schon fest (keine statusändernder Befehl vor dem bedingten Sprung) kann die Operation aus dem BTB bereits als nächster Befehl in die Pipeline eingefügt werden, der Prefetchbuffer kann dann ebenfalls schon mit den Befehlen am Sprungziel (Sprungzieladresse +1) gefüllt werden BRANCH FOLDING

Teil VIII Von Neumann Rechner 1

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

Mehr

2.2 Rechnerorganisation: Aufbau und Funktionsweise

2.2 Rechnerorganisation: Aufbau und Funktionsweise 2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise

Mehr

Das Prinzip an einem alltäglichen Beispiel

Das Prinzip an einem alltäglichen Beispiel 3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und

Mehr

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Name: Matrikel-Nr: Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Bitte schreiben Sie leserlich und antworten Sie kurz und präzise. 1. Zeichnen Sie das Schichten-Modell eines Computersystems und markieren

Mehr

Die Mikroprogrammebene eines Rechners

Die Mikroprogrammebene eines Rechners Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.

Mehr

Ein kleines Computer-Lexikon

Ein kleines Computer-Lexikon Stefan Edelmann 10b NIS-Klasse Ein kleines Computer-Lexikon Mainboard Die Hauptplatine! Sie wird auch Motherboard genannt. An ihr wird das gesamte Computerzubehör angeschlossen: z.b. Grafikkarte Soundkarte

Mehr

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor.

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor. Rechnerstrukturen 6. System Systemebene 1 (Monoprozessor) 2-n n (Multiprozessor) s L1- in der L2- ( oder Motherboard) ggf. L3- MMU Speicher Memory Controller (Refresh etc.) E/A-Geräte (c) Peter Sturm,

Mehr

Instruktionssatz-Architektur

Instruktionssatz-Architektur Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile

Mehr

Angewandte Informatik

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

Mehr

Steuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC)

Steuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) Steuerungen 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) VPS - Funktion der Steuerung in der Schaltungstopologie

Mehr

Das Rechnermodell von John von Neumann

Das Rechnermodell von John von Neumann Das Rechnermodell von John von Neumann Historisches Die ersten mechanischen Rechenmaschinen wurden im 17. Jahhundert entworfen. Zu den Pionieren dieser Entwichlung zählen Wilhelm Schickard, Blaise Pascal

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Kap 4. 4 Die Mikroprogrammebene eines Rechners 4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).

Mehr

Zyklus: FETCH, DECODE, FETCH OPERANDS, UPDATE INSTRUCTION POINTER, EXECUTE

Zyklus: FETCH, DECODE, FETCH OPERANDS, UPDATE INSTRUCTION POINTER, EXECUTE 1. Von Neumann Architektur Aufbau: CPU Rechenwerk ALU (arithmetische und logische Operationen) Steuerwerk (Steuerung der Verarbeitung über Operationscodes) Hauptspeicher Daten und Befehle Adressierung

Mehr

IT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1

IT für Führungskräfte. Zentraleinheiten. 11.04.2002 Gruppe 2 - CPU 1 IT für Führungskräfte Zentraleinheiten 11.04.2002 Gruppe 2 - CPU 1 CPU DAS TEAM CPU heißt Central Processing Unit! Björn Heppner (Folien 1-4, 15-20, Rollenspielpräsentation 1-4) Harald Grabner (Folien

Mehr

Technische Informatik. Der VON NEUMANN Computer

Technische Informatik. Der VON NEUMANN Computer Technische Informatik Der VON NEUMANN Computer Inhalt! Prinzipieller Aufbau! Schaltkreise! Schaltnetze und Schaltwerke! Rechenwerk! Arbeitsspeicher! Steuerwerk - Programmausführung! Periphere Geräte! Abstraktionsstufen

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

Grundlagen der Parallelisierung

Grundlagen der Parallelisierung Grundlagen der Parallelisierung Philipp Kegel, Sergei Gorlatch AG Parallele und Verteilte Systeme Institut für Informatik Westfälische Wilhelms-Universität Münster 3. Juli 2009 Inhaltsverzeichnis 1 Einführung

Mehr

Vorlesung 14 Speichersysteme (2)

Vorlesung 14 Speichersysteme (2) D - CA - XIV - MH - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK Vorlesung 14 Speichersysteme (2) Sommersemester 2003 Leitung: Prof. Dr. Miroslaw Malek D - CA - XIV - MH - 2 SPEICHERSYSTEME

Mehr

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

Aufbau und Funktionsweise eines Computers

Aufbau und Funktionsweise eines Computers Aufbau und Funktionsweise eines Computers Thomas Röfer Hardware und Software von Neumann Architektur Schichtenmodell der Software Zahlsysteme Repräsentation von Daten im Computer Hardware Prozessor (CPU)

Mehr

Grundlagen der Rechnerarchitektur

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

Mehr

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

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

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

Mehr

Brückenkurs / Computer

Brückenkurs / Computer Brückenkurs / Computer Sebastian Stabinger IIS 23 September 2013 Sebastian Stabinger (IIS) Brückenkurs / Computer 23 September 2013 1 / 20 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte

Mehr

1. Übung - Einführung/Rechnerarchitektur

1. Übung - Einführung/Rechnerarchitektur 1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser

Mehr

Mehrprozessorarchitekturen (SMP, Cluster, UMA/NUMA)

Mehrprozessorarchitekturen (SMP, Cluster, UMA/NUMA) Proseminar KVBK Mehrprozessorarchitekturen (SMP, Cluster, UMA/NUMA) Arian Bär 12.07.2004 1. Einleitung 2. Symmetrische Multiprozessoren (SMP) 2.1. Allgemeines 2.2. Architektur 3. Speicherarchitekturen

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

Convey, Hybrid-Core Computing

Convey, Hybrid-Core Computing Convey, Hybrid-Core Computing Vortrag im Rahmen des Seminars Ausgewählte Themen in Hardwareentwurf und Optik HWS 09 Universität Mannheim Markus Müller 1 Inhalt Hybrid-Core Computing? Convey HC-1 Überblick

Mehr

PCI VME Interface SIS1100/SIS3100

PCI VME Interface SIS1100/SIS3100 PCI VME Interface SIS1100/SIS3100 Peter Wüstner Forschungszentrum Jülich, Zentrallobor für Elektronik (ZEL) Designprinzip der im ZEL entwickelten Datenaufnahmesysteme ist es, preiswerte PC Technik mit

Mehr

Prozesse und Scheduling

Prozesse und Scheduling Betriebssysteme für Wirtschaftsinformatiker SS04 KLAUSUR Vorbereitung mit Lösungen / Blatt 1 Prozesse und Scheduling Aufgabe 1 : Scheduling Gegeben seien die folgenden Prozesse und die Längen des jeweiligen

Mehr

IT-Infrastruktur, WS 2014/15, Hans-Georg Eßer

IT-Infrastruktur, WS 2014/15, Hans-Georg Eßer ITIS-D'' IT-Infrastruktur WS 2014/15 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz D'': Rechnerstrukturen, Teil 3 v1.0, 2014/11/27 Folie D''-1 Dieser Foliensatz Vorlesungsübersicht Seminar Wiss.

Mehr

Technische Informatik 2 Speichersysteme, Teil 2

Technische Informatik 2 Speichersysteme, Teil 2 Technische Informatik 2 Speichersysteme, Teil 2 Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher Virtueller Seitenspeicher Seitenregister

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Das Von-Neumann-Prinzip Prinzipien der Datenverarbeitung Fast alle modernen Computer funktionieren nach dem Von- Neumann-Prinzip. Der Erfinder dieses Konzeptes John von Neumann (1903-1957) war ein in den

Mehr

B1 Stapelspeicher (stack)

B1 Stapelspeicher (stack) B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen

Mehr

Enterprise Computing

Enterprise Computing Enterprise Computing Prof. Dr.-Ing. Wilhelm G. Spruth Teil 6 Partitionierung NUMA Sharing Disk Storage HP Superdome Cell Board 4 Itanium 2 CPU Chips 32 128 Gbyte I/O Bus mit Kühlern Hauptspeicher Anschlüsse

Mehr

Informatik Computer-Hardware

Informatik Computer-Hardware Informatik Computer-Hardware Seite 1 Aufbau von Computersystemen Zentraleinheit und Peripherie Zentraleinheit Zur Zentraleinheit zählen der Prozessor, der Arbeitsspeicher (RAM), die verschiedenen Bus-

Mehr

Codesigned Virtual Machines

Codesigned Virtual Machines Codesigned Virtual Machines Seminar Virtualisierung Philipp Kirchhofer philipp.kirchhofer@student.kit.edu Institut für Technische Informatik Lehrstuhl für Rechnerarchitektur Universität Karlsruhe (TH)

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

Daten- Bus. Steuerbus

Daten- Bus. Steuerbus 1 Grundlagen... 1 1.1 Rechnerarchitektur... 1 1.2 Takt... 2 1.3 Speicherarchitektur... 2 2 Mikroprozessor... 4 2.1 Begriffsbestimmung... 4 2.2 Geschichte... 4 2.3 Aufbau eines einfachen Mikroprozessors...

Mehr

Projekt für Systemprogrammierung WS 06/07

Projekt für Systemprogrammierung WS 06/07 Dienstag 30.01.2007 Projekt für Systemprogrammierung WS 06/07 Von: Hassan Bellamin E-Mail: h_bellamin@web.de Gliederung: 1. Geschichte und Definition 2. Was ist Virtualisierung? 3. Welche Virtualisierungssoftware

Mehr

Technische Grundlagen der Informatik

Technische Grundlagen der Informatik hier: Allgemeine Aufgaben von Computern bei der Datenverarbeitung Grundlegender Aufbau von Computern: Architekturen, Funktion und Kopplung der Komponenten Vom Algorithmus zum Programm Zusammenspiel von

Mehr

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note: Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel

Mehr

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

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

Mehr

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

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

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe

Mehr

Grundlagen der Informatik 1

Grundlagen der Informatik 1 Grundlagen der Informatik 1 Prof. Dr. J. Schmidt Fakultät für Informatik GDI1 WS 2013/14 Einführung in die Informatik Hardware Überblick Vorlesung Kapitel 2: Nachricht, Information und Daten Kapitel 3:

Mehr

Betriebssysteme Kap A: Grundlagen

Betriebssysteme Kap A: Grundlagen Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten

Mehr

1 Proseminar: Konzepte von Betriebssystem-Komponenten. Thema: Server OS AS/400 Referend: Sand Rainer. Server OS - AS/400

1 Proseminar: Konzepte von Betriebssystem-Komponenten. Thema: Server OS AS/400 Referend: Sand Rainer. Server OS - AS/400 1 Proseminar: Konzepte von Betriebssystem-Komponenten Server OS - AS/400 Gliederung Was ist eine AS/400? Wie ist OS/400 aufgebaut? Was kann eine AS/400? Bsp.: Logische Partitionierung 2 Proseminar: Konzepte

Mehr

Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation

Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation 09.05.15 1 Literatur [6-1] http://php.net/manual/de/book.sockets.php [6-2] http://de.wikipedia.org/wiki/socket_(software) [6-3] http://php.net/manual/de/book.network.php

Mehr

Rechnernutzung in der Physik. Betriebssysteme

Rechnernutzung in der Physik. Betriebssysteme Rechnernutzung in der Physik Betriebssysteme 1 Betriebssysteme Anwendungsprogramme Betriebssystem Treiber BIOS Direkter Zugriff von Anwenderprogrammen auf Hardware nur in Ausnahmefällen sinnvoll / möglich:

Mehr

IO Performance in virtualisierten Umgebungen

IO Performance in virtualisierten Umgebungen IO Performance in virtualisierten Umgebungen Bruno Harsch El. Ing. HTL/FH Managing Partner Tel +41 52 366 39 01 bruno.harsch@idh.ch www.idh.ch IDH GmbH Lauchefeld 31 CH-9548 Matzingen 2 Die Firma IDH wurde

Mehr

RAID. Name: Artur Neumann

RAID. Name: Artur Neumann Name: Inhaltsverzeichnis 1 Was ist RAID 3 1.1 RAID-Level... 3 2 Wozu RAID 3 3 Wie werden RAID Gruppen verwaltet 3 3.1 Software RAID... 3 3.2 Hardware RAID... 4 4 Die Verschiedenen RAID-Level 4 4.1 RAID

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

Staatlich geprüfter EDV-Führerschein

Staatlich geprüfter EDV-Führerschein Staatlich geprüfter 1. Seit wie viel Jahren gibt es den Personal Computer? seit ~ 50 Jahren seit ~ 30 Jahren seit ~ 20 Jahren seit ~ 5 Jahren Computer gibt es schon immer. 2. Ein Computer wird auch als

Mehr

Lokales Storage Teil 1

Lokales Storage Teil 1 Lokales Storage Teil 1 Zinching Dang 08. Juli 2015 1 Lokales Storage im Allgemeinen Lokales Storage im Allgemeinen Datenträger, die direkt am Host angeschlossen sind Anbindung über verschiedene Bus-Systeme

Mehr

Hardware-Architekturen

Hardware-Architekturen Kapitel 3 Hardware-Architekturen Hardware-Architekturen Architekturkategorien Mehrprozessorsysteme Begriffsbildungen g Verbindungsnetze Cluster, Constellation, Grid Abgrenzungen Beispiele 1 Fragestellungen

Mehr

Computer: PC. Informationstechnik für Luft-und Raumfahrt Aerospace Information Technology

Computer: PC. Informationstechnik für Luft-und Raumfahrt Aerospace Information Technology Computer: PC Informationstechnik für Luft-und Raumfahrt Ab Morgen nur eingebete Systeme Aber es gibt auch PCs Na gut... dann Heute. dann haben wir es hinter uns Und nicht wenige! PCs in N Jahren Industrie

Mehr

9.0 Komplexe Schaltwerke

9.0 Komplexe Schaltwerke 9.0 Komplexe Schaltwerke Die Ziele dieses Kapitels sind: Lernen komplexe Schaltwerke mittels kleinerer, kooperierender Schaltwerke zu realisieren Verstehen wie aufgabenspezifische Mikroprozessoren funktionieren

Mehr

Alle Speicherplatinen können als Programm- bzw. Arbeitsspeicher

Alle Speicherplatinen können als Programm- bzw. Arbeitsspeicher -1-1. Überblick Das System.009 umfaßt programmierbare binäre Steuereinrichtungen für den industriellen Einsatz. Charakteristisch ist, daß die BOOLEschen Gleichungen, die den konkreten Steueralgorithmus

Mehr

Symmetrischer Multiprozessor (SMP)

Symmetrischer Multiprozessor (SMP) Symmetrischer Multiprozessor (SMP) Motivation: ein globaler Adressraum für mehrere Prozesse P i Prozesse P i haben gemeinsame Daten ( shared variables ) private Daten ( private variables ) gemeinsamen

Mehr

IO Performance - Planung Messung, Optimierung. Ulrich Gräf Principal Sales Consultant Oracle Deutschland B.V. und Co. KG

IO Performance - Planung Messung, Optimierung. Ulrich Gräf Principal Sales Consultant Oracle Deutschland B.V. und Co. KG IO Performance - Planung Messung, Optimierung Ulrich Gräf Principal Sales Consultant Oracle Deutschland B.V. und Co. KG The following is intended to outline our general product direction. It is intended

Mehr

Benchmarking Intel Pentium III-S vs. Intel Pentium 4

Benchmarking Intel Pentium III-S vs. Intel Pentium 4 Benchmarking Intel Pentium III-S vs. Intel Pentium 4 André Ceselski Raphael Rosendahl 30.01.2007 Gliederung Motivation Vorstellung der Architekturen Intel P6 Architektur Intel NetBurst TM Architektur Architektur-Unterschiede

Mehr

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken.

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

Mehr

2. Rechnerarchitektur 2.1 einfache Computer

2. Rechnerarchitektur 2.1 einfache Computer Fakultät Informatik Institut Systemarchitektur Professur Rechnernetze WS 2012 LV Informatik-I für Verkehrsingenieure 2. Rechnerarchitektur 2.1 einfache Computer Dr. rer.nat. D. Gütter Mail: WWW: Dietbert.Guetter@tu-dresden.de

Mehr

Betriebssysteme Kap B: Hardwaremechanismen

Betriebssysteme Kap B: Hardwaremechanismen 1 Betriebssysteme Kap B: Hardwaremechanismen 2 Beispielprozessor Ein- / Ausgabe p[ ] ir Leitwerk pc Register a f sp Rechenwerk Speicher m[ ] Spezielle Register Flagregister f f.i: Interrupt-Enable-Flag

Mehr

Dynamische Skalierbarkeit

Dynamische Skalierbarkeit Alexander Eichhorn Verteilte Systeme und Betriebssysteme Technische Universität Ilmenau Frühjahrstreffen der GI Fachgruppe Betriebssysteme 30. Juni 2005 Koblenz Vortragsüberblick Teil 1 Teil 2 Teil 3 Begriffsbestimmungen

Mehr

Lösungsvorschlag zur 4. Übung

Lösungsvorschlag zur 4. Übung Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 4. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche Aussagen zu Bewertungskriterien

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

Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte

Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte Matthias Lange Informatikstudent, TU-Dresden 27. September 2005 http://www.matze-lange.de Warum entwickelt jemand einen Treiber für

Mehr

Leistungsanalyse von Rechnersystemen

Leistungsanalyse von Rechnersystemen Zentrum für Informationsdienste und Hochleistungsrechnen (ZIH) Leistungsanalyse von Rechnersystemen Auf Ein-/Ausgabe spezialisierte Benchmarks Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching 1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere

Mehr

3.Vorlesung Systemsoftware (SYS) Hochschule Mannheim

3.Vorlesung Systemsoftware (SYS) Hochschule Mannheim Christian Baun 3.Vorlesung Systemsoftware Hochschule Mannheim WS0809 1/42 3.Vorlesung Systemsoftware (SYS) Hochschule Mannheim Christian Baun Forschungszentrum Karlsruhe Institut für Wissenschaftliches

Mehr

Implementierung von Dateisystemen

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

Mehr

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

User Level Device Driver am Beispiel von TCP

User Level Device Driver am Beispiel von TCP September 17, 2004 Einleitung Motivation für Userlevel Device Driver Probleme von Userlevel Device Driver Motivation für Userlevel Device Driver Modularität, leichterer Austausch/Erneuerung von Komponenten.

Mehr

13. Übung mit Musterlösung

13. Übung mit Musterlösung 13. Übung mit Musterlösung 1 Lösung 1 Teil 1.Multiple Choice) Bewertung: Ein Punkt für richtige Antwort, für jede falsche Antwort ein Punktabzug. a) Für die Exponentialverteilung ist die Zeit bis zum nächsten

Mehr

Rechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011

Rechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011 Technische Universität Graz Institut tfür Angewandte Informationsverarbeitung und Kommunikationstechnologie Rechnerorganisation 2 TOY Karl C. Posch Karl.Posch@iaik.tugraz.at co1.ro_2003. 1 Ausblick. Erste

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Single-Ended -Datenübertragung (Asymmetrische Übertragung)

Single-Ended -Datenübertragung (Asymmetrische Übertragung) Datenübertragung 1 Asymmetrische Datenübertragung ( Single ended ) und symmetrische (differenzielle) Datenübertragung Parallele und serielle Übertragung Anhang Topologien Datenübertragungssysteme: Beispiele

Mehr

Systemanforderungen ab Version 5.31

Systemanforderungen ab Version 5.31 Systemanforderungen ab Version 5.31 Auszug aus BüroWARE Erste Schritte Version 5.4 Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive Das Programm kann sowohl auf 32 Bit- als auch auf 64 Bit-en

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

Technische Informatik II

Technische Informatik II Institut für Technische Informatik und Kommunikationsnetze Technische Informatik II Übung 3: Input / Output Hinweis: Weitere Aufgaben zu diesem Thema finden sie in den Begleitbüchern zur Vorlesung. Aufgabe

Mehr

Embedded OS für ARM Cortex Microcontroller

Embedded OS für ARM Cortex Microcontroller Embedded OS für ARM Cortex Microcontroller RTOS Design, Timinganalyse und Test mit Core Simulation und Hardware Debugger Entscheidende Fragen für oder gegen RTOS Lohnt sich der Einsatz eines RTOS auch

Mehr

High-End-Serverlösung. MAXDATA PLATINUM Server 7210R

High-End-Serverlösung. MAXDATA PLATINUM Server 7210R High-End-Serverlösung MAXDATA PLATINUM Server 7210R MAXDATA PLATINUM Server 7210R: High-End-Serverlösung für unternehmenskritische Daten Die Standardausstattung Der MAXDATA PLATINUM 7210R kombiniert Hochleistung

Mehr

Mikrocontroller Grundlagen. Markus Koch April 2011

Mikrocontroller Grundlagen. Markus Koch April 2011 Mikrocontroller Grundlagen Markus Koch April 2011 Übersicht Was ist ein Mikrocontroller Aufbau (CPU/RAM/ROM/Takt/Peripherie) Unterschied zum Mikroprozessor Unterschiede der Controllerarten Unterschiede

Mehr

Inhaltsverzeichnis. BüroWARE Systemanforderungen ab Version 5.31. Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2

Inhaltsverzeichnis. BüroWARE Systemanforderungen ab Version 5.31. Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2 Inhaltsverzeichnis Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2 1. Terminal-Server-Betrieb (SQL)... 3 1.1. Server 3 1.1.1. Terminalserver... 3 1.1.2. Datenbankserver (bei einer Datenbankgröße

Mehr

OpenGL. (Open Graphic Library)

OpenGL. (Open Graphic Library) OpenGL (Open Graphic Library) Agenda Was ist OpenGL eigentlich? Geschichte Vor- und Nachteile Arbeitsweise glscene OpenGL per Hand Debugging Trend Was ist OpenGL eigentlich? OpenGL ist eine Spezifikation

Mehr

Java-Prozessoren. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz. Datentypen. Operanden-Stack. Konstanten-Pool.

Java-Prozessoren. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz. Datentypen. Operanden-Stack. Konstanten-Pool. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz Datentypen Operanden-Stack Konstanten-Pool Methoden-Area Heap für Laufzeit-Daten Class File Format 26 Die Java Virtual Machine Java Instruktions-Satz

Mehr

TCP/UDP. Transport Layer

TCP/UDP. Transport Layer TCP/UDP Transport Layer Lernziele 1. Wozu dient die Transportschicht? 2. Was passiert in der Transportschicht? 3. Was sind die wichtigsten Protkolle der Transportschicht? 4. Wofür wird TCP eingesetzt?

Mehr

Die Komponenten in Ihrem Computer 14.05.2008

Die Komponenten in Ihrem Computer 14.05.2008 Fast überall stehen Sie, die Computer. Sobald man über Computer spricht, fallen sehr viele Fachbegriffe, wie RAM, Dual-Core, MHz, GHz, SATA, ATA, um nur einige zu nennen. Viele können aber mit diesen Begriffe

Mehr

DC-1394 PCIe. IEEE 1394 FireWire TM PCIe Card. Windows 2000 / 2003 / 2008 Windows XP / Vista / 7

DC-1394 PCIe. IEEE 1394 FireWire TM PCIe Card. Windows 2000 / 2003 / 2008 Windows XP / Vista / 7 DC-1394 PCIe IEEE 1394 FireWire TM PCIe Card Wichtige Information zur Datensicherheit Vor der Installation und bei Änderungen der Konfiguration des DC-1394 PCIe sollte unbedingt eine Datensicherung durchgeführt

Mehr

Interface Definitionen zu E-LAB ICP-V24 Portable

Interface Definitionen zu E-LAB ICP-V24 Portable Serielles Interface PC ICP-V24 18.03.2003 Seite 1/5 Interface Definitionen zu E-LAB ICP-V24 Portable Das Interface zwischen PC und ICP-V24 besteht aus dem Hardware Teil und dem Software Teil. Hardware

Mehr

Die Linux Kernel Virtual Machine - Wo steht der Linux Hypervisor? 2. März 2008

Die Linux Kernel Virtual Machine - Wo steht der Linux Hypervisor? 2. März 2008 Die Linux Kernel Virtual Machine - Wo steht der Linux Hypervisor? 2. März 2008 Jörg Rödel Virtualization - Whats out there? Virtualisierung hat bereits längere Geschichte auf x86 Startete mit VMware Setzte

Mehr

Advanced DAQ System Development Using NI-DAQmx and Intelligent DAQ (FPGA)

Advanced DAQ System Development Using NI-DAQmx and Intelligent DAQ (FPGA) Advanced DAQ System Development Using NI-DAQmx and Intelligent DAQ (FPGA) Rudolf Gierlinger National Instruments, Österreich AGENDA Teil 1: Advanced NI-DAQmx Datenerfassungsmöglichkeiten Konfiguration

Mehr

5. PC-Architekturen und Bussysteme

5. PC-Architekturen und Bussysteme Abb. 5.1: Aufbau des klassischen PC-AT Abb. 5.2: Busslot im PC-AT Port-Adresse Verwendung 000h-00fh 1. DMA-Chip 8237A 020h-021h 1. PIC 8259A 040h-043h PIT 8253 060h-063h Tastaturcontroller 8042 070h-071h

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 15.11.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Review / Organisatorisches o Probleme bei Foliendownload?

Mehr

Enterprise Computing

Enterprise Computing Enterprise Computing Prof. Dr.-Ing. Wilhelm G. Spruth WS 2011/12 Teil 2 Verarbeitungsablauf Systemarchitektur Multiprogrammierung Virtueller Speicher Überwacher (Supervisor) Cache CPU s Hauptspeicher I/O

Mehr

Betriebssystembau (BSB)

Betriebssystembau (BSB) Betriebssystembau (BSB) 6. Übung http://ess.cs.tu-.de/de/teaching/ws2013/bsb/ Olaf Spinczyk olaf.spinczyk@tu-.de http://ess.cs.tu-.de/~os AG Eingebettete System Informatik 12, TU Dortmund Agenda Vorstellung

Mehr

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

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

Mehr