Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
19 / 19 / 1
Регистрация: 06.05.2013
Сообщений: 22
1

Модуль ядра sysfs

30.07.2020, 18:05. Показов 1064. Ответов 1

Author24 — интернет-сервис помощи студентам
Здравствуйте, пишу модуль ядра.
Требуется записывать информацию в /sys/module/MODULENAME. Несколько часов разбора includ'ов kernel плодов не дали. Только запись в /sys/kernel или другие...
Покажите пальцем - где искать, пожалуйста!

Добавлено через 3 часа 10 минут
Ответ наконец найден.
ВАЖНО: На корректное описание работы с ядром не претендую, только изучаю эту тему.
1) По макросу THIS_MODULE получаем родителя kobject, указывающего на /sys/module/MODULENAME:
THIS_MODULE->mkobj.kobj
*Теперь через этого родителя можно общаться с userspace по адресу /sys/module/MODULENAME
Для моих целей понадобились дополнительные пункты:
2) Создаем новый kobject - потомок родителя, полученного в пункте 1.
3) Для нового kobject будет новая директория /sys/module/MODULENAME/KOBJECTNAME
3) Через новый kobject создаем файл, куда ведем запись данных
Листинг:
C++
1
2
   struct kobject * subdir =  kobject_create_and_add("KOBJECTNAME",&(THIS_MODULE->mkobj.kobj) );
   sysfs_create_file(subdir , &foo_attribute.attr);
Про атрибуты и остальное в интернете найти можно. А вот как создать kobject там где нужно именно ТЕБЕ нет.
Вполне возможно, что можно создать нужный kobject как-то иначе, но это тоже решение!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.07.2020, 18:05
Ответы с готовыми решениями:

Написать простейший модуль ядра
Привет. Необходимо написать простейший модуль ядра. Имеются следующие исходники: #include...

Модуль ядра, работа с мышью
Здравствуйте, нужно написать модуль ядра Linux,который будет при нажатии мышиной кнопки выводить...

Загружаемый модуль ядра зависает
Добрый день. Пишу загружаемый модуль ядра, который должен через заданный интервал времени...

Модуль ядра не компилируется в Ubuntu-18.04
Здравствуйте! Есть маленький модуль ядра, он компилируется в Astra Linux 1.4, но не...

1
19 / 19 / 1
Регистрация: 06.05.2013
Сообщений: 22
31.07.2020, 16:51  [ТС] 2
ИТОГ:
Хочу поделиться результатом моей работы:
https://github.com/ShestA/device-mapper-proxy
1
31.07.2020, 16:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.07.2020, 16:51
Помогаю со студенческими работами здесь

Модуль ядра, неккоректная работа
Здравствуйте!, изучаю тему написания модулей ядра. Начал с Hello, world. #include...

Модуль ядра, создающий файл с текстом
Здравствуйте. Файл proc_module.c. Его задача создать файл, в котором будет текст. #include...

Модуль ядра и прерывания от сетевой карты
Здравствуйте! Учусь писать модули ядра. Посоветуйте, каким образом можно осуществить перехват...

Модуль ядра, вывод сообщения в dmesg
Я реализовал это таким образом, но msleep вешает консоль. int record(void) { for(;;) {...

Модуль ядра линукс ошибка make файла
Помогите пожалуйста.Первый раз пытаюсь написать ядро,и ничего не получается. Выдаёт ошибку:...

Написать модуль ядра, который будет блокировать определённые кнопки мыши
Здравствуйте! По заданию нужно написать модуль ядра Linux,который будет блокировать определённые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru