Що нового?

Придбаний Разработка драйверов устройств в Linux [Специалист] [Игорь Седых] [2020]

Інформація про покупку
Тип покупки: Складчина
Ціна: 13475 ГРН
Учасників: 0 з 5
Організатор: Відсутній
Статус: Набір учасників
Внесок: 2802.8 ГРН
0%
Основний список
Резервний список

Gadzhi

Модератор
Разработка драйверов устройств в Linux. Игорь Седых

Ядро Linux используется в большинстве современных смартфонов за счет применения в популярной платформе Android. Кроме того, не следует забывать и про лидирующее положение Linux в сегменте суперкомпьютеров (469 из топ 500 суперкомпьютеров под данным ), второе место в сегменте интернет-серверов и высокую популярность в корпоративном сегменте. GNU Compilers Collection является лидером в списке аналогичного программного обеспечения по популярности среди средств разработки решений с открытым исходным кодом.

Вы научитесь:
  • понимать отличия драйверов устройств от прикладного ПО;
  • знать специфику и ограничения, присущие драйверам устройств;
  • понимать влияние ошибок в драйверах устройств на безопасность всей системы в целом;
  • понимать отличия в реализации символьных драйверов устройств от блочных;
  • знать особенности файловой системы /proc и специфику работы с ней;
  • понимать конкуренцию и ситуацию гонок в ядре, проблемы и их решения;
  • знать аспекты, связанные с совместимостью, специфику использования стандартных типов данных.
Модуль 1. Ядро Linux
  • Архитектура ядра linux
  • Отличия разработки драйверов от прикладного ПО
  • Потенциальные проблемы с безопасностью
  • Лицензирование модулей ядра
Модуль 2. Модули ядра Linux
  • Простейший модуль ядра
  • Знакомство с printk()
  • Сборка модулей ядра
  • Макроопределения __init и __exit
  • Вопросы документирования модулей
  • Передача модулю параметров командной строки
  • Модули, состоящие из нескольких файлов
Модуль 3. Модули ядра, пространства и устройства
  • Модули ядра и прикладные программы
  • Функции, которые доступны из модулей
  • Пространство пользователя и пространство ядра
  • Пространство имен
  • Адресное пространство
  • Старший и младший номер устройства
Модуль 4. Данные
  • Типы данных и структуры ядра
  • Специфика использования стандартных типов данных
  • Назначение типам данных явного размера
  • Специфичные типы данных
  • Аспекты, связанные с совместимостью
  • Размер страницы
  • Порядок следования байт в словах
  • Выравнивание данных
  • Размер указателя
Модуль 5. Символьные устройства
  • Файлы символьных устройств
  • Структура file_operations
  • Структура file
  • Регистрация устройства
  • Отключение устройства
  • Пример драйвера символьного устройства c доступом только на чтение
  • Специфика поддержки записи для символьных устройств
  • Пример драйвера символьного устройства c доступом на чтение и запись
Модуль 6. Файловая система /proc
  • Особенность файловой системы /proc
  • Пример драйвера, создающего файл в /proc c доступом на чтение
  • Блокировка процессов при конкурентном доступе к устройству
  • Пример драйвера, приостанавливающего работу процессов
Модуль 7. Управление памятью в ядре Linux
  • Специфика управления памятью в ядре Linux
  • Преобразование адреса в ядре
  • Динамическое распределение памяти в ядре
Модуль 8. Блочные устройства
  • Блочные устройства
  • Регистрация блочного устройства
  • Особенности реализации блочного устройства
Модуль 9. Семафоры и синхронизация
  • Конкуренция и ситуация гонок
  • Семафоры и мьютексы
  • Реализация семафора в ядре Linux
  • Семафоры на чтение и запись
  • Взаимоблокировки
  • Пример драйвера, использующего семафоры
  • Измерение временных интервалов
Модуль 10. Реализация доступа к периферийному устройству
  • Практическая работа
https://www.specialist.ru/course/unsis

P.S. Не повтор складчины

Здесь большая расчасовка учебной программы.

 
Угорі