Question

Selon la page du manuel « -l » dans ulimit signifie « La taille maximale qui peut être verrouillé dans la mémoire ». Qu'est-ce que cette phrase signifie exactement? Comment peut-il affecter les programmes en cours d'exécution?

Était-ce utile?

La solution

La mémoire qui est verrouillé ne peut pas être paginé - ce qui réduit la quantité de mémoire disponible pour d'autres processus. Ce paramètre limite la quantité de mémoire qui peut être verrouillé.

Autres conseils

Cela limite la quantité de mémoire que vous pouvez faire avec mlock

Le setrlimit des pages de manuel:

  

Le nombre maximum d'octets de mémoire qui peuvent être verrouillés dans la mémoire vive. En effet, cette limite est arrondi au multiple le plus proche de la taille de la page du système. Cette limite affecte mlock (2) et mlockall (2) et mmap (2) MAP_LOCKED opération. Depuis Linux 2.6.9, elle affecte également le fonctionnement de SHM_LOCK shmctl (2), où il fixe un maximum sur le total des octets dans des segments de mémoire partagée (voir shmget (2)) qui peut être verrouillé par l'ID utilisateur réel du processus d'appel. Le shmctl (2) verrouille SHM_LOCK sont comptabilisés séparément des verrous de mémoire par processus établis par mlock (2), mlockall (2), et mmap (2) MAP_LOCKED; un processus peut verrouiller octets jusqu'à cette limite dans chacune de ces deux catégories. Dans les noyaux Linux avant 2.6.9, cette limite contrôle la quantité de mémoire qui pourrait être bloquée par un processus privilégié. Depuis Linux 2.6.9, aucune limite sont placées sur la quantité de mémoire qu'un processus privilégié peut verrouiller, et cette limite la quantité au lieu régit la mémoire qu'un processus peut se bloquer sans droits.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top