Ja, kommen wir nun zu der Zusammenfassung. Ein Resümee, ein kurzes. Also wir haben Prozessadressräume
kennen gelernt. Wir haben die Differenz zwischen realen, logischen und wirklen, virtuellen
Adressraum. Der reale ist ein lückenhafter Adressraum. Hier ist der wirkliche Hauptspeicher
enthalten. Der logische Adressraum ist lückenlos und hier ist auch nur der wirkliche Hauptspeicher
enthalten. Und der virtuelle Adressraum ist ebenfalls lückenlos, aber das ist ein scheinbarer
Hauptspeicher. Der wird virtualisiert. Er kann virtualisiert werden über einen virtuellen
Adressraum. Der Arbeitsspeicher liegt im Vordergrund, wenn wir also die Varianten A und B betrachten,
real und logisch, beziehungsweise eben im Hintergrund. Also etwa eine Festplatte oder eine SSD,
möglichst natürlich einen schnellen Hintergrundspeicher. Aber das ist ein anderer Speicher als der
Hauptspeicher. Dann haben wir gesehen, dass die logischen virtuellen Adressräume Seiten
oder segmentorientiert ausgelegt sind. Man sagt auch, dass praktisch diese Adressen,
die wir halt haben, eben ein- oder zweidimensional aufgezählt werden, wenn man so will. Ja,
so eindimensional heißt hier, dass so eine Adresse einen Tupel bildet, nämlich eine
Seitennummer und ein Versatz innerhalb einer Seite. Und bei einer zweidimensionalen Adresse,
da haben wir zwei verschiedene Varianten kennengelernt, nämlich in beiden Fällen sind es Paare, wo
man einmal sagt, ein Paar, Segmentnummer und dann die Adresse innerhalb des Segments oder
eine Segmentnummer und dann ein Tupel einer logischen Adresse innerhalb des Segments.
Und dieses Tupel, was wir dann halt haben, wäre dann eine Seitennummer der Versatz, ist
sozusagen das Page Segmentation, was wir hier bei dieser zweidimensionalen Variante da dann
nochmal halt haben. Also die seitennumerierte Segmentierung, die da dann halt genutzt wird.
Heute, bei der Hardware von heute sehen wir eigentlich nur noch das hier. Also die Prozessuren,
die heute rauskommen. Intel selbst hat noch bis vor kurzem sozusagen, denn diese Variante
hier seitennumerierte Segmentierung unterstützt, aber heute sieht man eigentlich nur noch,
zumindest wenn man mal die Intel Prozessoren vorne ansteht, denn die haben diese eidimensionale
sichereien Seiten orientiert und hat im Wesentlichen noch damit zu tun, dass diese Abbildungsvorgänger
schon sehr effizient durchgeführt werden können. Wir haben dann noch die Mehradressraumsysteme
kurz betrachtet, nämlich auf Basis dieser Adressräume, logischer virtuellen Adressräume,
da sind wir der Frage nachgegangen, ja ok, wie kann man jetzt praktisch Adressräume isolieren
und den jeweiligen Maschinenprogrammen dann zuordnen und da haben wir einmal die sozusagen
total oder partiell privaten Adressraummodelle kennengelernt, wo man dann hier auch heute
sagen muss, dass eher so die prazielle Variante im Vordergrund steht, eben abermals eher aus
Performancegründen als aus Sicherheitsgründen. Aber es bedeutet immer, dass wenn wir diese
Mehradressraumsysteme haben, dass wir denn spezielle Mechanismen brauchen, um den Informationsaustausch
zwischen Betriebssystem und Benutzeradressraum letztendlich hin zu bekommen. Das kann fensterbasiert
sein, das kann dann nur eine spezielle Einblendung von Adressraumabschnitten in den jeweiligen
Adressraum sein. Wir könnten Spezialbefehle der CPU haben, wo man das mitbekommt oder
wir können eben Adressräume teilen und unterschiedlichen Domänen, wenn man so will, dann halt zuordnen,
um dann letztendlich einen direkten Zugriff auf praktisch bestimmte Adressräume, insbesondere
Benutzeradressraum, ermöglichen zu können. Nun, ohne TLB, ohne Übersetzungsprophagie
geht hier überhaupt nichts. Ein ganz wichtiger Punkt, das ist nun Gott sei Dank auch Standard
der heutigen MMU-Hardware, dass da überall so ein TLB drin ist, sodass man dann sagen
kann, im Regelfall, im Normalfall, wenn die Adress-, wenn der Referenzstring, die Adressfolge,
die Referenzfolge, die wir halt haben, eine gewisse Lokalität eben aufweist, dann ist
die Wahrscheinlichkeit von Zugriffsfehlern im TLB eher gering, treppen solche Fehler
nicht so häufig auf und dann wird man auch sagen können, dass dann halt die Programmausführung
eben trotz dieser sehr komplexen Abbildungsvorgänge schnell vorangeht und man dann halt einen
Leistungsengpass nur dann bekommt, wenn man von Ausnahmesituationen spricht, nämlich
genau denn dann, wenn in dem TLB die entsprechende Abbildung nicht gespeichert ist.
Presenters
Zugänglich über
Offener Zugang
Dauer
00:05:05 Min
Aufnahmedatum
2020-12-21
Hochgeladen am
2020-12-21 23:28:30
Sprache
de-DE