Глава 7. Синхронизация ядра- Часть II

Содержание

Глава 7. Синхронизация ядра- Часть II
Применение взаимодействий atomic_t и refcount_t
Сопоставление интерфейсов: более нового refcount_t и более старого atomic_t
Пример интерфейсов refcount_t и atomic_t
Образцы использования refcount_t внутри основного кода самого ядра
64- битные атомарные операторы с целыми
Использование атомарных операторов RMW
Атомарные операции RMW - действия с регистрами устройств
Применение побитовых операций RMW
Применение побитовых операций - некий пример
Действенный поиск побитовой маски
Применение спин блокировок читатель - писатель
Интерфейсы спин блокировок читатель - писатель
Пара слов предостережения
Семафор читатель - писатель
Воздействие кэширования и ложное совместное использование
Свободное от блокирований программирование с переменными для ЦПУ
Переменные для ЦПУ
Работа с выделением для ЦПУ
Выделение, инициализация и освобождение переменных для ЦПУ
Выполнение операций ввода/ вывода с переменными для ЦПУ
Выделение для ЦПУ - образец модуля ядра
Выделение для ЦПУ - применение внутри ядра
Отладка блокировок внутри самого ядра
Настройка ядра отладки для отладки блокировок
Средство проверки блокировок lockdep - раннее обнаружение проблем с блокировками
Примеры - перехват ошибок взаимной блокировки при помощи lockdep
Пример 1 - перехват собственной ошибки взаимной блокировки при помощи lockdep
Его исправление
Пример 2 - перехват взаимной блокировки AB-BA при помощи lockdep
lockdep - пояснения и проблемы
Пояснения lockdep
Проблемы lockdep
Статистические данные lockdep
Представление статистических данных lockdep
Барьеры памяти - введение
Пример использования барьера памяти в драйвере устройства
Выводы
Вопросы
Дальнейшее чтение

Применение взаимодействий atomic_t и refcount_t

Сопоставление интерфейсов: более нового refcount_t и более старого atomic_t

Пример интерфейсов refcount_t и atomic_t

Образцы использования refcount_t внутри основного кода самого ядра

64- битные атомарные операторы с целыми

Использование атомарных операторов RMW

Атомарные операции RMW - действия с регистрами устройств

Присенение побитовых операций RMW

Присенение побитовых операций - некий пример

Дейсвенный поиск побитовой маски

Применение спин блокировок читатель - писатель

Интерфейсы спин блокировок читатель - писатель

Пара слов предостережения

Семафор читатель - писатель

Воздействие кэширования и ложное совместное использование

Свободное от блокирований программирование с переменными для ЦПУ

Переменные для ЦПУ

Работа с выделением для ЦПУ

Выделение, инициализация и освобождение переменных для ЦПУ

Выполнение операций ввода/ вывода с переменными для ЦПУ

Выделение для ЦПУ - образец модуля ядра

Выделение для ЦПУ - применение внутри ядра

Отладка блокировок внутри самого ядра

Настройка ядра отладки для отладки блокировок

Средство проверки блокировок lockdep - раннее обнаружение проблем с блокировками

Примеры - перехват ошибок взаимной блокировки при помощи lockdep

Пример 1 - перехват собственной ошибки взаимной блокировки при помощи lockdep

Его исправление

Пример 2 - перехват взаимной блокировки AB-BA при помощи lockdep

lockdep - пояснения и проблемы

Пояснения lockdep

Проблемы lockdep

Статистические данные lockdep

Представление статистических данных lockdep

Пример использования барьера памяти в драйвере устройства

Выводы

Вопросы

Дальнейшее чтение