processes unix process control
Управління процесами в Unix:
У Unix усі інструкції поза ядром виконуються в контексті процесу.
Процес - це послідовність інструкцій, і кожен процес має до себе блок керованих даних. Процесами можна маніпулювати подібним чином, як файлами.
Наприклад, як 'ls' is можна використовувати для перегляду списку файлів, 'ps' можна використовувати для перегляду списку процесів.
Відео Unix # 23:
У цьому підручнику ми розглянемо, яка інформація, пов’язана з процесом, зберігається, а також опишемо деякі команди, які використовуються для управління процесами. Ми також надамо короткий опис способу налагодження сценаріїв команд.
Що ви дізнаєтесь:
найкращий безкоштовний очищувач реєстру для Windows 10 -
Інформація про процес Unix
Таблиця процесів містить інформацію про всі процеси, які виконуються в даний час. Основна мета цієї таблиці - ефективно керувати всіма запущеними процесами.
Примітка: Як багатозадачність та багатокористувацька ОС, Unix матиме багато процесів, що працюють одночасно.
Таблиця містить таку інформацію:
- Ідентифікатор процесу
- Ідентифікатор батьківського процесу
- Стан процесів
- Використання процесора
Процеси в Unix проходять через різні стани залежно від різних обставин. Зміни стану можуть бути спричинені тим, чи потрібно процесу чекати завершення операції читання або запису, або коли інший більш терміновий процес повинен мати можливість запуску.
Команди управління процесом
Існує ряд команд, доступних для перегляду та управління процесами. Команда ‘ps’ може використовуватися для перегляду інформації про стан процесу.
Команда | ps - надає інформацію про всі запущені в даний час процеси. |
---|---|
Загальний синтаксис | $ ps (ВАРІАНТИ) |
Приклад1 | $ ps Дає інформацію про процес, включаючи PID, назву терміналу, час створення та назву процесів. |
Як обговорювалося в попередньому підручнику, процеси можна класифікувати як передній план, фон або демон. Коли команда виконується з терміналу, вона виконується нормально на передньому плані. Для запуску процесу у фоновому режимі можна використовувати кнопку «&» в кінці команди.
Приклад:
$ grep “how” file1 > file2 &
Ця команда буде шукати рядки, що містять шаблон 'як', і збереже вихідні дані у файлі2. Якщо файл1 досить великий, ми можемо захотіти продовжити інші дії та виконати цю команду у фоновому режимі. З кінцем «&» ця команда буде виконуватися як процес у фоновому режимі.
Можна призупинити процес переднього плану за допомогою команди ‘^ Z’. Ця команда переміщує поточний процес переднього плану у призупинений стан у фоновому режимі. Звідти процес можна або натиснути на відновлення у фоновому режимі за допомогою команди ‘bg’, або повернути його на передній план за допомогою команди ‘fg’.
Запитання щодо інтерв’ю в sql для досвідчених професіоналів
Кожен процес також пов'язаний з пріоритетом. Це використовується для того, щоб ОС могла справедливо розподілити час для різних завдань обробки. Команда 'nice' може бути використана для зменшення пріоритету процесу і, таким чином, бути 'nice' для інших процесів, тобто
$ приємно
Цей рядок буде запускати зазначену команду з нижчим пріоритетом - за замовчуванням пріоритет буде зменшений на 10. Команда також приймає параметр, який може використовуватися для використання різного рівня 'приємності'.
Приклад:
$ nice -20 ls
Ця команда запускає 'ls' із пріоритетом, зменшеним на 20.
Також можна підвищити пріоритет за допомогою негативної «приємності». Однак для цього потрібен дозвіл суперкористувача.
Коли термінал або сеанс входу закриті, він надсилає сигнал SIGHUP дочірнім процесам. За замовчуванням цей сигнал призведе до завершення дочірніх процесів. Команда ‘nohup’ може бути використана, щоб дозволити командам продовжувати працювати навіть після завершення сеансу входу.
Приклад:
$ nohup soft file1 > file2
За допомогою цієї команди процес сортування file1 та збереження у файлі2 буде продовжено, навіть якщо ми вийшли з системи.
програмне забезпечення для завантаження відео з YouTube безкоштовно завантажити -
Команда «вбити» може бути використана для завершення будь-якого з процесів залежно від дозволів.
Приклад:
$ kill (options)
Ця команда завершить процес з ідентифікатором процесу. PID процесу можна отримати за допомогою команди ‘ps’.
Ця команда ‘at’ використовується для виконання команд у певну дату та час у майбутньому.
Приклад:
$ at 8pm sort file1>file2
Налагодження Unix
Unix надає ряд механізмів, які допомагають знаходити помилки у ваших скриптах команд. Ці механізми можна використовувати для перегляду сліду того, що виконується, тобто послідовності, в якій виконуються команди. Трасування можна використовувати для розуміння та перевірки логіки та керування потоком сценарію.
=> встановити -v
детальний режим: Встановлення цієї опції перед запуском команди гарантує, що команда, яка буде виконуватися, буде надрукована до stdout перед її фактичним виконанням.
=> встановити -x
режим трасування виконання: Встановлення цієї опції відображатиме кожну команду під час її виконання разом із аргументами.
=> встановити -n
режим без виконання: Встановлення цієї опції відображає помилки без фактичного запуску команд.
Перегляньте наш майбутній підручник, щоб дізнатися більше про це Розширений сценарій оболонки.
НАЗАД Підручник | НАСТУПНИЙ підручник
Рекомендована література
- Команди управління процесами Unix, такі як Ps та Top (Частина C)
- Команди Unix: основні та вдосконалені команди Unix з прикладами
- Команди обробки тексту Unix: фільтри Unix із прикладами
- Підручник з труб Unix: Труби в програмуванні Unix
- Більше команд Unix Filter та Awk, Sed в обробці тексту
- Аргументи командного рядка в сценарії оболонки Unix з прикладом
- Підручник для початківців UNIX (20+ поглиблених навчальних відеороликів Unix)
- Як порівняти два файли в Unix: команди порівняння файлів