реклама на сайте
подробности

 
 
> расположение модуля в памяти системы, ARM с MMU
romez777
сообщение Oct 23 2012, 20:01
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Приветствую,

ядро 2.6.31.8 сконфигурировано с включенным CONFIG_VMSPLIT_3G, т.е. 1G под ядерную память и 3G под юзер спейс — соответственно ядро занимает пространство 0xc0000000 - 0xffffffff, а пользовательские процессы живут в диапазоне 0x00000000 - 0xbfffffff.

Однако наблюдаю следующее:

CODE
# cat /sys/module/mydrv/sections/.data
0xbf00b4f4
# cat /sys/module/mydrv/sections/.text
0xbf006000


И это поведение всех драйверов на этой системе, вот так расположен марвеловский драйвер ethernet свитча на этой же платформе:

CODE
# cat /sys/module/mvPpDrv/sections/.text /sys/module/mvPpDrv/sections/.data /sys/module/mvPpDrv/sections/.bss
0xbf006000
0xbf00b4f4
0xbf00c3a4


Вот на всякий случай информация о процессоре:
CODE
# cat /proc/cpuinfo
Processor       : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS        : 799.53
Features        : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant     : 0x2
CPU part        : 0x131
CPU revision    : 1

Hardware        : Feroceon-KW
Revision        : 0000
Serial          : 0000000000000000


Не понимаю как получается что ядерный модуль оказался загружен по user space адресам? Я предполагал, что модуль после insmod должен стать частью ядра и жить в ядерном пространстве.

Возможно я ошибаюсь — просьба просветить и поправить. Спасибо!
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 11:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.01349 секунд с 7
ELECTRONIX ©2004-2016