Запись в определенную ячейку памяти

Вы можете использовать комбинацию GEdit и плагина Advanced find / replace plugin for gedit, которые вы можете найти на http://code.google.com/p/advanced-find/.

С 2012 года он имеет функция закладки, чтобы вы могли ее повторно использовать. Кроме того, он может искать и заменять открытые файлы, файлы в папке (с фильтром) или внутри текста.

О том, как установить, вы можете следовать инструкциям на своей странице wiki http://code.google.com/p/advanced-find/.

В основном, что вы должны сделать:

Загрузите правильную версию для своего gedit из http://code.google.com/p/advanced-find/downloads/list. Декомпрессируйте его. Запустите install.sh (без sudo). Перейдите к настройкам / подключаемому модулю и активируйте его.

1
задан 29 March 2015 в 13:27

2 ответа

/proc/ - псевдо файловая система: при чтении / записи на любом /proc/file вы не имеете доступа к реальному файлу или реальной памяти, но вы вызываете определенную функцию ядра (в зависимости от файла), которая действует как файл. Он возвращает данные, если вы читаете файл, задаете данные, если вы пишете файл. И если функция записи не определена для определенного файла, запись в файл ничего не изменит.

В этом случае /proc/device-tree - это способ чтения дерева устройств, предоставляемого запущенному ядру в то время как его загрузка. (без разрешения записи)

Кроме того, в настоящее время дерево устройств является конфигурацией только для чтения, после загрузки вы не можете обновить его. И для вашего конкретного случая значения, настраивающие ваш i2c, считываются и используются, когда исследуется i2c («установлен»). Если вы хотите переконфигурировать i2c, вам понадобится как сказано joshumax, чтобы использовать правильное ioctl на устройстве i2c (в /dev/, где определены определенные «записи драйвера»)

Еще одно решение - построить новое дерево устройств, настроив устройство I2C по своему усмотрению. И спросите ядро ​​(проверьте, что вы используете загрузчик), чтобы использовать только что скомпилированное дерево устройств.

2
ответ дан 23 May 2018 в 22:07

Для этого вам понадобятся полномочия root sudo. Попробуйте это: вы можете использовать gdb (GNU Debugger) под управлением root для управления содержимым памяти. Они могут вас заинтересовать:

http://sourceware.org/gdb/current/onlinedocs/gdb/

http://sourceware.org/gdb/current/ onlinedocs / GDB /

1
ответ дан 23 May 2018 в 22:07
  • 1
    malloc() не является полезным. malloc() используется для распределения памяти в пользовательском пространстве, в то время как пользователь хочет записать что-то уже в пространстве ядра. Скорее, он должен будет использовать умное mmap(). – kos 27 March 2015 в 18:33
  • 2
    Да, я думаю, это правильно. – j0h 27 March 2015 в 18:33

Другие вопросы по тегам:

Похожие вопросы: