Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОТВЕТЫ_спо.doc
Скачиваний:
8
Добавлен:
01.04.2025
Размер:
1.5 Mб
Скачать
  1. Классификация процессов

Последовательный процесс (или задача) – это выполнение отдельной программы с её данными на последовательном процессоре. Также в литературе встречается другое определение процесса. Процесс – минимальный программный объект, обладающий собственными системными ресурсами (запущенная программа).

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

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

По генеалогическому признаку различают порождающее (родительские) и порожденные (дочерние) процессы. Так, в ОС Linux, многие процессы порождаются главным процессом init, создаваемым во время загрузки ядра (рис. 5.1). Процесс login отвечает за аутентификацию пользователей в операционной системе, требуя от пользователя ввести свое имя и пароль. После прохождения пользователем аутентификации с помощью процесса login, он порождает процесс оболочки, например, bash (Вourne-again shell), дающий возможность пользователю взаимодействовать с операционной системой (рис. 5.1). После этого пользователь может задавать команды в оболочке командной строки, например, запустить программу vi (текстовый редактор) или другие.

Рис. 5.1.

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

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

По принадлежности к операционной системе процессы бывают системные (исполняют программу из состава операционной системы) и пользовательские. Необходимо различать системные управляющие процессы, представляющие работу супервизора операционной системы и занимающиеся распределением и управлением ресурсов, от всех других процессов: системных обрабатывающих процессов, которые не входят в ядро операционной системы, и процессов пользователя. Для системных управляющих процессов в большинстве операционных систем ресурсы распределяются изначально и однозначно. Эти процессы управляют ресурсами системы, за использование которых существует конкуренция между всеми остальными процессами. Поэтому исполнение системных управляющих программ не принято называть процессами. Термин задача можно употреблять только по отношению к процессам пользователей и к системным обрабатывающим процессам. Однако это справедливо не для всех ОС. Например, в так называемых «микроядерных» ОС (в качестве примера можно привести ОС реального времени QNX) большинство управляющих программных модулей самой ОС и даже драйверы имеют статус высокоприоритетных процессов, для выполнения которых необходимо выделить соответствующие ресурсы. Аналогично и в UNIX-системах выполнение системных программных модулей тоже имеет статус системных процессов, которые получают ресурсы для своего исполнения.

По связности различают процессы:

а) взаимосвязанные, которые имеют какую-то связь (пространственно-временную, управляющую, информационную);

б) изолированные – слабо связанные;

в) информационно-независимые, которые используют совместные ресурсы, но имеют собственные информационные базы;

г) взаимодействующие – имеют информационные связи и разделяют общие структуры данных;

е) конкурирующие.

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

а) предшествования – один всегда находится в активном состоянии раньше, чем другой;

б) приоритетности – когда процесс может быть переведен в активное состояние только в том случае, если в состоянии готовности нет процессов с более высоким приоритетом, или процессор свободен, или на нем реализуется процесс с меньшим приоритетом;

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]