![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лабораторная работа. Способы распределения процессорного времени в операционных системах
Цель работы: ознакомиться с основными дисциплинами диспетчеризации и получить практические навыки их использования при распределении процессорного времени.
Общие сведения Дисциплины диспетчеризации (обслуживания) – это правила формирования очереди готовых к выполнению задач, в соответствии с которыми формируется эта очередь (список). Различают два больших класса дисциплин обслуживания: бесприоритетные и приоритетные. При бесприоритетном обслуживании выбор задачпроизводится в некотором заранее установленном порядке без учета их относительнойважности и времени обслуживания. При реализации приоритетных дисциплинобслуживания отдельным задачам предоставляется преимущественноеправо попасть в состояние исполнения. К наиболее часто используемым дисциплины диспетчеризации относятся следующие: а) FCFS (First Come First Served — первым пришел, первым обслужен), согласно которой задачи обслуживаются «в порядке очереди», то есть в порядке их появления. Задачи, которые были заблокированы в процессе работы, после перехода в состояние готовности вновь ставятся в эту очередь готовности. Эта дисциплина обслуживания не требует внешнего вмешательства в ход вычислений, при ней не происходит перераспределения процессорного времени; б) SJN (Shortest Job Next — следующим выполняется самое короткое задание) требует, чтобы для каждого задания была известна оценка в потребностях машинного времени. Дисциплина обслуживания SJN предполагает, что имеется только одна очередь заданий, готовых к выполнению. Задания, которые в процессе своего исполнения были временно заблокированы, вновь попадали в конец очереди готовых к выполнению наравне с вновь поступающими; в) SRT (Shortest Remaining Time) — следующим будет выполняться задание, которому осталось меньше всего выполняться на процессоре; г) RR (карусельная, Round Robin) - одна из самых распространенных дисциплин предполагает, что каждая задача получает процессорное время порциями или квантами времени (time slice) q. После окончания кванта времени q задача снимается с процессора, и он передается следующей задаче. Снятая задача ставится в конец очереди задач, готовых к выполнению. Для оптимальной работы системы необходимо правильно выбрать закон, по которому кванты времени выделяются задачам.
Различают невытесняющую (кооперативную) многозадачность (дисциплины FCFS, SJN, SRT) и вытесняющую многозадачность (RR и другие, созданные на ее основе). С целью исследования принципов работы рассмотренных дисциплин диспетчеризации на кафедре «Инженерная кибернетика» был разработан программный комплекс «Эмуляция работы дисциплин диспетчеризации». Окно программной системы для удобства и эффективности работы разбито на несколько функциональных зон (рисунок 6.1). Верхняя левая область – область отображения загруженных процессов из операционной системы и их параметров. Количество данных процессов зависит от количества реальных процессов, запущенных на реальной машине, на которой установлена настоящая программа. Первый список собственно сами процессы. Второй список – общее время выполнения процесса, устанавливается один раз при загрузке процесса. Третий список – оставшееся время выполнения процесса после блокировки. Четвертый список – разрешение блокировки (если блокировка разрешена, то в поле устанавливается «1», иначе «0»). Пятый список – время блокировки. Шестой список – бит завершения процесса (устанавливается «1» если процесс полностью завершился). Все значения списков, кроме первого и второго, изменяются в процессе эмуляции в зависимости от хода выполнения процесса. Верхняя правая область – область отображения работы модуля эмуляции процессов. В ней отображаются название процесса, который в настоящее время запущен в процессоре, очереди готовых к выполнению, выполненных и заблокированных процессов (в зависимости от выбранной дисциплины диспетчеризации), время до завершения процесса и оставшееся время кванта (для дисциплины RR). Нижняя левая область – область построения графиков. График отношения заблокированных к выполненным задачам строится в реальном времени. Координата графика добавляется при выгрузке задачи из процессора. По ординате графика откладывается значение, равное отношению выполненных к заблокированным задачам. По абсциссе откладывается количество выгруженных задач (вне зависимости от состояния процесса).
Нижняя правая область – область отображения маршрута процесса. В зависимости от выбранной дисциплины диспетчеризации строится шаблон всех возможных маршрутов процесса (линии черного цвета). В момент загрузки зеленым цветом рисуется маршрут задачи от очереди до процессора, а красным дальнейший маршрут после выгрузки. Тем самым есть возможность наглядно просмотреть все действия, которые происходят с задачей в процессе эмуляции.
Рисунок 6.1 – Функциональные зоны главного окна
При вызове руководства пользователя оно отображается вместо областей, расположенных в левой части. Данное окно можно закрыть в любой момент времени нажатием кнопки. Для эмуляции используются названия реальных процессов вычислительной машины, на которой установлена настоящая программа. Приступая к работе с данным программным продуктом необходимо выполнить следующие действия: а) запустить приложение dispatcher.exe; б) в главном меню во вкладке «Файл» нажать кнопку «Загрузить» после чего сгенерируется список процессов и их параметров, с помощью которых будет производиться эмуляция; в) во вкладке «Дисциплина» необходимо выбрать алгоритм дисциплины диспетчеризации, с помощью которой будет производиться эмуляция; г) нажать кнопку «Запустить» во вкладке «Файл». После выполнения вышеперечисленных действий запустится процесс эмуляции. Во время выполнения программы в ее рабочем окне отображается информация о ходе выполнения эмуляции. Функционально окно можно разделить на четыре части: 1) область отображения списка используемых процессов и их параметры, необходимые для системы; 2) область построения зависимостей выполнения процессов; 3) область отображения эмуляции процессора и очередей выполняемых процессов; 4) графическое отображение маршрутов процессов в ходе эмуляции. Для смены дисциплины диспетчеризации необходимо выполнить следующие действия: а) нажать кнопку «Остановить» во вкладке «Файл» для остановки процесса эмуляции; б) нажать кнопку «Сброс» во вкладке «Файл»; в) выполнить действия для запуска выполнения программы.
Задания к лабораторной работе 6.2.1 Запустить программный комплекс «Эмуляция работы дисциплин диспетчеризации» и с его помощью - провести серии экспериментов по определению оптимальных параметров для отдельных дисциплин (частоты выполнения заблокированного процесса для FCFS, оптимального значения кванта времени для RR); - построить графики отношения заблокированных и выполненных задач для каждой серии; - выбрать оптимальную дисциплину диспетчеризации для загруженных процессов; обосновать свой выбор.
6.2.2 Три задачи А, В, С поступают в компьютерный центр практически одновременно. Ожидается, что время их выполнения составит 1, 2, 4 мин. Требуется определить среднее время выполнения задач, считая, что время переключения между процессами (время смены контекста) – 2 мс, а время кванта процессора – 20 мс. Планирование циклическое (RR) - каждой задаче достается справедливая доля процессорного времени.
6.2.3 Четыре пакетных задачи A, B, C, D поступают в двухпроцессорный компьютер практически одновременно. Ожидаемое время их выполнения составляет 7, 4, 6 и 2 мин. Установленные приоритеты составляют 3, 2, 1 и 4, причем 4 – высший приоритет. Определить среднее оборотное время для алгоритма «первым пришел – первый обслужен», запущенная задача работает до конца. Время, которое теряется на переключение между процессами, не учитывать.
Требования к отчету Отчет по работе выполняется на бумажном носителе и должен содержать: - задание к работе; - описание тех или иных действий, выполненных для получения результата, или листинги программ с комментариями; - снимки экрана с результатами работы; - выводы по каждому заданию. 6.4 Контрольные вопросы 6.4.1 С какой целью в операционных системах используются дисциплины диспетчеризации? 6.4.2 В каких операционных системах используется дисциплина FCFS? 6.4.3 Какими достоинствами обладают рассмотренные основные дисциплины обслуживания? 6.4.4 Какие недостатки невытесняющих дисциплин устранены с помощью дисциплины RR? 6.4.5 Какое влияние на результат использования RR оказывает учет приоритетов? 6.4.6 Что представляет собой частота выполнения заблокированного процесса? 6.4.7 Приведите пример использования дисциплин диспетчеризации в ОС реального времени. 6.4.8 Приведите схемы функционирования дисциплин SJN и SRT. 6.4.9 Как изменится схема функционирования FCFS при использовании одной очереди вместо двух? 6.4.10 Какие стратегии обслуживания используются в Unix-системах?
|
|||||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 661; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.218.167.41 (0.012 с.) |