Найти тему
Course IT

Введение в курс "Операционные системы и среды" №2

Процессы. Блок управления процессом

Одна из задач операционной системы — распределение ресурсов между процессами.

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

процессы - можно представить совокупностью набора исполняющихся команд, ассоциированных с ним ресурсов и текущего момента его выполнения.

ОС Процессы формируются в очередь по приоритету (число, которое присваивает ос).

Для управления процессами ОС на каждый процесс создает ИС, которая называется блок управление процессами.

БУП содержит:

  1. уникальный идентификатор.
  2. приоритет.
  3. состояние процесс.
  4. адресное пространство.
  5. аппаратные ресурсы.

Так как инфа в БУПе меняется мгновенно, то хранится он в регистрах ЦПУ.

Для управления процессами в разных ОС используются команды.

Процесс – это программа ЦПУ.

За время своего жизненного цикла процесс может находиться в нескольких стадиях:

Жизненный цикл процесса
Жизненный цикл процесса
состояние готовности - ожидание пока ОС переключение ЦПУ в АЗУ.
состояние выполнения - выполнение задачи.
состояние блокировки - ожидание данных.

Существует 2 вида процессов:

  • Системный процесс

Системные процессы выполняют системный код и применяются к системе в целом.

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

  • Пользовательский процесс

Пользовательские процессы же выполняют собственный (пользовательский) код. Выполняя собственный код, пользовательский процесс пребывает в пользовательском режиме (user mode).

В US есть ограничения на выполнение указаний: например, такие системные функции как read(), write() или open(). в случае вызова подобных функций выполняется системный вызов.

Системный вызов заключается в обращении процессора к ядру ОС. В это время пользовательский процесс переходит из US в привилегированный режиме или режиме ядра (kernel mode), и находится на первом месте по приоритету (не может быть изменен другим пользовательским процессом).

Рассмотрим этот вопрос подробнее на примерах Windows 10

Приложение "Диспетцер задач"

"Диспетцер задач" - раздел "Процессы"
"Диспетцер задач" - раздел "Процессы"

Первое что мы можем видеть - раздел "Процессы". В данном разделе есть такая информация о процессе, как имя, ID, состояние, объем потребляемой памяти и т.д..

В столбце "Имя" есть подразделы процессов, их в Windows 10 всего три:

  • Приложение

Это процессы штатных и сторонних прикладных программ (обыкновенные приложения, с которыми работает пользователь).

  • Фоновые процессы

Данные процесс не имеют окон, то есть работают в фоне. Среди них могут встречаться как процессы, запущенные системой (службы), так и процессы сторонних программ, например, антивирусов.

  • Процессы Windows

Это группа системных процессов, процессы ОС. Они обеспечивают нормальное функционирование программы.

В приложении также интересен раздел "Подробности"

"Диспетцер задач" раздел "Подробности"
"Диспетцер задач" раздел "Подробности"

В этом разделе мы можем подробно рассматривать процессы Windows.

Для этого разберем основные системные процессы:

• svchost.exe – системный процесс, отвечающий за управление разными службами, служит своего рода контейнером для подпроцессов, использующих библиотеки DLL. В Диспетчере задач представлен несколькими экземплярами, большинство из которых являются критически важными для работы Windows. Располагается в папке System32, часто служит мишенью для вирусов.

• lsass.exe – важный системный процесс, отвечающий за авторизацию в системе. Если последняя прошла успешно, он инициирует запуск Проводника с помощью специального маркера. В отличие от svchost.exe, процесс lsass.exe всегда запускается с правами SYSTEM. Для работы системы критически важен. Располагается в папке System32, часто избирается мишенью для вредоносного ПО.

• explorer.exe – наиболее известный процесс, отвечающий за отображение графической оболочки Windows 10, позволяет осуществлять навигацию. Отключение не приведет к завершению работы системы, но сделает использование GUI невозможным. Запускается процесс из папки Windows, может иметь несколько экземпляров.

• sihost.exe – данный системный хост-процесс участвует в обслуживании инфраструктуры оболочки, позволяет открывать центр действий, различные меню, в том числе меню Пуск. Исполняемый файл запускается из папки System32.

• ntoskrnl.exe или system – базовый, критически важный процесс ядра операционной системы, отвечающий за работу множества системных функций и драйверов устройств. Завершение процесса System не предусмотрено, функционирование системы без него невозможно. Исполняемый файл располагается в папке System32.

• wininit.exe – этот процесс управляет автозагрузкой приложений в Windows, кроме того, он запускает ряд важных служб как SCM LSASS и LSM (диспетчер управления службами). Исполняемый файл располагается в папке System32. Случаи подмены вирусом не замечены.

• dwm.exe или диспетчер окон десктопа – процесс управляет визуальными эффектами важных элементов оболочки: десктопа, меню, окон и так далее. Запускается из каталога System32. Вероятность заражения невелика.

• smss.exe – управляет подсистемой менеджера сеансов Windows (сеансом авторизовавшегося юзера). Инициирует старт процессов Winlogon и Win32, участвует в установке переменных системы. Для Windows критически важен, файл лежит в директории System32, вероятность заражения оценивается как высокая.

• services.exe – важный процесс, отвечающий за управление системными службами. Запускается из директории System32, владельцем является Система. Работа процесса под другим пользователем будет указывать на вероятное заражение или подмену.

• winlogon.exe – отвечает за авторизацию (вход) конкретного юзера в систему и выход из нее. Запускается из папки System32, случаи заражения и подмены вирусом встречаются нечасто.

• csrss.exe – этот процесс управляет работой консольных приложений, например, командной строкой, является подсистемой компонента клиент-сервер. Исполняемый файл лежит в папке System32, вероятность заражения оценивается как высокая.

Также существуют такие системные процесс, которые отображаются как фоновые:

RuntimeBroker.exe – один из основных процессов ядра Windows 8.1 и 10, управляющий разрешениями универсальных приложений, к примеру, доступом к камере или микрофону. Каждому запущенному UWP-приложению соответствует свой экземпляр процесса RuntimeBroker. Исполняемый файл находится в каталоге System32.

• ApplicationFrameHost.exe – еще один процесс, отвечающий за работу UWP-программ. В Windows 10 обеспечивает запуск универсальных приложений в окнах независимо от используемого режима. Процесс может быть закрыт принудительно, но при этом будут закрыты и все запущенные UWP-приложения, включая работающие в фоне. Обитает exe-файл процесса в System32.

• ctfmon.exe – процесс обеспечивает работу языковой панели, управляет вводом данных. Не является критическим, при завершении пользователем обычно перезапускается автоматически. Исполняемый файл лежит в System32, случаи использования вирусами редки.

• SecurityHealthService.exe – системная служба, отвечающая в Windows 10 за работу Центра безопасности. Управляется Системой, завершение через Диспетчер задач не предусмотрено. Файл приложения находится в папке System32.

• spoolsv.exe – процесс, обеспечивающий вывод на печать с использованием принтера и других подобных устройств. Не является особо важным, может быть завершен из Диспетчера задач или отключен в службах. Файл находится в System32, заражение и использование вирусами маловероятно.

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