Книга: Разработка ядра Linux
Добавление и удаление объектов на файловой системе sysfs
Добавление и удаление объектов на файловой системе sysfs
Инициализированные объекты kobject
автоматически не экспортируются через файловую систему sysfs. Для того чтобы сделать объект видимым через sysfs, необходимо использовать функцию kobject_add()
.
int kobject_add(struct kobject *kobj);
Положение объекта на файловой системе sysfs зависит от его положения в объектной иерархии. Если установлен указатель parent
объекта, то объект будет отображен внутри каталога, соответствующего объекту, на который указывает указатель parent. Если указатель parent
не установлен, то объект будет отображен в каталоге, соответствующем значению переменной kset->kobj
. Если для некоторого объекта не установлены ни значение поля parent, ни значение поля kset
, то считается, что данный объект не имеет родительского и будет отображаться в корневом каталоге файловой системы sysfs
. Такое поведение практически всегда соответствует тому, что нужно. Поэтому одно из полей parent или kset
(или оба) должно быть установлено правильным образом перед вызовом функции kobject_add()
. Имя каталога, который представляет объект kobject
в файловой системе sysfs, будет определяться значением поля kobj->name
.
Вместо того чтобы последовательно вызывать функции kobject_init()
и kobject_add()
, можно вызвать функцию kobject_register()
.
int kobject_register(struct kobject *kobj);
Удаление объекта из файловой системы sysfs выполняется с помощью функции kobject_del()
.
void kobject_del(struct kobject *kobj);
Функция kobject_unregister()
сочетает в себе выполнение функций kobject_del()
и kobject_put()
.
void kobject_unregister(struct kobject* kobj);
Все эти четыре функции определены в файле lib/kobject.c
и объявлены в файле <linux/kobject.h>
.
- Добавление файлов на файловой системе sysfs
- Восстановление из резервной копии на системе-приемнике
- Иерархия объектов в InterBase
- Имена объектов длиной 68 символов
- 6.3. Добавление фоновой музыки
- Создание объектов Collection
- Создание многофайловой базы данных
- Глава 5. Разработка и анализ бизнес-планов в системе Project Expert
- Удаление шаблонов узлов STP
- Удаление учебного узла
- Удаление файлов занятий
- Удаление узла