www.wikidata.de-de.nina.az
Die Artikel IOMMU Memory Management Unit und Memory Mapping uberschneiden sich thematisch Informationen die du hier suchst konnen sich also auch in den anderen Artikeln befinden Gerne kannst du dich an der betreffenden Redundanzdiskussion beteiligen oder direkt dabei helfen die Artikel zusammenzufuhren oder besser voneinander abzugrenzen Anleitung Der Begriff Memory Management Unit MMU deutsch Speicherverwaltungseinheit benennt eine Hardwarekomponente eines Computers die den Zugriff auf den Arbeitsspeicher verwaltet Inhaltsverzeichnis 1 Aufgaben 2 Einsatz und Verwendung 3 Funktionsprinzip 4 Siehe auch 5 Literatur 6 EinzelnachweiseAufgaben BearbeitenSie rechnet virtuelle Adressen jedes einzelnen Prozesses in physische Adressen des externen Speichers um 1 59 Damit ermoglicht sie die Trennung zwischen Prozessspeicher und Hauptspeicher was folgende Konzepte erlaubt Auslagern von z Z nicht benotigtem Speicher Verzogertes Bereitstellen von angefordertem aber noch nicht genutztem Speicher Isolation von Prozessen untereinander und zwischen Prozess und Betriebssystem Sharing von einzelnen Seiten zwischen Prozessen Shared Memory Non Sharing von Seiten zwischen Threads eines Prozesses Thread local storage Einblenden von Dateien als Speicher Memory mapped files Die MMU regelt auch Speicherschutzaufgaben So konnen einzelne Speicherbereiche fur die Ausfuhrung von Code oder zum weiteren Beschreiben gesperrt werden Man unterscheidet hierbei zwischen der Abschottung von Programmen untereinander horizontale Trennung Programme konnen zum Beispiel bei Fehlern nicht auf Speicher anderer Programme zugreifen Programmen gegen das Betriebssystem vertikale Hierarchie Das Funktionieren des Betriebssystems darf nicht durch fehlerhafte Anwendungsprogramme gefahrdet werden Dadurch ist der sichere Betrieb im Multitasking wesentlich einfacher da die Hardware verhindert dass ein Fehler in einem Prozess zu einem direkten Zugriff auf Daten eines anderen Prozesses oder des Betriebssystems fuhrt Ausserdem kann durch die MMU jedem Prozess ein initial unfragmentierter exklusiver Speicherraum prasentiert werden Einsatz und Verwendung BearbeitenBlock Diagramm Skylake CPULink zum Bild Bitte Urheberrechte beachten MMUs waren ursprunglich als externe und optionale Zusatzkomponente fur Mikroprozessoren konzipiert Typische Beispiele sind die 16 Bit CPU Motorola MC68010 die MMU war in einem externen Baustein MC68451 untergebracht Andere Hersteller wie Zilog und Intel integrierten die MMU direkt in den Prozessor Z8001 Intel 80286 Mit dem Aufkommen von Caches in CPUs ist die MMU in die CPU verlagert worden Dies ist zwingend notwendig da sich die MMU zwischen CPU Kern und dem den Caches befinden muss Sie arbeitet mit physischen Adressen um nicht bei jedem Thread oder Taskwechsel geflusht werden zu mussen Multicore Systeme mit geteiltem Cache erfordern zwingend die MMU vor diesem geteilten Cache MMU Instruction L1I Cache CPU Kern L2 Cache L3 Cache Hauptspeicher MMU Data L1D Cache MMU Instruction L1I Cache CPU Kern 1 L2 Cache MMU Data L1D Cache shared L3 Cache Hauptspeicher MMU Instruction L1I Cache CPU Kern 2 L2 Cache MMU Data L1D Cache Bei Rechnern mit Harvard Architektur gibt es zwei MMUs pro Kern eine fur den Befehls und eine fur den Datenspeicher jedes Kerns Waren fruher MMUs Luxusartikel so sind sie heutzutage teilweise selbst in CPUs im Preisbereich um 1 US Standard BCM2835 Funktionsprinzip Bearbeiten nbsp Schematischer Ablauf der Umrechnung einer virtuellen in eine physische Adresse 1 223Jeder durch einen Befehl angeforderte Lese oder Schreibzugriff wird zuerst auf seine Gultigkeit gepruft und bei Validitat durch die Memory Management Unit in eine physische Adresse umgerechnet Selbstnachladende MMUs haben einen speziellen Cache Speicher den Translation Lookaside Buffer der jeweils die letzten Adressubersetzungen cacht und so haufige Zugriffe auf die Ubersetzungstabelle reduziert Daruber hinaus enthalt die MMU spezielle schnelle Register wie etwa fur Basisadressen und Offsets um die Adressberechnung so effizient wie moglich auszufuhren Man unterscheidet die moglichen Arten der Adressubersetzung englisch address translation nach der Art der verwendeten Seitentabellen Ursprunglich gab es zwei Methoden der Adressumsetzung diejenige nach Segmenten segmented MMU und diejenige nach Seiten paged MMU Bei der Adressumsetzung nach Segmenten werden jeweils logische Speicherbereiche variabler Grosse auf einen physischen Speicherbereich gleicher Grosse umgesetzt Da dieses Verfahren jedoch nicht gut mit der Speicherverwaltung moderner Betriebssysteme mit virtueller Speicherverwaltung zusammenpasst ist es kaum noch in Verwendung Die Adressumsetzung nach Seiten verwendet normalerweise feste Blockgrossen und ist heute die ubliche Methode Den Mechanismus der Ubersetzung von logischen Adressen in physische Adressen bezeichnet man daher im Fall der festen Blockgrossen auch als Paging Bei Prozessen mit sehr grossem Adressraum wurde bei fester Blockgrosse eine sehr grosse Anzahl von Tabelleneintragen in der MMU notig Daher konnen einige Betriebssysteme bei Vorhandensein einer entsprechenden MMU Teile des Adressraums durch Seiteneintrage zusammenfassen die wesentlich grossere Blockgrossen verwenden Einer logischen Adresse muss nicht jederzeit eine physische zugeordnet sein Wird eine solche Adresse angesprochen erfolgt ein sogenannter Seitenfehler englisch page fault page miss woraufhin das Betriebssystem die Daten von einem externen Speichermedium laden kann dieser Vorgang lauft fur eine Applikation transparent ab Man spricht hier von Speichervirtualisierung Siehe auch BearbeitenRing CPU Literatur BearbeitenAndrew S Tanenbaum Moderne Betriebssysteme 4 uberarbeitete Auflage Hallbergmoos Pearson Studium 2016 ISBN 978 3 86894 270 5 Eduard Glatz Betriebssysteme Grundlagen Konzepte Systemprogrammierung 2 aktualisierte und uberarbeitete Auflage dpunkt Verlag 2010 ISBN 978 3 89864 678 9 Erich Ehses et al Betriebssysteme Ein Lehrbuch mit Ubungen zur Systemprogrammierung in UNIX Linux Munchen Pearson Studium 2005 ISBN 3 8273 7156 2 S 273 ff Einzelnachweise Bearbeiten a b Andrew S Tanenbaum Moderne Betriebssysteme 4 uberarbeitete Auflage Hallbergmoos Pearson Studium 2016 Abgerufen von https de wikipedia org w index php title Memory Management Unit amp oldid 233703450