Хелпикс

Главная

Контакты

Случайная статья





Классификация процессов



Классификация процессов

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

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

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

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

Программные процессы принято делить на системные и пользовательские. При развитии системного процесса исполняется программный код из состава операционной системы. При развитии пользовательского процесса исполняется пользовательская (прикладная) программа.

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

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

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

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

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

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

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

 

 

Вопросы самоконтроля

1. Как принято делить программные процессы

 

2. Что такое отношение предшествования

 

3. Что такое отношение приоритетности.

 

4. Что такое отношение взаимного исключения                                           

5. Что такое порождающий процесс                                                                

6. Что такое порожденный процесс

7. Что такое программные потоки                                                           

8. Что такое активное состояние                                                                                     

9. Что такое ожидание                                                                                  

10. Что такое готовность                                                                                                  

11. Что такое окончание

12. Какие процессы называются последовательными

13. Какие процессы называются параллельными

14. В каком случае процессы являются взаимосвязанными

15. В каком случае процессы являются конкурирующими

 

Рекомендованная литература:

1. Спиридонов, Э.С. Операционные системы / Э.С. Спиридонов, М.С. Клыков, М.Д. Рукин и др. - М.: КД Либроком, 2017

2. Таненбаум. - СПб.: Питер, 2019.

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.