Главная страница
Навигация по странице:

  • CPU burst

  • Критерии планирования (5 основных): Справедливость

  • Эффективность использования ресурсов

  • Время ожидания

  • Свойства алгоритмов планирования: Предсказуемость

  • Параметры планирования Статические параметры

  • Динамические параметры

  • Вопросы_к_экзамену_по_операционным. Функции и механизмы программдиспетчеров, предшественников операционных систем


    Скачать 1.12 Mb.
    НазваниеФункции и механизмы программдиспетчеров, предшественников операционных систем
    Дата28.01.2018
    Размер1.12 Mb.
    Формат файлаdoc
    Имя файлаВопросы_к_экзамену_по_операционным.doc
    ТипДокументы
    #35354
    страница11 из 19
    1   ...   7   8   9   10   11   12   13   14   ...   19

    Критерии эффективности и свойства методов планирования процессов, параметры планирования процессов.

    Критерии планирования и требования к алгоритмам


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

    • Справедливость – гарантировать каждому заданию или процессу определенную часть времени использования процессора в компьютерной системе, стараясь не допустить возникновения ситуации, когда процесс одного пользователя постоянно занимает процессор, в то время как процесс другого пользователя фактически не начинал выполняться.

    • Эффективность – постараться занять процессор на все 100% рабочего времени, не позволяя ему простаивать в ожидании процессов, готовых к исполнению. В реальных вычислительных системах загрузка процессора колеблется от 40 до 90%.

    • Сокращение полного времени выполнения ( turnaround time ) – обеспечить минимальное время между стартом процесса или постановкой задания в очередь для загрузки и его завершением.

    • Сокращение времени ожидания ( waiting time ) – сократить время, которое проводят процессы в состоянии готовность и задания в очереди для загрузки.

    • Сокращение времени отклика ( response time ) – минимизировать время, которое требуется процессу в интерактивных системах для ответа на запрос пользователя.

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

    • Были предсказуемыми. Одно и то же задание должно выполняться приблизительно за одно и то же время. Применение алгоритма планирования не должно приводить, к примеру, к извлечению квадратного корня из 4 за сотые доли секунды при одном запуске и за несколько суток – при втором запуске.

    • Были связаны с минимальными накладными расходами. Если на каждые 100 миллисекунд, выделенные процессу для использования процессора, будет приходиться 200 миллисекунд на определение того, какой именно процесс получит процессор в свое распоряжение, и на переключение контекста, то такой алгоритм, очевидно, применять не стоит.

    • Равномерно загружали ресурсы вычислительной системы, отдавая предпочтение тем процессам, которые будут занимать малоиспользуемые ресурсы.

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

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

    Параметры планирования


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

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

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

    К статическим параметрам процессов относятся характеристики, как правило присущие заданиям уже на этапе загрузки.

    • Каким пользователем запущен процесс или сформировано задание.

    • Насколько важной является поставленная задача, т. е. каков приоритет ее выполнения.

    • Сколько процессорного времени запрошено пользователем для решения задачи.

    • Каково соотношение процессорного времени и времени, необходимого для осуществления операций ввода-вывода.

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

    Алгоритмы долгосрочного планирования используют в своей работе статические и динамические параметры вычислительной системы и статические параметры процессов (динамические параметры процессов на этапе загрузки заданий еще не известны). Алгоритмы краткосрочного и среднесрочного планирования дополнительно учитывают и динамические характеристики процессов. Для среднесрочного планирования в качестве таких характеристик может использоваться следующая информация:

    • сколько времени прошло с момента выгрузки процесса на диск или его загрузки в оперативную память;

    • сколько оперативной памяти занимает процесс;

    • сколько процессорного времени уже предоставлено процессу.

    Для краткосрочного планирования нам понадобится ввести еще два динамических параметра. Деятельность любого процесса можно представить как последовательность циклов использования процессора и ожидания завершения операций ввода-вывода. Промежуток времени непрерывного использования процессора носит название CPU burst, а промежуток времени непрерывного ожидания ввода-вывода – I/O burst . На рисунке 3.1. показан фрагмент деятельности некоторого процесса на псевдоязыке программирования с выделением указанных промежутков. Для краткости мы будем использовать термины CPU burst и I/O burst без перевода. Значения продолжительности последних и очередных CPU burst и I/O burst являются важными динамическими параметрами процесса.

    ИЗ ЛЕКЦИЙ:

    Критерии планирования (5 основных):

    1. Справедливость – гарантия каждому заданию или процессу определенной части времени использования процессора, недопускание ситуации, когда один процесс исполняется постоянно, а другой (уже запущенный) не имеет доступа к процессору;

    2. Эффективность использования ресурсов – алгоритм должен по максимуму занять процессор (реально процессор занимается на 40-60%);

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

    4. Время ожидания – минимизация времени, которое проводят процессы в состоянии готовности;

    5. Время отклика – минимизация времени на взаимодействие с внешними факторами (как с устройствами, так и с пользователем).

    Свойства алгоритмов планирования:

    1. Предсказуемость – одно и то же задание должно выполняться приблизительно за одно и то же время;

    2. Масштабируемость – алгоритмы не должны терять работоспособность при увеличении нагрузки;

    3. Минимальные расходы – соотношения времени выборки процесса на исполнение и времени исполнения должны быть существенны.

    Параметры планирования

    Статические параметры – это предельные значения ресурсов системы (объем оперативной памяти, частота процессора).

    Динамические параметры – это количество ресурсов в текущий момент времени.

    На этапе загрузки процесса появляются статические параметры:

    • каким пользователем запущен процесс;

    • приоритет задачи;

    • сколько процессорного времени запрошено для решения задачи;

    • каково соотношение процессорного времени и времени, необходимого на операции ввода/вывода;

    • какие ресурсы, и в каком количестве необходимы (оперативная память, устройства ввода/вывода, специальные библиотеки).

    Динамические параметры появляются после первого исполнения:

    • сколько времени прошло со времени выгрузки процесса на диск или загрузки его в оперативную память;

    • сколько оперативной памяти занимает процесс;

    • сколько процессорного времени было предоставлено процессу.

    У процесса разделяют два состояния (временных). Эти параметры тоже являются динамическими и они измеряются после каждого очередного исполнения:

    • CPU burst – промежуток непрерывного исполнения на процессоре;

    • I/O burst – промежуток ожидания ввода/вывода.
    1. 1   ...   7   8   9   10   11   12   13   14   ...   19


    написать администратору сайта