Книга: Разработка ядра Linux
Счетчики ссылок
Одно из главных свойств, которое реализуется с помощью объектов kobject
, — это унифицированная система поддержки счетчиков ссылок. После инициализации количество ссылок на объект устанавливается равным единице. Пока значение счетчика ссылок на объект не равно нулю, объект существует в памяти, и говорят, что он захвачен (pinned, буквально, пришпилен). Любой код, который работает с объектом, вначале должен увеличить значение счетчика ссылок. После того как код закончил работу с объектом, он должен уменьшить значение счетчика ссылок. Увеличение значения счетчика называют захватом (getting), уменьшение — освобождением (putting) ссылки на объект. Когда значение счетчика становится равным нулю, объект может быть уничтожен, а занимаемая им память освобождена.
Увеличение значения счетчика ссылок выполняется с помощью функции kobject_get()
.
struct kobject* kobject_get(struct kobject *kobj);
Эта функция возвращает указатель на объект kobject
в случае успеха и значение NULL
в случае ошибки.
Уменьшение значения счетчика ссылок выполняется с помощью функции kobject_put()
.
void kobject put(struct kobject *kobj);
Если значение счетчика ссылок объекта, который передается в качестве параметра, становится равным нулю, то вызывается функция, на которую указывает указатель release
поля ktype
этого объекта.
- Продвижение сайта и счетчики посещений
- Покупка ссылок
- Нормально ли воспринимается поисковыми системами маскировка партнерских ссылок?
- Инварианты класса и семантика ссылок
- Типы ссылок. Имена ячеек
- Автоматизированные биржи ссылок
- Вставка гиперссылок и графических изображений
- Глава 50 Инструментарий и язык электронных рассылок
- О закупке ссылок
- 5.27.2 Трансляция многоадресных рассылок в адреса Ethernet и FDDI
- Создание гиперссылок
- Счетчики дескрипторов процессов