Организация операционной системы (часть 1)
- Досистемная загрузка (не сегшодня)
 - Ядро+initrd (тоже не сегодня)
 init
- запускает все нужные системе процессы
 
Что нужно для работы системы
монтирование ФС (etc/fstab)
наполнение /dev/ (в т. ч. динамическое)
- настройка сети (пользовательская vs системная)
 - регистрация пользователей (login)
 - прикладные службы (печать и т. п.)
 - запуск по расписанию
 - запуск сетевых служб по факту сетевого подключения
 - запуск нескольких экземпляров (например, несколько сетевых подключений)
 - запуск/останов по ручному запросу
 - журналирование всего
 - + Эшелонирование / зависимости компонентов (например, сетевые службы не раньше настройки сети) 
- +отладка/профилирование
 
 - ...
 
Межпроцессное взаимодействие
Традиционно: сигналы, сообщения, разделяемая память; + семафоры
В действительности: сигналы
kill и виды сигналов
Посылка сигналов с терминала, stty
Недостатки:
- Нетипизированные
 - Малое пространство имён
 - простая логика обработки (на самом деле нет)
 
D-BUS:
- Специальная служба («шина»)
 - Одна для системы + сколько хочешь для пользователя (по факту две)
 Клиент регистрирует сервис, в котором есть методы по определённым путям
- Методы можно вызвать, передав им параметры
 Можно послать сигнал, который примут все, кто на него подписался
Примеры: qdbus-viewer, dbus-monitor, notify-send, qdbus -vv org.kde.kglobalaccel /component/kwin invokeShortcut 'Window Move',
Polkit: запуск некоторых заданий с иными привилегями
- Демон, отвечающий за логику
 - Агент (суперпользователь)
 - Клиент (ходит к демону)
 
Пример gparted
Udev: заведение устройств udevadm monitor
Systemd: не успеем
TODO
