CPU-Caches werden durch Ausnutzung der zeitlichen und räumlichen Lokalität verwendet. Meine Frage ist, wer für die Verwaltung dieser Caches verantwortlich ist. Ist dies ein Betriebssystem, das ein bestimmtes Zugriffsmuster identifiziert und dann den Cache mithilfe von Betriebssystemfunktionsaufrufen auf niedriger Ebene verwaltet (dh speichert)?
computer-architecture
cpu-cache
gpuguy
quelle
quelle
Antworten:
Der CPU-Cache verarbeitet jeden Zugriff auf den Speicher, der einfach zu schnell ist, um von der Software gesteuert zu werden. Es ist vollständig in die Hardware integriert, entweder auf dem CPU-Chip selbst oder auf dem Motherboard.
quelle
Die CPU-Caches sind ab dem Moment betriebsbereit, in dem die CPU eingeschaltet wird. Weder das BIOS noch ein Betriebssystem sind streng genommen "notwendig", um die Caches zu steuern. Das BIOS und das Betriebssystem können die Cache-Konfigurationseinstellungen in der CPU ändern, steuern jedoch nicht den normalen Betrieb. Dies ist alles in die CPU selbst integriert.
quelle
Dies hängt vollständig von Ihrer Hardwareplattform ab (zum Beispiel bietet Nios® II einige Anweisungen zum Verwalten von Caches). Sie sollten die Anleitung und die Assemblersprache lesen . Einige Prozessoren bieten Anweisungen zum Verwalten des Caches auf einer bestimmten Ebene. WBINVD bietet beispielsweise interne Caches zum Zurückschreiben und Löschen . Starten Sie das Zurückschreiben und Löschen externer Caches (oder INVD ).
quelle