Le mécanisme de mise en cache du système Linux est assez avancé. Il cible Dentry (pour VFS, accélérant la conversion des noms de chemin de fichier en inodes), Buffer Cache (pour lire et écrire des blocs de disque) et Page Cache (pour lire et écrire des inodes de fichiers). ). ) pour effectuer des opérations de mise en cache. Cependant, après qu'un grand nombre d'opérations sur les fichiers aient été effectuées, le cache utilisera essentiellement les ressources mémoire. Mais en fait, notre opération sur les fichiers est terminée, et cette partie du cache n'est plus utilisée. À ce moment-là, pouvons-nous simplement regarder le cache occuper l'espace mémoire ?
Donc, nous devons toujours libérer manuellement la mémoire sous Linux, ce qui est en fait l'opération de libération du cache.
Pour atteindre l'objectif de libération du cache, nous devons d'abord comprendre le fichier de configuration clé /proc/sys/vm/drop_caches. Ce fichier enregistre les paramètres de libération du cache. La valeur par défaut est 0, ce qui signifie que le cache n'est pas libéré. Sa valeur peut être n'importe quel nombre compris entre 0 et 3, représentant différentes significations :
0 – Non publié
1 – Libérer le cache des pages
2 – Libérer les dentries et les inodes
3 – Libérez toutes les caches
Après avoir connu les paramètres, nous pouvons utiliser les instructions suivantes pour fonctionner selon nos besoins.
Nous devons d'abord utiliser la commande sync pour écrire tous les tampons système non écrits sur le disque, y compris les i-nodes modifiés, les E/S de bloc retardées et les fichiers de mappage en lecture-écriture. Sinon, les fichiers non enregistrés risquent d'être perdus pendant le processus de libération du cache.
#sync
Ensuite, nous devons écrire les paramètres requis dans le fichier /proc/sys/vm/drop_caches Par exemple, si nous devons libérer tous les caches, entrez la commande suivante :
.#echo 3 > /proc/sys/vm/drop_caches
Cette commande prendra effet immédiatement après sa saisie, et vous pourrez vérifier que la mémoire disponible a évidemment augmenté.
Pour interroger les paramètres libérés par le cache actuel, vous pouvez saisir la commande suivante :
#cat /proc/sys/vm/drop_caches
Ce qui précède est une introduction à la façon dont Linux utilise les commandes pour libérer le cache. Si vous sentez que votre ordinateur est de plus en plus bloqué, il se peut que votre mémoire soit beaucoup occupée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!