Процесс это программа в стадии выполнения

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

Подсистема управления процессами.

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

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

C++ с нуля | 08 | Компиляция и линковка

Основные функции подсистемы управления процессами:

1) распределение процессорного времени между несколькими одновременно существующими в системе процессами;

2) создание и уничтожение процессов;

3) обеспечение процессов необходимыми системными ресурсами;

4) поддержка взаимодействия между процессами.

Обычно процесс представляется как совокупность двух следующих компонентов:

1) объект ядра, через который операционная система управляет процессом, и где хранится статистическая информация о процессе;

2) адресное пространство, в котором содержится код и данные всех модулей процесса.

Процессы инертны. Чтобы процесс что-нибудь выполнил, в нем нужно создать поток. Потоки отвечают за исполнение кода, который содержится в адресном пространстве процесса. Каждый процесс может владеть несколькими потоками, которые «одновременно» исполняют код в адресном пространстве процесса.

При создании процесса первый или первичный поток обычно создается системой автоматически.

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

Состояния процесса (потока).

В многозадачной системе выделяют три основных состояний процесса:

1) выполнение – активное состояние процесса, во время которого процесс обладает всеми необходимыми ресурсами и непосредственно выполняется процессором;

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

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

Урок 33. Процессы и потоки в операционной системе

В ходе жизненного цикла каждый процесс переходит из одного состояния в другое в соответствии с алгоритмом планирования процессов, реализуемым в данной операционной системе.

Контекст и дескриптор процесса (потока).

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

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

Планирование и диспетчеризация потоков.

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

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

Планирование потоков, по существу, включает в себя решение двух задач:

1 — определение момента времени для смены текущего активного потока;

2 — выбор для выполнения потока из очереди готовых потоков.

В большинстве операционных систем универсального назначения планирование осуществляется динамически (on-line), то есть решения принимаются во время работы системы на основе анализа текущей ситуации.

Статический тип планирования используется в специализированных системах, в которых весь набор одновременно выполняемых задач определен заранее, например в системах реального времени. Планировщик называется статическим (или предварительным планировщиком), если он принимает решения о планировании не во время работы системы, а заранее (off-line).

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

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

Диспетчеризация сводится к следующему:

– сохранение контекста текущего потока, который требуется сменить;

– загрузка контекста нового потока, выбранного в результате планирования;

– запуск нового потока на выполнение.

Вытесняющие и невытесняющие алгоритмы планирования.

Вытесняющие (preemptive) алгоритмы — это такие способы планирования потоков, в которых решение о переключении процессора с выполнения одного потока на выполнение другого потока принимается операционной системой, а не активной задачей.

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

Читайте также:
Как работать с емиас программой медсестрам

Достоинство: высокая надёжность системы в целом.

Недостаток: снижение производительности за счёт траты процессорного времени на переключение задач.

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

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

Достоинство: высокая производительность, более высокая скорость переключения с потока на поток.

Недостаток: низкая надёжность, сложность разработки пользовательских приложений.

Алгоритмы планирования, основанные на приоритетах.

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

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

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

Существуют две разновидности приоритетного планирования: обслуживание с относительными приоритетами и обслуживание с абсолютными приоритетами.

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

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

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

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

Алгоритмы планирования, основанные на квантовании.

В основе многих вытесняющих алгоритмов планирования лежит концепция квантования. В соответствии с этой концепцией каждому потоку поочередно для выполнения предоставляется ограниченный непрерывный период процессорного времени — квант.

Смена активного потока происходит, если:

1 — поток завершился и покинул систему;

2 — произошла ошибка;

3 — поток перешел в состояние ожидания;

4 — исчерпан квант процессорного времени, отведенный данному потоку.

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

Кванты, выделяемые потокам, могут быть одинаковыми для всех потоков или различными.

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

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

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

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:

Источник: studopedia.ru

Лекция N 8 Концепции процесса

Для работы многопользовательских ОС весьма важным является понятие процесса, его дискретных состояний и возможностей перехода процесса из состояния в состояние. Существует много определений понятия процесса и одним из самых наглядных является следующее: процесс — это программа в стадии выполнения.

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

порождение — пользователь выдал запрос на обслуживание;

готовность — задание подготовлено соответствующими модулями ОС к выполнению, но еще не выделен ресурс «процессорное время»;

выполнение — процессу выделен центральный процессор (ЦП) и задание этого процесса выполняется;

ожидание (блокирован) — процесс вступил в эту фазу из фазы «вы полнение» и ожидает наступления некоторого события, например, окон чания считывания массива данных из дисковой памяти;

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

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

Читайте также:
Программа температура комплектующих компьютера

Переход из фазы «выполнение» в фазу «готовность» происходит в случае, если закончился квант времени, выделенный процессу. Переход из фазы «выполнение» в фазу «ожидание» происходит при запросе процесса на обмен с каким-то внешним устройством или при ожидании процессом некоторых данных, которые он должен получить от другого процесса, а также в периоды пиковой нагрузки для освобождения ресурсов.

Переход из стадии «ожидание» в стадию «завершение» может произойти, например, в случае, если запрошенный на диске файл там отсутствует. Переход из фазы «ожидание» в фазу «готовность» происходит после того, как запрошенный процессом обмен с внешним устройством успешно завершился. Граф (диаграмма) переходов процесса из состояния в состояние изображен на рис.1.

Рис.1. Граф переходов процесса из состояния в состояние

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

Представителем процесса в ОС является блок управления процессом (БУП). Это структура данных, содержащая определенную важную информацию о процессе, в том числе:

v текущее состояние процесса;

v уникальный идентификатор процесса;

v приоритет процесса;

v указатели памяти процесса;

v указатели выделенных процессу ресурсов;

v область сохранения регистров.

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

Операции над процессами

ОС, управляющие процессами, должны иметь возможность выполнять определенные операции над процессами, в том числе:

q создание (образование) процесса;

q уничтожение процесса;

q возобновление процесса;

q изменение приоритета процесса;

q блокирование процесса;

q пробуждение процесса;

q запуск (выбор) процесса.

q Создание процесса состоит из многих операций, включая:

q присвоение имени процессу;

q определение начального приоритета процесса;

q формирование БУП;

q выделение процессу начальных ресурсов.

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

Основные функции ядра ОС

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

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

Ядро ОС обычно содержит программы для реализации следующих функций:

Ø обработка прерываний;

Ø создание и уничтожение процессов;

Ø переключение процессов из состояния в состояние;

Ø организация взаимодействия между процессами, в том числе синхронизация процессов;

Ø поддержка операций ввода-вывода;

Ø поддержка распределения и перераспределения памяти;

Ø поддержка работы файловой системы;

Ø поддержка механизмов вызова-возврата при обращении к процедурам ОС;

Ø поддержка функций по ведению учета работы ЭВМ и ВС в целом.

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

Планирование загрузки процессоров

Процесс получает возможность выполнять конкретную работу, когда в его распоряжение выделяется физический ЦП; при наличии нескольких процессов, конкурирующих за ресурсы, в том числе за ЦП, это выделе-ние является достаточно сложной проблемой, которая решается ОС. Сама проблема получила название «планирование загрузки процессоров».

Для ЭВМ 2-го и отчасти 3-го поколений основным режимов функционирования была пакетная обработка. Суть ее состояла в том, что из задач, сданных пользователями для решения на ЭВМ и введенных в нее оператором этой машины, ОС формировала так называемые задания. В любой момент времени задание состояло из нескольких задач. Поэтому для рассматриваемых ОС можно было говорить одвух уровнях планирования загрузки ЦП:

o долгосрочном планировании, или планировании на верхнем уровне, при котором ОС решала сложную проблему набора таких задач в задание (т.е. формирования пакета задач), чтобы обеспечить достаточно высокую загрузку ЦП;

o краткосрочном, или диспетчерском планировании, т.е. планировании на нижнем уровне самих процессов.

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

Основные цели планирования

Дисциплина планирования должна:

1. быть «справедливой», т.е. одинаково относиться ко всем процессам и не задерживать достаточно долго обслуживание какого-то процесса;

2. обеспечивать максимальную пропускную способность системы, т.е. обслуживать максимальное число процессов в единицу времени;

3. обеспечивать максимальному числу пользователей приемлемые времена ответа.

Планирование с переключением и без переключения

Планирование с переключением (ПСП) имеет место, если у процесса может быть отобран ЦП. Если ЦП отобрать нельзя, то это планирование без переключения (ПБП).

ПСП необходимо в системах, в которых процессы высокого приоритета требуют немедленного внимания, например, в системах реального времени. ПСП необходимо и в интерактивных системах для того, чтобы гарантировать приемлемое время ответа. ПСП характеризуется по сравнению с ПБП повышенным уровнем накладных расходов времени ЦП, в том числе на выполнение процедур прерывания и восстановления прерванных процессов, на большее количество подкачек программ и данных из внешней памяти в оперативную память. Вторая составляющая дополнительных потерь может быть уменьшена путем размещения программ большего числа пользователей в оперативной памяти, что требует увеличения объема этой памяти в ВС, используемых в интерактивном режиме. Существует еще один путь уменьшения накладных расходов времени ЦП в тех интерактивных системах, в которых пользователи используют одни и те же программы и/или данные — создание механизмов совместного использования программ и данных, например, совместно используемые программы должны быть реентерабельными, т.е. повторно входимыми.

Читайте также:
Что такое программа самдрайверс

Использование приоритетов при планировании процессов

Приоритеты обслуживания процессов могут быть статическими и динамическими.

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

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

Дисциплины распределения ресурсов, используемые в ОС

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

дисциплины формирования очередей на ресурс;

дисциплины обслуживания очередей.

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

1. Дисциплина обслуживания в порядке поступления: первый пришедший обслуживается первым (FIFO: first in — first out); все заявки при этом поступают в конец очереди, а первыми обслуживаются заявки из начала очереди; один из главных его недостатков — короткие процессы должны ждать полного выполнения длинных процессов, поэтому эту дисциплину не рекомендуется использовать в интерактивных системах, так как она не может обеспечить приемлемые времена ответа; обычно эта дисциплина применяется в комбинации с другими методами, например, в многоуровневых очередях с обратными связями;

2. Дисциплина обслуживания в порядке, обратном порядку поступления (LIFO: last in — first out); широко используется на практике, в частности, при использовании стеков в оперативной памяти;

3. Круговой циклический алгоритм, основанный на принципе FIFO, но в данном случае время обслуживания ограничено и меньше или равно значения кванта времени Т; если запрос не успевает быть обслуженным за время Т, то он прерывается и становится в хвост очереди; эта дисциплина достаточно эффективна в интерактивных системах, обеспечивая приемлемые времена ответа для каждого пользователя.

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

О выборе величины кванта времени

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

Обозначим через t время ответа системы, т.е. время от момента ввода задания с терминала до выдачи ответа на соответствующий дисплей. Рассмотрим характерные точки примерного графика зависимости t=f(Т). Обозначим через Т(пер) время, затрачиваемое ЦП на переключение из одного процесса в другой.

При выполнении условия Т < T(пер) очевидно, что величина t будет бесконечно велика, так как все время работы ЦП будет затрачиваться только на переключение из процесса в процесс. Далее по мере роста Т величина t будет сначала уменьшаться и достигнет своего минимального значения min t; это значение Т обозначим opt Т. При дальнейшем росте Т величина t снова начнет возрастать, так как процессы с малым временем ответа будут сравнительно долго ждать, пока будет идти выполнение процессов с относительно большими временами ответа; при этом величина t будет стремиться снизу к некоторому предельному значению max t, характерному для ВС с дисциплиной обслуживания FIFO. Конечно, величина opt T меняется внутри системы в зависимости от ее нагрузки и тем более при переходе на другую систему.

Воспользуйтесь поиском по сайту:

Источник: studopedia.org

Понятие «Операционная система». (1-1)

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

Расположение ос в общей структуре компьютера

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

Выше у некоторых компьютеров расположен микроархитектурный (микропрограммный) уровень – примитивная программная прослойка, напрямую работающая с оборудованием и располагающаяся в ПЗУ. Основное его назначение – интерпретация машинных команд. Нужен, чтобы безболезненно переходить с одной архитектуры на другую.

Система команд содержит 50-300 команд, предназначенных для перемещения данных, выполнения арифметических и сдвиговых операций, сравнения величин. Управление устройствами на этом уровне осуществляется с помощью специальных регистров устройств, методов адресации и оперативной памяти компьютера.

Уровень операционной системы состоит из ядра ОС и системных программ. Ядро – это та часть программ, которые всегда находятся в оперативной памяти. Системные программы загружаются в оперативную память по мере необходимости.

Прикладные программы – приобретаются или пишутся самим пользователем.

Функции ос

  1. Определяет интерфейс пользователя.
  2. Обеспечивает распределение аппаратных ресурсов между процессами (пользователями).
  3. Планирует доступ пользователей к общим ресурсам.
  4. Обеспечивает эффективное выполнение операций ввода/вывода.
  5. Осуществляет восстановление информации и вычислительных процессов в случае ошибок.
  1. Память (оперативная и внешняя).
  2. Устройства ввода/вывода (периферийные).
  3. Данные.
  4. Программы.
  • Выгружаемые – такие ресурсы можно безболезненно забирать у владеющего ими процесса (например, оперативная память).
  • Невыгружаемые. Например, компакт-диски.
  • Исчерпаемые (память, файл).
  • Неисчерпаемые (круговой конвеер).
  1. Запрос ресурса
  2. Использование
  3. Возврат
  • Пользователями
  • Программами (прикладными и системными)
  • Аппаратными средствами
  • Управление процессами и потоками;
  • Обработка прерываний;
  • Поддержка операций ввода/вывода;
  • Управление оперативной памятью;
  • Поддержка работы файловой системы;
  • Функции учета работа компьютера (различная статистическая информация).
  1. Выполняется – если в данный момент времени ему выделен ЦП.
  2. Готов – если он мог бы использовать ЦП, предоставленный в его распоряжение.
  3. Блокирован – если он ожидает появления некоторого события (например, ввода).
  4. (Приостановлен) – промежуточное состояние, не называть!

Источник: studfile.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru