A quoi servent "/ run / lock" et "/ run / shm"?

71

Je veux juste savoir où et comment /run/lock et /run/shm peuvent aider notre PC.

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              56G   13G   41G  24% /
udev                  983M  4.0K  983M   1% /dev
tmpfs                 396M  840K  395M   1% /run
none                  5.0M  8.0K  5.0M   1% /run/lock
none                  990M  164K  990M   0% /run/shm
    
posée Ten-Coin 29.07.2012 - 05:49
la source

1 réponse

96
  

Réponse courte: ils stockent des fichiers système temporaires, y compris des verrous de périphérique et des segments de mémoire partagés entre différents processus. Ne vous inquiétez pas, ils utilisent généralement une fraction de leur "taille" indiquée par df

  1. /run est, en général, un système de fichiers temporaire (tmpfs) résidant dans la mémoire vive (alias "ramdisk"); Il est destiné à stocker des fichiers système ou d'état "temporaires" qui peuvent être critiques mais ne nécessitent pas de persistance lors des redémarrages.

    • /run est en fait une innovation assez récente, qui a été ajoutée il y a quelques années pour remplacer les multiples fichiers créés par tmpfs (y compris /var/lock et /dev/shm ) par un seul tmpfs racine unifié.
    • Les emplacements principaux /run remplacent sont:
    /var/run → /run
    /var/lock → /run/lock
    /dev/shm → /run/shm [currently only Debian plans to do this]
    /tmp → /run/tmp [optional; currently only Debian plans to offer this] 
    
  2. /run/lock (anciennement /var/lock ) contient des fichiers de verrouillage , c.-à-d. des fichiers indiquant qu'un périphérique partagé ou une autre ressource système est en cours d'utilisation et contenant l'identité du processus (PID) qui l'utilise; Cela permet aux autres processus de coordonner correctement l'accès au périphérique partagé.

  3. /run/shm (anciennement /dev/shm ) est une mémoire partagée accessible en écriture pour le monde. À strictement parler , il s'agit d'un stockage pour les programmes utilisant l'API POSIX Shared Memory. Il facilite ce que l'on appelle la communication inter-processus (IPC) , où différents processus peuvent partager et communiquer via une zone de mémoire commune, qui dans ce cas est généralement un fichier normal stocké sur un "disque virtuel". Bien sûr, cela peut être et a été utilisé de manière créative également;)

  4. Ne vous inquiétez pas de la taille : il est important que beaucoup de gens qui utilisent df -h et sachant que /run est soutenu par la RAM sont choqués que ces mystérieux Dossiers. Tout comme le Linux a mangé mon mythe RAM , cette croyance est incorrecte.

    • La taille indiquée est uniquement le maximum pouvant être utilisé
    • La valeur par défaut est 50% de la RAM physique
    • Seule la quantité affichée dans la colonne Utilisé est actuellement utilisée, ce qui, dans la capture d'écran ci-dessus, contient moins de 1 Mo de mémoire.
    • Vous pouvez utiliser la commande ipcs -m pour vérifier que les segments de mémoire partagée utilisés correspondent au résumé df et voir également quels PID les utilisent
    • Comme votre mémoire vive classique, /run est également éventuellement pris en charge par votre échange, donc, si vous utilisez /run/shm pour des temps de compilation "plus rapides", gardez cela à l'esprit;)
réponse donnée ish 29.07.2012 - 07:41
la source

Lire d'autres questions sur les étiquettes