Der Caching-Mechanismus des Linux-Systems ist recht fortschrittlich. Er zielt auf Dentry (für VFS, beschleunigt die Konvertierung von Dateipfadnamen in Inodes), Buffer Cache (zum Lesen und Schreiben von Festplattenblöcken) und Page Cache (zum Lesen und Schreiben von Datei-Inodes) ab ), um Caching-Vorgänge durchzuführen. Nachdem jedoch eine große Anzahl von Dateivorgängen ausgeführt wurde, verbraucht der Cache grundsätzlich die Speicherressourcen. Tatsächlich ist unser Dateivorgang jedoch abgeschlossen und dieser Teil des Caches wird nicht mehr verwendet. Können wir zu diesem Zeitpunkt einfach zusehen, wie der Cache den Speicherplatz belegt?
Also müssen wir den Speicher unter Linux immer noch manuell freigeben, was eigentlich der Vorgang der Freigabe des Caches ist.
Um den Zweck der Cache-Freigabe zu erreichen, müssen wir zunächst die Schlüsselkonfigurationsdatei /proc/sys/vm/drop_caches verstehen. Diese Datei zeichnet die Parameter der Cache-Freigabe auf. Der Standardwert ist 0, was bedeutet, dass der Cache nicht freigegeben wird. Sein Wert kann eine beliebige Zahl zwischen 0 und 3 sein und unterschiedliche Bedeutungen haben:
0 – Nicht veröffentlicht
1 – Seitencache freigeben
2 – Dentries und Inodes freigeben
3 – Alle Caches freigeben
Nachdem wir die Parameter kennen, können wir die folgenden Anweisungen verwenden, um entsprechend unseren Anforderungen zu arbeiten.
Zuerst müssen wir den Sync-Befehl verwenden, um alle ungeschriebenen Systempuffer auf die Festplatte zu schreiben, einschließlich geänderter I-Nodes, verzögerter Block-E/A und Lese-/Schreibzuordnungsdateien. Andernfalls können nicht gespeicherte Dateien während des Cache-Freigabevorgangs verloren gehen.
#sync
Als nächstes müssen wir die erforderlichen Parameter in die Datei /proc/sys/vm/drop_caches schreiben. Wenn wir beispielsweise alle Caches freigeben müssen, geben Sie den folgenden Befehl ein:
#echo 3 > /proc/sys/vm/drop_caches
Dieser Befehl wird sofort nach der Eingabe wirksam und Sie können überprüfen, ob der verfügbare Speicher offensichtlich zugenommen hat.
Um die vom aktuellen Cache freigegebenen Parameter abzufragen, können Sie den folgenden Befehl eingeben:
#cat /proc/sys/vm/drop_caches
Das Obige ist eine Einführung in die Verwendung von Befehlen zum Freigeben des Caches. Wenn Sie das Gefühl haben, dass Ihr Computer immer mehr blockiert, kann es sein, dass Ihr Speicher stark belegt ist.
Das obige ist der detaillierte Inhalt vonLinux verwendet Anweisungen, um Cache-Methoden freizugeben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!