24552

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

Доклад

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

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

Русский

2013-08-09

72.89 KB

11 чел.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


 

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

50634. ИССЛЕДОВАНИЕ РАБОТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ VIPNET ГЕНЕРАТОР ПАРОЛЕЙ 54.5 KB
  Для ввода пароля как правило используется штатная клавиатура КС. Запись пароля значительно повышает вероятность его компрометации нарушения конфиденциальности. Желательным является наличие в пароле парадоксального сочетания букв слов полученного например путем набора русских букв пароля на латинском регистре. Для того чтобы воспрепятствовать использованию злоумышленником похищенного пароля в его тексте должны быть мысленно предусмотрены не записываемые на бумаге пробелы или другие символы в начале внутри а также в конце основных...
50635. ИССЛЕДОВАНИЕ РАБОТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ DEVICELOCK 54 KB
  Изучение функционирования программного обеспечения DeviceLock предназначенного для контроля доступа пользователей к дисководам CDROMам другим сменным устройствам адаптерам WiFi и Bluetooth а также к USB FireWire инфракрасным COM и LPT портам приобретение навыков по работе с данным продуктом. Сущность разграничения доступа к элементам защищаемой информации заключается в том чтобы каждому зарегистрированному пользователю предоставить возможности беспрепятственного доступа к информации в пределах его полномочий и исключить возможности...
50636. ИССЛЕДОВАНИЕ РАБОТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ SAFE.N.SEC 54 KB
  Изучение функционирования программного обеспечения Safe. Программное обеспечение Safe.Sec документация Safe.
50637. ПОДСИСТЕМЫ ПАРОЛЬНОЙ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЕЙ. ГЕНЕРАТОРЫ ПАРОЛЕЙ. ОЦЕНКА СТЕПЕНИ СТОЙКОСТИ ПАРОЛЬНОЙ ЗАЩИТЫ 114 KB
  Реализация простейшего генератора паролей обладающего требуемой стойкостью к взлому. Как правило для помощи администратору безопасности в формировании паролей подчиненных ему пользователей удовлетворяющих перечисленным требованиям к паролям используются особые программы автоматические генераторы паролей пользователей. При выполнении перечисленных требований к паролям и к подсистеме парольной аутентификации единственно возможным методом взлома данной подсистемы злоумышленником является прямой перебор паролей brute...
50638. ЗАЩИТА ДОКУМЕНТОВ MICROSOFT OFFICE. ЗАЩИТА ИНФОРМАЦИИ В АРХИВАХ 124.5 KB
  Изучить способы защиты документов в пакете MICROSOFT OFFICE и в архивах. При работе с приложениями MS Office возникает проблема обеспечения защиты информации содержащейся в документе для чего в пакет Microsoft Office были введены различные типы защит.
50639. Обнаружение уязвимостей сетевого узла с помощью сканеров безопасности 223.5 KB
  Протоколы семейства TCP IP используемые в качестве основы взаимодействия в Internet не соответствуют современным требованиям по обеспечению безопасности. Наличие неустранимых уязвимостей в базовых протоколах TCP IP приводит к появлению все новых видов атак направленных на получение НСД отказа в обслуживании и т. Для этого NMp использует много различных методов сканирования таких как UDP TCP connect TCP SYN...
50640. Сканеры безопасности операционных систем 144.5 KB
  Познакомиться на практике со сканером безопасности уровня ОС System Scnner. В данной лабораторной работе будет рассмотрен один из известных сканеров безопасности уровня ОС System Scnner. SYSTEM SCNNER Система анализа защищенности System Scnner S2 разработана американской компанией Internet Security Systems Inc. В отличие от систем Internet Scnner и аналогичных ей таких как XSpider NMp анализирующей уязвимости на уровне сетевых сервисов система S2 анализирует уязвимости на уровне операционной системы.
50641. Найти кинематический закон движения точки 230 KB
  Найти кинематический закон движения точки. Спроецируем точки на координатные оси с учетом масштаба и выпишем таблицу координат точки считая что фотографирование началось при t=0. Окончательно найденный кинематический закон движения материальной точки: x=xt= 296t55 и y=yt= 182t2–25t5 Задание№2. Найти модуль скорости точки в середине интервала наблюдения и углы составляемые вектором скорости с осями координат в этот момент.