Що нового?

Набір учасників [Академія інформаційних Систем] розробка драйверів під Linux і Android (Сергій Боронин)

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

Gadzhi

Модератор

на курсі слухачі отримувати знання і навички, достатні, щоб почати працювати в якості системного програміста Linux:
  • відмінність драйверів пристроїв від прикладного ПЗ,
  • складання модулів ядра,
  • функції, які доступні з модулів,
  • структура file,
  • реєстрацію, підключення пристроїв,
  • приклад драйвера символьного пристрою c доступом на читання і запис,
  • блокування процесів при конкурентному доступі до пристрою,
  • специфіка управління пам'яттю в ядрі Linux,
  • блокові пристрої,
  • приклад драйвера, що використовує семафори,
  • типи даних і структури ядра і багато іншого.


цільова аудиторія

Курс розрахований на програмістів, які хотіли б освоїти затребуване
напрямок по розробці драйверів пристроїв для Linux і Android.

Курс розрахований на програмістів, які хотіли б освоїти затребуваний напрямок з розробки драйверів пристроїв для Linux і Android. Необхідна попередня підготовка основи програмування на С, Java.


Модуль 1:
  • Архітектура ядра Linux;
  • відмінності розробки драйверів від прикладного ПЗ;
  • потенційні проблеми з безпекою;
  • ліцензування модулів ядра.
Модуль 2:
  • найпростіший модуль ядра;
  • знайомство з printk ();
  • збірка модулів ядра;
  • Макроопределенія _init і _exit;
  • питання документування модулів;
  • Передача модулю параметрів командного рядка;
  • модулі, що складаються з декількох файлів;
  • збірка модулів під існуюче ядро.
Модуль 3:
  • модулі ядра та прикладні програми;
  • функції, які доступні з модулів;
  • простір користувача і простір ядра;
  • простір імен;
  • Старший і молодший номер пристрою.
Модуль 4:
  • файли символьних пристроїв;
  • Структура file_operations;
  • Структура file;
  • реєстрація пристрою;
  • відключення пристрою;
  • приклад драйвера символьного пристрою з доступом тільки на читання;
  • специфіка підтримки запису для символьних пристроїв;
  • приклад драйвера символьного пристрою з доступом на читання і запис.
Модуль 5:
  • особливість файлової системи/proc;
  • приклад драйвера, що створює файл в/proc з доступом на читання;
  • приклад драйвера, що створює файл в/proc з доступом на запис;
  • блокування процесів при конкурентному доступі до пристрою;
  • приклад драйвера, що призупиняє роботу процесів.
Модуль 6:
  • специфіка управління пам'яттю в ядрі Linux;
  • перетворення адреси в ядрі;
  • відображення файлу в пам'ять ядра;
  • управління відображенням в пам'ять.
Модуль 7:
  • блокові пристрої;
  • реєстрація блочного пристрою;
  • операції, підтримувані для блокових пристроїв;
  • обробка запитів до блочного пристрою;
  • деталі реалізації блочного пристрою;
  • приклад драйвера блочного пристрою.
Модуль 8:
  • конкуренція і ситуація гонок;
  • семафори і м'ютекси;
  • реалізація семафора в ядрі Linux;
  • семафори на читання і запис;
  • взаємоблокування;
  • приклад драйвера, що використовує семафори.
Модуль 9:
  • типи даних і структура ядра;
  • специфіка використання стандартних типів даних;
  • призначення типам даних явного розміру;
  • специфічні типи даних;
  • аспекти, пов'язані з сумісністю;
  • вимірювання часових інтервалів;
  • розмір сторінки;
  • порядок слідування байт в словах;
  • вирівнювання даних;
  • розмір покажчика.
https://privatelink.de/?https://www.infosystems.ru/courses/avtorskie_unikalnye/ALSE-1609/
 
Угорі