русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Дисциплины диспетчеризации.


Дата добавления: 2013-12-23; просмотров: 1286; Нарушение авторских прав


Цели планирования

 

Основными целями планирования являются:

  1. Максимальное использование всех вычислительных ресурсов в текущий момент времени.
  2. Минимизация конфликтов между процессами за ресурсы.

 

Основными задачами планирования являются:

  1. Диспетчеризация процессов.
  2. Синхронизация процессов.
  3. Выделение (распределение) памяти.

 

Примечание: под задачей диспетчеризации понимается поток или процесс (не разбивается на потоки) стратегии планирования.

Стратегия планирования определяет какие действия необходимо предпринять системе, чтобы достичь поставленной цели.

 

Различают следующие стратегии:

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

 

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

 

 

Все современные ОС используют краткосрочное планирование, т.е. планирование на текущий момент времени. Задачи долгосрочного планирования не ставится. Это краткосрочное планирование ставит задачу управлять как «диспетчер». Различают 2 вида обслуживания задач- с приоритетом и без приоритета. Приоритеты могут быть фиксированные и динамические.

Рассмотрим наиболее частые способы диспетчеризации:

 

  1. FCFS(FIFO). Основная идея состоит в том, чтобы все задачи обслуживались в порядке их появления. Это основная цель.

 

 

 

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



 

  1. SYN. Дисциплина обрабатывает самые короткие задачи. Для задачи должно быть указано ожидаемое время исполнения.

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

В одну очередь поступают и новые задачи и заблокированные. В том случае если задача используется в указанное пользователем время, проблем нет. Иначе если диспетчер обнаружил явное превышение времени исполнения, то следует наказание. Данная задача встает в конец очереди. Минусом является то, что короткие задачи должны ждать столько же сколько и большие.

 

  1. SRT. Следующей задача, обслуживается та, которая требует наименьшее время для завершения.

 

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

 

Лекция 6.

 

4. PR. Каждая задача получает некоторый квант времени, затем передается другой задаче.

 

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

Выбирая все задачи из очереди с большим приоритетом, потом из очереди с меньшим приоритетом. Почти все ОС используют эту дисциплину.

 

P.S. по сути дела PR реализует один из основных способов мультипрограммирования.

 

 



<== предыдущая лекция | следующая лекция ==>
Лекция5. ТЕМА 2 | Проектирование взаимодействующих вычислительных процессов.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.