La mémoire comprimée n'a rien de magique. C'est un élément qui a été ajouté à la version 10.9 comme dernière étape avant que le système ne remplace la mémoire vive par du stockage. Selon John Siracusa Il remplit trois fonctions principales :
La compression de la mémoire est un triple jeu pour Mavericks. C'est un gain de performance : la compression et la décompression des données dans la RAM sont beaucoup plus rapides que la lecture et l'écriture sur un disque, même un disque SSD. C'est un gain d'énergie : moins on passe de temps à déplacer les données entre la RAM et le disque, plus le système peut rester inactif. Enfin, c'est un gain de capacité : Mavericks peut gérer des charges de travail beaucoup plus exigeantes que les versions précédentes d'OS X avant la crise de nerfs.
Pour ce qui est d'obtenir les détails à partir de la ligne de commande, cela risque d'être difficile. Les chiffres globaux de compression sont faciles à obtenir à l'aide d'une paire d'outils :
memory_pressure
vm_stat
Je ne pense pas que l'invocation de la ps
fera l'affaire, mais peut-être que quelqu'un peut corriger cela. Vous pouvez consulter les détails de la mise en œuvre sur ce fil de discussion : vm_compressor_mode (vm.compressor_mode) valeurs pour la mémoire compressée activée dans OS X
Le mieux que je puisse faire est d'examiner toute la mémoire "swappée et/ou compressée" à l'aide de la fonction vmmap
commande. En principe, avant de procéder à l'échange, les zones de mémoire marquées pour l'échange sont compressées. Si cela permet d'économiser suffisamment d'espace pour alléger l'algorithme de permutation, il n'y a pas de permutation. Dans le cas contraire, les régions compressées sont transférées vers le stockage.
vmmap -swapped [PID]
Vous devriez gérer l'ajout des régions et je ne suis pas sûr que le moniteur d'activité signale toutes les permutations et compressions dans la colonne que vous avez mentionnée, mais c'est quelque chose que vous pourriez être en mesure de déterminer par inspection et/ou en utilisant Instruments de Xcode pour corréler ce que vous voyez de la ligne de commande avec le moniteur d'activité pour certains processus.