Модель процесса

Мультипрограммирование

Мультипрограммирование, или многозадачность {multitasking), — это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются сразу несколько программ. Эти программы совместно используют процессор, оперативную и внешнюю память, устройства ввода-вывода, данные.

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

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

Последовательный процесс, иногда называемый задачей (task), — это отдельная программа с ее данными, выполняющаяся на последовательном процессоре.

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

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

Модель процесса

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

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

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

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

Одна из основных подсистем ОС - подсистема управления процессамии потоками, которая занимается:

· созданием и уничтожением процессов,

· поддерживает взаимодействие между процессами,

· распределяет процессорное время между несколькими одновременно существующими в системе процессами и потоками.

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


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




Подборка статей по вашей теме: