Последовательный процесс («задача») – выполнение отдельной программы с ее
данными на последовательном процессоре. Процессор имеет два аспекта:
- носитель данных;
- исполнитель операций, связанных с обработкой данных.
С процессом связано понятие ресурса. Термин ресурсотносится к используемым,
относительно стабильным и часто недостающим объектам, которые запрашиваются,
используются и освобождаются процессами в период их активности.
Ресурсы могут быть:
- разделяемыми;
- неделимыми.
Разделяемые ресурсы могут использоваться:
- одновременно (в один и тот же момент времени);
- параллельно (в течение некоторого отрезка времени процессы используют
ресурс попеременно).
Мультипрограммный режим работы вычислительной системы заключается в том,
что пока одна программа (процесс, задача) ожидает завершения очередной операции
ввода/вывода, другая программа (задача) может быть поставлена на выполнение.
При мультипрограммировании повышается пропускная способность системы, но
отдельный процесс никогда не может быть выполнен быстрее, чем, если бы он
выполнялся в однопрограммном режиме.
ОС поддерживает мультипрограммирование (многопроцессность) и старается
эффективно использовать ресурсы путем организации очередей запросов.
При необходимости использовать какой-либо ресурс процесс обращается к
супервизору ОС и сообщает ему свои требования (вид ресурса, объем и т.д.). Эта
директива переводит процессор в привилегированный режим, если он есть.
Ресурс будет выделен обратившемуся за ним процессу, если:
- он свободен и нет задач с более высоким приоритетом, обратившимся за этим
ресурсом;
- текущий запрос и ранее выданные запросы допускают совместное
использование ресурсов;
- ресурс используется задачей с более низким приоритетом и может быть
временно отобран.
Если ресурс занят, ОС ставит задачу в очередь к ресурсу, переводя ее в состояние
ожидания. Очередь к ресурсу может быть организована u1088 различными способами, но
обычно с помощью списковой структуры.
После завершения работы с ресурсом задача с помощью системного вызова
супервизора сообщает ОС об отказе от ресурса.
Супервизор ОС, получив управление, освобождает ресурс и проверяет, есть ли
очередь к этому ресурсу. Если очередь есть, то в зависимости от дисциплины
обслуживанияи приоритетов задач, ожидающих данный ресурс, супервизор выбирает
задачу и переводит ее в состояние готовности к выполнению. Управление будет передано
либо этой выбранной задаче, либо той, которая только что освободила ресурс.
При выдаче запроса задача может указать, хочет ли она владеть ресурсом
монопольно или совместно с другими задачами (файл).
При организации управления ресурсами требуется принять решение о том, что в
данной ситуации выгоднее:
- быстро обслуживать отдельные наиболее важные запросы;
- предоставлять всем процессам равные возможности;
- обслуживать максимально возможное количество процессов;
- наиболее полно использовать ресурсы.
-