Лекция "Понятие мультипрограммирования. Способы управления процессом в режиме мультипрограммирования."
Оценка 4.8

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

Оценка 4.8
Лекции
docx
информатика
Взрослым
11.03.2017
Лекция "Понятие мультипрограммирования. Способы управления процессом в режиме мультипрограммирования."
С понятиями процесс и поток тесно связано понятие мультипрограммирования. Мультипрограммирование, или многозадачность (multitasking), - это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются сразу несколько задач (программ). Общие критерии эффективности мультипрограммирования: • пропускная способность; • удобство работы пользователей; • реактивность системы (заданные интервалы времени). В зависимости от критерия различают: • системы пакетной обработки; • разделения времени; • системы реального времени
билет 10 тема 3.docx
билет 10 тема 3 105  Понятие мультипрограммирования. Способы управления процессом в режиме  мультипрограммирования. С понятиями процесс и поток тесно связано понятие мультипрограммирования. Мультипрограммирование, или многозадачность (multitasking), ­ это способ организации  вычислительного процесса, при котором на одном процессоре попеременно выполняются  сразу несколько задач (программ). Общие критерии эффективности мультипрограммирования:  ∙ пропускная способность;  ∙ удобство работы пользователей;  ∙ реактивность системы (заданные интервалы времени).  В зависимости от критерия различают: ∙ системы пакетной обработки;  ∙ разделения времени;  ∙ системы реального времени.  Мультипрограммирование в системах пакетной обработки Главная цель: минимизация простоев всех устройств компьютера. Это, как правило, задачи  вычислительного характера. Оператор формирует пакет заданий и вводит его тем или  иным способом во внешнюю память. ОС выбирает из пакета мультипрограммную смесь из  программ, таким образом, чтобы максимально загрузить систему. В этом режиме невозможно гарантировать выполнение задачи в течении определенного  времени. Мультипрограммирование организованно за счет параллельной работы канала или контроллера и процессора. Переключение процессора с одной задачи на другую ­ инициатива самой задачи. В  подобных системах пользователь отстраняется от вычислительного процесса. Примерами  ОС пакетной обработки являются ОС для мэйнфреймов IBM 360/370/390. Мультипрограммирование в системах разделения времени Основной критерий систем разделения времени ­ повышение удобств и эффективности  работы пользователей. Такие ОС позволяют организовать интерактивную работу  пользователей с несколькими приложениями. Мультипрограммирование организуется путем выделения каждой задаче некоторого,  достаточно небольшого отрезка времени ­ кванта. Задача принудительно  приостанавливаются по завершению кванта и в соответствии с заложенным алгоритмом,  выбирается на выполнение новая задача. Системы разделения времени имеют меньшую пропускную способность по сравнению с  системами пакетной обработки при прочих равных условиях. Это обусловлено потерей  времени на переключение процессора с задачи на задачу. ОС MS Windows 98/NT/2000/XP, Unix являются примерами систем разделения времени. ОС реального времени используются при управлении техническими объектами или технологическими процессами  Особенность: наличие предельного времени в течении которого должна быть выполнена та  или иная задача (реактивность системы). Мультипрограммная смесь (т.е. набор задач, одновременно выполняемых) представляет  собой: фиксированный набор заранее разработанных программ, а выбор на выполнение ­ по  прерываниям (или по расписанию). Для систем реального времени важна скорость обработки прерываний. Задача  максимальной загрузки устройств ­ не актуальна. Мультипроцессорная обработка Мультипроцессорная обработка ­ это способ организации вычислительного процесса в  системах с несколькими процессорами. В отличие от организации  мультипрограммирования на одном процессоре, мультипроцессорная обработка предполагает действительно одновременное выполнение нескольких процессов. Это  приводит к усложнению всех алгоритмов ОС. Симметричная архитектура предполагает однородность всех процессоров и единообразное  их включение в общую схему. Традиционно все процессоры при этом разделяют одну  память и как следствие находятся в одном корпусе. При асимметричной архитектуре процессоры могут отличаться своими техническими  характеристиками и функциональной ролью. Требование единого корпуса отсутствует.  Система может состоять из нескольких корпусов (в каждом может быть один или  несколько процессоров). Такие устройства называются кластерами. Для симметричной архитектуры вычислительный процесс может строится симметричным  образом (все процессоры равноправны) или асимметричным (процессоры различаются  функционально). Для асимметричной архитектуры возможен только асимметричный способ организации. Мультипрограммирование на основе прерываний Прерывание – это способ переключения процессора на выполнение потока команд,  отличного от того который выполнялся, с последующим возвратом. Различают следующие типы прерываний: ∙ внешние (аппаратные);  ∙ внутренние (исключения ­exception);  ∙ программные.  Внешние прерывания происходят асинхронно, т.е. происходят в случайный момент времени в процессе выполнения программы (например, от внешних устройств), внутренние –  синхронно, т.е. возникают по конкретной причине и можно предугадать возникновение  такого прерывания (например, при делении на ноль). Программные прерывания не являются "истинными" прерываниями. Они возникают при  выполнении определенной команды процессора и применяются в том случае, когда  необходимо выполнить некоторые привилегированные действия (например обратится к  порту компьютера). Прерываниям равного значения приписываются уровни приоритетов (уровни ­ IRQ). Каждое из прерываний обслуживается обработчиком прерываний (Interrupt Service  Routine). Внешние – обрабатываются драйверами, внутренние – модулями ядра, программные –  процедурами из API. Механизм прерываний Механизм прерываний поддерживается аппаратными и программными средствами ОС.  Различают векторный (vectored) и опрашиваемый (polled) типы прерываний. В обоих  способах процессору передается информация об уровне приоритета. При векторном типе прерывания в процессор передается также адрес обработчика  прерывания.  Для векторного типа схема обработки такова: электрический сигнал ­ запрос на  подтверждение ­ вектор ­ обработчик (например, для шины VMEbus). Для опрашиваемого схема обработки такова: сигнал ­ запрос на подтверждение ­ уровень  приоритета (например, шина ISA). Каждый уровень связан с несколькими устройствами.  Вызываются все обработчики данного уровня. Один опознает свое устройство. (Примеры  шин: ISA, EISA, MCA, PCi, SBus). Intel Pentium объединяет два типа. устройство выдает сигнал некоторого уровня (IRQ ­  Interrupt Request), а контроллер вектор. Вектор ­ это число 0­255. Приоритеты обслуживания могут быть: относительные (обработка прерывания не  прекращается при появлении более приоритетного прерывания) и абсолютные. Для упорядочивания работы обработчиков введен механизм приоритетных очередей,  которые обслуживает модуль ОС диспетчер прерываний. Системные вызовы С понятием прерываний тесно связано понятие системных вызовов. Системный вызов  позволяет приложению обратится к процедуре ОС, при этом используется механизм  программных прерываний. В результате упрощается структура приложения, позволяются  действия, запрещенные в пользовательском режиме. В большинстве ОС системные вызовы осуществляются через диспетчер системных вызовов. Например для транслятора Си системный вызов – это обычный вызов функции. Транслятор имеет специальные функции «заглушки» (Stab). В этих функциях присутствует Си­ функция с вызовом программного прерывания. Системные вызовы могут выполнятся синхронно и асинхронно. Большинство выполняются  синхронно. Операции ввода­вывода – асинхронно. В новых ОС количество асинхронных  вызовов – увеличивается. Операционные   системы,   поддерживающие   мульти­програм­мирование,   в  зависимости   от выбранного   критерия   эффективности   вычислительной   системы   можно   разделить   на несколько основных типов:  системы пакетной обработки, системы разделения времени и системы   реального   времени.   Некоторые   операционные   системы   могут   поддерживать одновременно несколько режимов, например часть задач может выполняться в режиме па­ кетной   обработки,   а   часть   –   в   режиме   реального   времени   или   в   режиме   разделения времени. Мультипрограммирование (многозадачность, multitasking) – это такой способ  организации вычислительного процесса, при котором на одном процессоре попеременно  выполняются несколько программ. Чтобы поддерживать мультипрограммирование, ОС  должна определить для себя внутренние единицы работы, между которыми будут  разделяться процессор и другие ресурсы компьютера. В ОС пакетной обработки,  распространенных в компьютерах второго и сначала и третьего поколения, такой  единицей работы было задание. В настоящее время в большинстве операционных систем  определены два типа единиц работы: более крупная единица – процесс, или задача, и  менее крупная – поток, или нить. Причем процесс выполняется в форме одного или  нескольких потоков.

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

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

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

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

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

Лекция "Понятие мультипрограммирования. Способы управления процессом в режиме мультипрограммирования."
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
11.03.2017