caches, paging vs
So, ich bin in einer computer-Architektur ist Klasse, und ich denke, ich habe eine harte Zeit, die Unterscheidung zwischen caching und Seiten.
Die einzige Erklärung, die ich mit oben kommen kann ist, dass die Seiten der OS ist Weg bei der Täuschung ein Programm, dass es alles daran, die Arbeit in einem bestimmten Bereich der Speicher, vs ein cache-Speicher ist die hardware Weg bei der Täuschung von der OS, dass es beim Lesen von einem spezifizierten Bereich des Speichers, wenn es wirklich nicht.
Macht das os direkt an der hardware, es braucht eine "neue Seite" oder ist, dass die Betreuung durch den os zu Lesen versucht, die Adresse "out of range" der aktuelle cache "Seite" (aus Mangel eines besseren Begriffs).
Bin ich auf dem richtigen Weg oder bin ich komplett verrückt?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Caching und die Seiten sind orthogonale Konzepte.
Ein cache ist ein high-speed - "Speicher" ist, dass die Handlungen zu minimieren die Anzahl der Zugriffe auf eine große low-speed "Speicher". In den meisten Allgemeinen Sinn, die high-speed - "Speicher" könnte deine Festplatte handeln, um cache web-Seiten aus dem Internet geladen (low-speed "memory"). Natürlich, im Kontext von computer-Architektur, den Begriff "cache" ist wahrscheinlicher, siehe physikalische RAM verwendet, um die Zugriffe zu beschleunigen langsamer RAM oder auf die Festplatte.
Seiten, OTOH, sind einfach eine Einheit von management-für den Inhalt des RAM oder der Festplatte.
Diese zwei Konzepte zusammen, die in Umsetzung der virtual-memory-Systemen. Ein Prozess belegen können, werden 500 MB Speicher. Dies kann sein, dass mehr physikalischen RAM zur Verfügung, um den Prozess, so ordnet das Betriebssystem die Blöcke auf der Festplatte, die Seiten genannt werden, die die Inhalte von logischen Seiten in der Prozess-Adressraum.
Wenn der Prozess greift auf eine Position in der address-space und die zugehörige Seite nicht kartiert ist, in den physischen Speicher, die CPU-Signale einen Seitenfehler und das Betriebssystem reagiert darauf, indem das abrufen der Seite von der Festplatte, während der Prozess in einem angehaltenen Zustand. Sobald die Seite zugeordnet ist, wird der Prozess fortgesetzt und ist in der Lage, Zugriff auf die Speicheradresse als wenn es die ganze Zeit da war.
Die verbreitete Ansicht, dass der virtuelle Speicher ist eine Art von Täuschung dem Prozess zu denken, es hat Tonnen von RAM ist nicht der einzige Weg, um darüber nachzudenken. Man könnte auch denken, ein Prozess-Adressraum als logisch auf der Festplatte gespeicherte Seiten, die mit dem OS-assisted mapping in den RAM wird nur ein Weg, um cache-der Inhalt dieser Seiten, so dass der Prozess nicht ständig Zugriff auf die Festplatte. In diesem Sinne, caching und ausgelagerten virtuellen Speicher sind logisch, die gleiche Sache. Nur im Kopf behalten, dass, während diese Sicht kann helfen zu verstehen, die Beziehung zwischen den beiden Konzepten, ist es nicht ganz korrekt, da es möglich ist, zu laufen ohne virtuellen Speicher, nur der physische Speicher (in der Tat, die meisten embedded-Systeme laufen auf diese Weise).