Операционные системы, среды и оболочки. Макаренко С.И. - 33 стр.

UptoLike

Составители: 

Динамические планировщики могут гибко приспосабливаться к
изменяющейся ситуации и не используют никаких предположений о
мультипрограммной смеси.
Динамическое планирование делится на:
вытесняющие алгоритмы планирования;
невытесняющие алгоритмы планирования.
Статическое планирование - используется в специализированных
системах, в которых весь набор одновременно выполняемых задач определен
заранее, например в системах реального времени. В этом случае
планировщик принимает решения о планировании не во время работы
системы, а заранее (off-line).
Соотношение между динамическим и статическим планировщиками
аналогично соотношению между диспетчером железной дороги, который
пропускает поезда строго по предварительно составленному расписанию, и
регулировщиком на перекрестке автомобильных дорог, не оснащенном
светофорами, который решает, какую машину остановить, а какую
пропустить, в зависимости от ситуации на перекрестке.
2.2.2 Диспетчеризация
Диспетчеризация заключается в реализации найденного в результате
планирования (динамического или статистического) решения, то есть в
переключении процессора с одного потока на другой.
Прежде чем прервать выполнение потока, ОС запоминает его
контекст, с тем чтобы впоследствии использовать эту информацию для
последующего возобновления выполнения данного потока.
Контекст содержит:
состояние аппаратуры компьютера в момент прерывания потока
(значение счетчика команд, содержимое регистров общего
назначения, режим работы процессора, флаги, маски прерываний и
другие параметры).
параметры операционной среды (ссылки на открытые файлы,
данные о незавершенных операциях ввода-вывода, коды ошибок
выполняемых данным потоком системных вызовов и т. д.).
Диспетчеризация сводится к следующему:
сохранение контекста текущего потока, который требуется
сменить;
загрузка контекста нового потока, выбранного в результате
планирования;
запуск нового потока на выполнение.
33
Динамические планировщики могут гибко приспосабливаться к
изменяющейся ситуации и не используют никаких предположений о
мультипрограммной смеси.
     Динамическое планирование делится на:
     − вытесняющие алгоритмы планирования;
     − невытесняющие алгоритмы планирования.
     Статическое планирование - используется в специализированных
системах, в которых весь набор одновременно выполняемых задач определен
заранее, например в системах реального времени. В этом случае
планировщик принимает решения о планировании не во время работы
системы, а заранее (off-line).
     Соотношение между динамическим и статическим планировщиками
аналогично соотношению между диспетчером железной дороги, который
пропускает поезда строго по предварительно составленному расписанию, и
регулировщиком на перекрестке автомобильных дорог, не оснащенном
светофорами, который решает, какую машину остановить, а какую
пропустить, в зависимости от ситуации на перекрестке.

                        2.2.2 Диспетчеризация

      Диспетчеризация заключается в реализации найденного в результате
планирования (динамического или статистического) решения, то есть в
переключении процессора с одного потока на другой.
      Прежде чем прервать выполнение потока, ОС запоминает его
контекст, с тем чтобы впоследствии использовать эту информацию для
последующего возобновления выполнения данного потока.
     Контекст содержит:
     − состояние аппаратуры компьютера в момент прерывания потока
       (значение счетчика команд, содержимое регистров общего
       назначения, режим работы процессора, флаги, маски прерываний и
       другие параметры).
     − параметры операционной среды (ссылки на открытые файлы,
       данные о незавершенных операциях ввода-вывода, коды ошибок
       выполняемых данным потоком системных вызовов и т. д.).
     Диспетчеризация сводится к следующему:
     − сохранение контекста текущего потока, который требуется
       сменить;
     − загрузка контекста нового потока, выбранного в результате
       планирования;
     − запуск нового потока на выполнение.




                                  33