## Дмитрий Кетов - "Внутреннее устройство Linux" (рандомные заметки) ### Главы 1, 2 В Linux 2 режима работы программных средст - kernel mode (kernel space), user mode (user space). Основное различие в привелегиях доступа к аппартаным средаствам. Совокупность работающих в ядерном режиме программ называют ядром Ф-ии ОС реализуемые ядерными компонентами, доступны внеядерным посредством системных вызовов (стр.23) Кроме всех вышеперечисленных задач, файловая подсистема, подсистема ввода-вывода и подсистема управления процессами в совокупности предоставляют процессам средста межпроцессорного взаимодействия, такие как сигналы, каналы, сокеты и разделяемая память - `strace` - Системные вызовы (ядро) - `ltrace` - Библиотечные функции (например, libc) Сеанс командного интерфейса пользователя продолжается двусторонним попеременным диалогом с командным интерпретатором, где пользователь вводит команды и получает результат их выполнения. - `users, who, w` - списко всех терминальных входов пользователей `^D` - используется для оповещения драйвера о завершении ввода при работе с интерактивными (ведущими с пользователем двусторонний попеременный диалог) программами `^Z` - временно приостанавливает выполняющуюся программу `finger ` - свойства учётной записи пользователя ### Глава 3 - Подсистема управления файлами и вводом-выводом - В аббревиатуре UNICS, да-да UNICS (UNICS был до UNIX), а не UNIX, центральное место занимает идея решать задачи единым способом - Информация есть файл - Файл является единицей обеспечения доступа к информации, а не единицей ей хранения, как в других ОС - /etc - editable text configuration - sbin - superuser's binaries для программ системного администрирования - Каналы и сокеты используют для передачи данных от процесса к процессу оперативную память ядра ОС, а не память накопителя, как обычные файлы - Канал - однонаправленная передача (симплексная) - Сокет двунаправленная (дуплексная). Сокет используют при взаимодействии по схеме клиент-сервер - `stat ` - метаданные файла