Embedded / Hardware / низкоуровневое
1. Ori Pomerantz — Руководство по программированию модулей ядра Linux
-
Что изучаем:
- Основы разработки модулей ядра Linux (kernel modules).
- Работа с ядром Linux: загрузка, выгрузка модулей, взаимодействие с системой.
- Использование системных вызовов, интерфейсов ядра, драйверов устройств.
- Принципы синхронизации, работы с памятью и прерываниями в ядре.
-
Что получаем:
- Практические навыки создания и отладки модулей ядра.
- Понимание взаимодействия приложений и ОС на низком уровне.
- Базу для изучения Embedded Linux, драйверов и системного программирования.
2. Денис Юричев — Reverse Engineering для начинающих
-
Что изучаем:
- Основы обратного проектирования программного кода.
- Анализ исполняемых файлов, бинарных форматов, инструкций процессора.
- Декомпиляция, дизассемблирование и понимание работы чужого кода.
- Работа с инструментами отладки и анализа (debuggers, disassemblers).
-
Что получаем:
- Понимание устройства программ на уровне машинного кода.
- Навыки анализа чужих программ и поиска уязвимостей.
- Основа для безопасности, Embedded-разработки и системного программирования.
Итог по разделу “Embedded / Hardware / низкоуровневое”:
| Книга | Что изучаем | Практическая польза |
|---|---|---|
| Ori Pomerantz | Программирование модулей ядра Linux, работа с системными вызовами, памятью и синхронизацией | Создание и отладка ядра, драйверов и Embedded-приложений |
| Денис Юричев | Reverse engineering, бинарный анализ, машинный код, дизассемблирование | Понимание работы программ на низком уровне, навыки анализа и отладки |
Главный эффект: После прочтения этого раздела у тебя будет:
- Понимание структуры и работы ОС на низком уровне.
- Навыки создания ядра и модулей, работы с памятью и устройствами.
- Знания, необходимые для Embedded-программирования, драйверов и анализа безопасности ПО.