3. Детали процесса

Прежде чем углубляться в практическое применение управления процессами, важно понять, что такое процессы Linux и как они функционируют. Эта тема может показаться сложной по мере изучения деталей, поэтому не стесняйтесь вернуться к этому уроку позже, если потребуется.

Что такое процесс Linux

Процесс — это выполняемая программа. Точнее, это экземпляр запущенной программы, которому система выделила ресурсы, такие как память, время ЦП и ввод/вывод. Например, если вы откроете три окна терминала, запустите команду cat в двух из них без аргументов (она будет ждать стандартного ввода, сохраняя процесс активным), а затем используете третье окно для выполнения ps aux | grep cat, вы увидите два отдельных процесса cat. Каждый из них является отдельным экземпляром одной и той же программы, со своим уникальным идентификатором процесса и распределением ресурсов.

Роль ядра в управлении процессами

Ядро Linux отвечает за все управление процессами. Когда вы выполняете программу, ядро загружает ее код в память, выделяет необходимые системные ресурсы и начинает отслеживать ее как процесс. Ядро хранит подробную информацию для каждого процесса, включая:

  • Состояние процесса
  • Ресурсы, которые процесс использует и получает
  • Владелец процесса
  • Обработка сигналов (об этом позже)
  • И, по сути, все остальное

Все активные процессы конкурируют за системные ресурсы. Ядро действует как планировщик, гарантируя, что каждый процесс получает справедливую долю ресурсов в зависимости от его приоритета и потребностей. Когда процесс завершает свою задачу или завершается, ядро освобождает используемые им ресурсы, делая их доступными для других процессов.

Войдите, чтобы сохранить ваш прогресс обучения

Вход

Упражнения

Практика ведет к совершенству! Вот несколько практических лабораторных работ для закрепления вашего понимания процессов Linux и их управления:

  1. Управление и мониторинг процессов Linux - Изучите основные навыки управления и мониторинга процессов в системе Linux, включая взаимодействие с процессами на переднем/заднем плане, инспекцию с помощью ps, мониторинг с помощью top и завершение с помощью kill.
  2. Команда Linux top: Мониторинг системы в реальном времени - Научитесь использовать команду top для мониторинга системы в реальном времени, включая сортировку процессов, настройку интервалов обновления и фильтрацию по пользователю.
  3. Команда Linux free: Мониторинг системной памяти - Научитесь использовать команду free для мониторинга и анализа использования системной памяти, понимая, как ядро выделяет ресурсы процессам.

Эти лабораторные работы помогут вам применить концепции в реальных сценариях и укрепить уверенность в управлении процессами в Linux.

Тест

What manages and controls all Linux processes? Please answer in a single English word, all lowercase.