6 votes

Programme en ligne de commande pour afficher le contenu de l'emplacement mémoire?

Je veux inspecter la mémoire. Dans Linux, je peux probablement parcourir simplement /dev/mem, mais comment visualiser la mémoire système à un emplacement spécifique sur Mac ?

11voto

Jose Chavez Points 645

Contrairement à ce que vous pensez, vous ne pouvez pas simplement parcourir /dev/mem sur un système Linux par défaut. Il y a quelques années, l'accès à ce périphérique a été restreint par défaut sur Linux, de sorte que seules des zones de mémoire très limitées sont accessibles de cette manière. Vous ne pouvez lever la restriction qu'en recompilant le noyau.

Sur macOS, l'accès à ce périphérique est complètement restreint par défaut pour des raisons de sécurité similaires. Cependant, vous pouvez l'activer en utilisant un paramètre au démarrage.

Activez explicitement cela en redémarrant votre Mac, en maintenant les touches Commande et R pour démarrer en Mode de Récupération. Ensuite, ouvrez le menu Utilitaires et sélectionnez Terminal. Depuis le Terminal, vous devez exécuter la commande suivante :

sudo nvram boot-args="kmem=1"

Après le redémarrage, vous constaterez que de nouveaux fichiers de périphérique /dev/mem et /dev/kmem (mémoire du noyau) ont été créés.

Vous devrez utiliser sudo ou être root pour accéder aux périphériques. Le périphérique /dev/mem est adressé par adresse mémoire physique, et /dev/kmem par adresse mémoire virtuelle.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X