шпаргалка

Понятие планирования вычислительных процессов. Стратегии планирования.

[ Назад ]

Понятие процесса. Процесс и программа. Состояния процесса. Управляющий блок процесса и его контекст. Операции над процессами. Переключение контекста. Уровни планирования процессов. Критерии планирования и требования к алгоритмам планирования. Параметры планирования. Вытесняющее и невытесняющее планирование. Алгоритмы планирования: FCFS, RR, SJF, гарантированное планирование, приоритетное планирование, многоуровневые очереди, многоуровневые очереди с обратной связью.



Понятие процесса в UNIX, его контекст. Идентификация процесса. Краткая диаграмма состояний процессов в UNIX. Иерархия процессов. Системные вызовы getpid () и getppid (). Создание процесса в UNIX. Системный вызов fork (). Завершение процесса. Функция exit (). Параметры функции main () в языке С. Переменные среды и аргументы командной строки. Изменение пользовательского контекста процесса. Семейство функций для системного вызова exec ().



Стратегия планирования



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

- по возможности заканчивать вычисления в том же порядке, в котором он были начаты;

- отдавать предпочтение более коротким задачам;

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

Стратегия планирования связана с понятием процесс, а не задача, так как процесс может состоять из нескольких задач (потоков).



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



Диспетчеризация связана с понятием задачи (потока). Если ОС не поддерживает механизма потоков, то понятие задачи можно заменить на понятие процесса.

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

Самой простой в реализации является дисциплина FCFS (first come – first served), задачи обслуживаются в порядке очереди, т.е. в порядке их появления. Задачи, приостановленные для ожидания какого-либо ресурса, после перехода в состояние готовности становятся в эту очередь перед задачами, которые еще не выполнялись.

Образуются две очереди:

- новые задачи;

- ранее выполнявшиеся, но попавшие в состояние ожидания.

Дисциплина FCFS реализует стратегию обслуживания «по возможности заканчивать вычисления в порядке их появления». Эта дисциплина не требует внешнего вмешательства в ход вычислений и перераспределения процессорного времени. По классу диспетчеризации (вытесняющие и не вытесняющие) дисциплина FCFS относится к не вытесняющим.



Достоинства дисциплины FCFS:

- простота реализации;

- малые расходы системных ресурсов на формирование очереди задач.

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

Дисциплина обслуживания SJN (shortest job next) требует, чтобы для каждого задания была известна оценка в потребностях процессорного времени. Пользователи должны были указывать предположительное время выполнения. Диспетчер задач сравнивал указанное время с реальным временем выполнения и, если время выполнения превышало указанное, то помещал это задание в конец очереди.

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

Для устранения этого недостатка была предложена дисциплина SRT (shortest remaining time, следующее задание требует меньше всего времени для своего завершения).

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

Для интерактивной работы надо обеспечить приемлемое время реакции системы и равенство в обслуживании, если система мультитерминальная. Интерактивные задания должны иметь преимущество перед фоновыми. Эти условия решены в дисциплине RR (round robin – круговая, карусельная).

Дисциплина обслуживания RR предполагает, что каждая задача получает процессорное время порциями (квантами). После окончания выделенного кванта времени задача снимается с исполнения и на выполнение выбирается следующая задача. Снятая задача помещается в конец очереди готовых к выполнению задач.

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



КАТЕГОРИИ:

Network | английский | архитектура эвм | астрономия | аудит | биология | вычислительная математика | география | Гражданское право | демография | дискретная математика | законодательство | история | квантовая физика | компиляторы | КСЕ - Концепция современного естествознания | культурология | линейная алгебра | литература | математическая статистика | математический анализ | Международный стандарт финансовой отчетности МСФО | менеджмент | метрология | механика | немецкий | неорганическая химия | ОБЖ | общая физика | операционные системы | оптимизация в сапр | органическая химия | педагогика | политология | правоведение | прочие дисциплины | психология (методы) | радиоэлектроника | религия | русский | сертификация | сопромат | социология | теория вероятностей | управление в технических системах | физкультура | философия | фотография | французский | школьная математика | экология | экономика | экономика (словарь) | язык Assembler | язык Basic, VB | язык Pascal | язык Си, Си++ |