Согласно доступу к памяти ядра в версии x86 для Mac OS X , /dev/mem
и /dev/kmem
были удалены, когда Apple выпустила OS X для процессоров Intel.
(Отличная) статья также объясняет, как включить устройства памяти , а именно с помощью kmem=1
аргумента загрузки ядра.
Обратите внимание, что, как прокомментировал ниже neal , в macOS 10.15 Catalina (и, возможно, начиная с macOS 10.12 Sierra), настройки NVRAM можно изменять только при загрузке Mac в режиме восстановления . Чтобы войти в режим восстановления , включите ваш Mac и сразу удерживайте ⌘-R, пока не появится логотип, запустите Terminal из меню Utilities в строке меню, запустите:
sudo nvram boot-args="kmem=1"
и перезагрузите компьютер. Вы должны увидеть эти два устройства:
$ ls -l /dev/*mem
crw-r----- 1 root kmem 3, 1 2014-02-28 22:09 /dev/kmem
crw-r----- 1 root kmem 3, 0 2014-02-28 22:09 /dev/mem
(В предыдущих версиях macOS, таких как OS X Mavericks 10.9.2, вы можете включить устройства памяти в операционной системе, поэтому просто запустите Terminal, введите команду выше и перезагрузите компьютер.)
Если ваш Mac не загружается или у вас есть какие-либо проблемы , перезагрузите NVRAM, нажимая ⌘optionPRи удерживая клавиши, пока не услышите звук запуска во второй раз, как объяснено в «Сброс NVRAM / PRAM» в KB HT1379 О NVRAM и PRAM ,
Если вы хотите сбросить аргумент, введите sudo nvram -d boot-args
и проверьте, что результаты nvram -p | grep boot-args
не выводятся.
/dev
... возможно, вы знаете, закрыл ли Apple эту опцию и есть ли другая альтернатива для доступа к этой памяти в 10.12?Я думаю, что я получил его для работы на macOS Sierra! Я скачал проект Comex : Kmem Project Я скомпилировал kext, установил права доступа и затем загрузил его! Используя терминал, я вошел
/dev
иls
показал обаmem
иkmem
...Редактировать: если вы загружаете проект, вам просто нужно изменить компилятор в XCode, чтобы использовать последние (например ... я не знаю, работают ли другие версии, хотя ...) Для быстрого доступа к результатам, которые я уже сделал Проект Comex, который компилируется в macOS Sierra! Кмем для Сьерра Форк
Опять же, это работа Comex, а не моя, я просто изменил настройку компилятора и загрузил ее! :)
источник