====== Процессы UNIX ====== * [[https://ru.wikipedia.org/wiki/Fork|fork в Википедии]] * [[https://ru.wikipedia.org/wiki/Процесс-зомби|Процесс зомби]] * [[https://royallib.com/book/robachevskiy_andrey/operatsionnaya_sistema_unix.html|Робачевский Андрей - Операционная система UNIX]] * [[https://parallel.uran.ru/book/export/html/396|Эффективные права процесса]] ===== Жизненный путь процесса ===== {{:processes.png|}} ===== Типы процессов ===== * Системные (имена заключены в квадратные скобки [...]) * Демоны/cервисы (usbd, httpd, sshd) * Интерактивные/прикладные процессы (vi, ls, sh, fsck ...) * Процесс init ===== Команды мониторинга процессов ===== ==== ps ==== * [[Утилита ps]] ==== top ==== * [[https://ru.wikipedia.org/wiki/Top]] * [[http://itnull.ru/threads/15-primerov-ispolzovanija-v-linux-komandy-top.930/|15 примеров использования в Linux команды top]] linux: * Отсортировать по использованию памяти: F -> n -> Enter * Вывести загрузку процессоров: 1 ==== htop ==== * [[https://ru.wikipedia.org/wiki/Htop|Wikipedia htop]] ===== Атрибуты процесса ===== * Process ID * Parent Process ID (ключ l в ps) (дерево процессов (ключ f) в linux) * TTY (столбец TT в ps, запуск команд в фоновом режиме: firefox & ) * RUID, EUID (ключ l) * Текущий каталог (pwdx ) См. [[Система безопасности UNIX]] ===== Базовые механизмы взаимодействия процессов в UNIX ===== - Перенаправление потоков ввода/вывода - Переменные окружения - Коды завершения - Сигналы - Средства программирования shell - Межпроцессные взаимодействия (unix сокеты, tcp/ip)