Книга: Разработка ядра Linux
Подсистемы
Подсистемы
Подсистемы используются для представления высокоуровневых концепций ядра и являются коллекцией одного или нескольких множеств kset
. Множества kset
содержат объекты kobject
, подсистемы — множества kset
, но связь между множествами в подсистеме значительно более слабая, чем связь между объектами kobject
в множестве. Множества kset
одной подсистемы могут иметь только наиболее общие объединяющие факторы.
Несмотря на их важную роль, подсистемы представляются с помощью очень простой структуры данных — struct subsystem
.
struct subsystem {
struct kset kset;
struct rw_semaphore rwsem;
};
Структура subsystem
содержит только одно множество kset
, тем не менее несколько множеств kset
могут указывать на общую структуру subsystem
с помощью поля subsys
. Такие однонаправленные взаимоотношения означают, что нет возможности определить все множества подсистемы, только имея ее структуру subsystem
.
Поле kset
, которое содержится в структуре subsystem
, — это множество kset
подсистемы, которое используется по умолчанию, чтобы зафиксировать положение этой подсистемы в иерархии объектов.
Поле rwsem
структуры subsystem
— это семафор чтения-записи (см. главу 9, "Средства синхронизации в ядре"), который используется для защиты подсистемы и ее множеств kset
от конкурентного доступа. Все множества kset
должны принадлежать какой-нибудь подсистеме, поскольку они используют семафор подсистемы для защиты своих данных от конкурентного доступа.
- Глава 10 Возможности подсистемы хранения данных в различных версиях Windows NT
- При печати появляется сообщение об ошибке подсистемы Диспетчера очереди печати. Что делать?
- Другие объекты подсистемы VFS
- Альтернативные подсистемы
- Основные подсистемы (функциональные блоки) СИП КУСМ
- 2.2.1 Обзор особенностей подсистемы управления файлами
- Этап 4: уведомление подсистемы Windows о новом процессе
- 4.10.5. Регистры подсистемы прерывания
- 7.1.2. Подсистемы 68HC12, используемые в проекте
- 7.2.2. Подсистемы 68HC12 используемые в проекте
- Системы, подсистемы и программное обеспечение
- Различные подсистемы обработки данных в одной системе