2009-04-19 5 views
1

FreeBSD implementiert Seitenfärbung mit Paging-Warteschlangen. Die Warteschlangen sind entsprechend der Größe der Prozessor L1 und L2 Caches angeordnet; und wenn eine neue Seite zugewiesen werden muss, versucht FreeBSD zu erhalten, die optimal für den Cache ausgerichtet ist.Erklären CPU Cache-Paging in FreeBSD, insbesondere Paging-Warteschlangen

Kann jemand bitte die obigen Zeilen erklären, was ist das Konzept der Paging-Warteschlangen?

Danke!

Antwort

3

Betriebssysteme müssen die Größe der CPU-Caches verwalten, um cache misses zu reduzieren (erklärt auch Seiteneinfärbung). Einfacher gesagt, müssen die Daten, die in den Caches (in Seiten genannten Einheiten) gespeichert sind, sorgfältig ausgewählt werden, je nachdem, wie oft es verwendet wird, ob es wahrscheinlich bald wieder verwendet wird und wie "teuer" es sein würde, es erneut zu laden Daten aus dem Hauptspeicher/HD/SomeOtherDevice. Diese Auswahlmöglichkeiten sind wichtig in Anwendungen, bei denen die Speicherbandbreite ein Engpass ist.

Diese Art von Vorgang wird oft mit einer Prioritätswarteschlange durchgeführt, die die von den OS-Entwicklern gewählte Paging-Ersetzungsstrategie implementiert. Diese Warteschlangen bestimmen, welche Seiten ersetzt werden, wenn neue Daten in den Cache verschoben werden und wo sich die Daten im Cache befinden. Sie sollten die FreeBSD-Dokumentation konsultieren, wenn Sie herausfinden wollen, welche Strategie verwendet wird.

Für die Ausrichtung müssen die Daten im Cache (oder im Hauptspeicher) an bestimmten Grenzen platziert werden, um effizient darauf zuzugreifen (d. H. In ein CPU-Register verschoben zu werden). Wenn Daten nicht ausgerichtet sind, ist zusätzliche Berechnung erforderlich, um sie auszurichten.