24552

Что такое вычислительный процесс, поток. Состояния процесса

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-08-09

72.89 KB

13 чел.

Вопрос 15. Что такое вычислительный процесс, поток? Состояния процесса.

§4.2.1.Планирование процессов и потоков.

Понятия «процесс» и «поток».

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

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

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

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

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

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

Рис. 4.2. Выполнение процесса на процессоре

Таким образом, процесс реализует две главные концепции: группирование ресурсов для программы и выполнение программы на процессоре.

Выделяют три основных состояния процесса:

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

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

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

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

Рассмотренная трактовка термина «процесс» существовала долгое время, пока не возникла необходимость в организации параллельной обработки в рамках одного процесса (приложения, программы). Для реализации этой необходимости было введено новое понятие – поток или нить (thread).

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

При этом каждый из потоков имеет собственные: программный счетчик; регистры процессора; стек; состояние.

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

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

Рис. 4.3. Выполнение потока текущего процесса на процессоре


 

А также другие работы, которые могут Вас заинтересовать

64687. Мероприятия по повышению эффективности использования трудовых ресурсов на примере ООО «Медоптика» 276.24 KB
  По мере совершенствования материально-технических условий производства и увеличения экономического потенциала возрастают потребности общественного производства в квалифицированной рабочей силе и в повышении производительности труда.
64689. Управление разработкой и внедрением нового продукта. Методические указания 203.5 KB
  Цели дисциплины Формирование базовых теоретических знаний умений и навыков решения проблем организации и управления разработкой и внедрением нового продукта управления развитием нового продукта в организации системы менеджмента...
64690. Анализ Финляндии 514.5 KB
  Финляндия первая в мире страна, где было введено понятие прав пациента в 60-х годах ХХ века. Эти права на самом деле применяются в жизни, значительно усложняя работу врача и облегчая участие в лечении пациента.
64693. Организация производства шашлычной на 70 мест 121.1 KB
  Вероятно всеобщая популярность этого блюда в пустынных и степных областях Евразии объясняется более быстрой готовкой мелко нарезанного мяса что позволяло экономить древесину. Шашлычные пользуются спросом потому что это хороший вариант для контингента нашего города...
64694. Управление персоналом как отдельное направление деятельности организации 152.69 KB
  В современной жизни сложилась ситуация при которой конкурентные преимущества предприятия определяются не столько организационно-экономическими составляющими сколько обеспеченностью предприятия квалифицированным персоналом и его эффективным управлением.
64695. Разработка проектно конструкторской документации на изготовление платья из хлопчатобумажных тканей 87.95 KB
  Совершенствование швейного производства предусматривает внедрение высокопроизводительного оборудования поточных линий расширение ассортимента и улучшение качества одежды выпуск изделий пользующихся повышенным спросом.