🗊Презентация Разработка системных приложений. Основные понятия. Процессы

Нажмите для полного просмотра!
Разработка системных приложений. Основные понятия. Процессы, слайд №1Разработка системных приложений. Основные понятия. Процессы, слайд №2Разработка системных приложений. Основные понятия. Процессы, слайд №3Разработка системных приложений. Основные понятия. Процессы, слайд №4Разработка системных приложений. Основные понятия. Процессы, слайд №5Разработка системных приложений. Основные понятия. Процессы, слайд №6Разработка системных приложений. Основные понятия. Процессы, слайд №7Разработка системных приложений. Основные понятия. Процессы, слайд №8Разработка системных приложений. Основные понятия. Процессы, слайд №9Разработка системных приложений. Основные понятия. Процессы, слайд №10Разработка системных приложений. Основные понятия. Процессы, слайд №11Разработка системных приложений. Основные понятия. Процессы, слайд №12Разработка системных приложений. Основные понятия. Процессы, слайд №13Разработка системных приложений. Основные понятия. Процессы, слайд №14Разработка системных приложений. Основные понятия. Процессы, слайд №15Разработка системных приложений. Основные понятия. Процессы, слайд №16Разработка системных приложений. Основные понятия. Процессы, слайд №17Разработка системных приложений. Основные понятия. Процессы, слайд №18Разработка системных приложений. Основные понятия. Процессы, слайд №19Разработка системных приложений. Основные понятия. Процессы, слайд №20Разработка системных приложений. Основные понятия. Процессы, слайд №21Разработка системных приложений. Основные понятия. Процессы, слайд №22Разработка системных приложений. Основные понятия. Процессы, слайд №23Разработка системных приложений. Основные понятия. Процессы, слайд №24Разработка системных приложений. Основные понятия. Процессы, слайд №25Разработка системных приложений. Основные понятия. Процессы, слайд №26Разработка системных приложений. Основные понятия. Процессы, слайд №27Разработка системных приложений. Основные понятия. Процессы, слайд №28Разработка системных приложений. Основные понятия. Процессы, слайд №29Разработка системных приложений. Основные понятия. Процессы, слайд №30Разработка системных приложений. Основные понятия. Процессы, слайд №31Разработка системных приложений. Основные понятия. Процессы, слайд №32Разработка системных приложений. Основные понятия. Процессы, слайд №33Разработка системных приложений. Основные понятия. Процессы, слайд №34Разработка системных приложений. Основные понятия. Процессы, слайд №35Разработка системных приложений. Основные понятия. Процессы, слайд №36Разработка системных приложений. Основные понятия. Процессы, слайд №37Разработка системных приложений. Основные понятия. Процессы, слайд №38Разработка системных приложений. Основные понятия. Процессы, слайд №39Разработка системных приложений. Основные понятия. Процессы, слайд №40Разработка системных приложений. Основные понятия. Процессы, слайд №41Разработка системных приложений. Основные понятия. Процессы, слайд №42Разработка системных приложений. Основные понятия. Процессы, слайд №43Разработка системных приложений. Основные понятия. Процессы, слайд №44Разработка системных приложений. Основные понятия. Процессы, слайд №45

Содержание

Вы можете ознакомиться и скачать презентацию на тему Разработка системных приложений. Основные понятия. Процессы. Доклад-сообщение содержит 45 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Разработка системных приложений
Основные понятия. Процессы.
Планирование процессов. Алгоритмы планирования.
Описание слайда:
Разработка системных приложений Основные понятия. Процессы. Планирование процессов. Алгоритмы планирования.

Слайд 2





Литература
Таненбаум Э., Вудхалл А., Операционные системы. Разработка и реализация.
Таненбаум Э. Современные операционные системы.
Richard L. Halterman, Fundamentals of С++ Programming.
Описание слайда:
Литература Таненбаум Э., Вудхалл А., Операционные системы. Разработка и реализация. Таненбаум Э. Современные операционные системы. Richard L. Halterman, Fundamentals of С++ Programming.

Слайд 3





Структура вычислительной системы
Описание слайда:
Структура вычислительной системы

Слайд 4





Основные понятия. 
Системные вызовы (system calls) – это интерфейс между операционной системой и пользовательской программой. Они создают, удаляют и используют различные объекты, главные из которых – процессы и файлы. Пользовательская программа запрашивает сервис у операционной системы, осуществляя системный вызов
существуют библиотеки процедур, которые загружают машинные регистры определенными параметрами и осуществляют прерывание процессора, после чего управление передается обработчику данного вызова, входящему в ядро операционной системы. Цель таких библиотек – сделать системный вызов похожим на обычный вызов подпрограммы
Описание слайда:
Основные понятия. Системные вызовы (system calls) – это интерфейс между операционной системой и пользовательской программой. Они создают, удаляют и используют различные объекты, главные из которых – процессы и файлы. Пользовательская программа запрашивает сервис у операционной системы, осуществляя системный вызов существуют библиотеки процедур, которые загружают машинные регистры определенными параметрами и осуществляют прерывание процессора, после чего управление передается обработчику данного вызова, входящему в ядро операционной системы. Цель таких библиотек – сделать системный вызов похожим на обычный вызов подпрограммы

Слайд 5





при системном вызове задача переходит в привилегированный режим или режим ядра (kernel mode)
при системном вызове задача переходит в привилегированный режим или режим ядра (kernel mode)
в этом режиме работает код ядра операционной системы, причем исполняется он в адресном пространстве и в контексте вызвавшей его задачи. Таким образом, ядро операционной системы имеет полный доступ к памяти пользовательской программы, и при системном вызове достаточно передать адреса одной или нескольких областей памяти с параметрами вызова и адреса одной или нескольких областей памяти для результатов вызова.
Описание слайда:
при системном вызове задача переходит в привилегированный режим или режим ядра (kernel mode) при системном вызове задача переходит в привилегированный режим или режим ядра (kernel mode) в этом режиме работает код ядра операционной системы, причем исполняется он в адресном пространстве и в контексте вызвавшей его задачи. Таким образом, ядро операционной системы имеет полный доступ к памяти пользовательской программы, и при системном вызове достаточно передать адреса одной или нескольких областей памяти с параметрами вызова и адреса одной или нескольких областей памяти для результатов вызова.

Слайд 6





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

Слайд 7





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

Слайд 8





Исключительная ситуация (exception) – событие, возникающее в результате попытки выполнения программой команды, которая по каким-то причинам не может быть выполнена до конца. 
Исключительная ситуация (exception) – событие, возникающее в результате попытки выполнения программой команды, которая по каким-то причинам не может быть выполнена до конца. 
Исключительные ситуации можно разделить на исправимые и неисправимые
Описание слайда:
Исключительная ситуация (exception) – событие, возникающее в результате попытки выполнения программой команды, которая по каким-то причинам не может быть выполнена до конца. Исключительная ситуация (exception) – событие, возникающее в результате попытки выполнения программой команды, которая по каким-то причинам не может быть выполнена до конца. Исключительные ситуации можно разделить на исправимые и неисправимые

Слайд 9





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

Слайд 10





Процесс != программа
в некоторых операционных системах для работы определенных программ может организовываться более одного процесса или один и тот же процесс может исполнять последовательно несколько различных программ
даже в случае обработки только одной программы в рамках одного процесса нельзя считать, что процесс представляет собой просто динамическое описание кода исполняемого файла, данных и выделенных для них ресурсов
Описание слайда:
Процесс != программа в некоторых операционных системах для работы определенных программ может организовываться более одного процесса или один и тот же процесс может исполнять последовательно несколько различных программ даже в случае обработки только одной программы в рамках одного процесса нельзя считать, что процесс представляет собой просто динамическое описание кода исполняемого файла, данных и выделенных для них ресурсов

Слайд 11





Состояния процесса
Описание слайда:
Состояния процесса

Слайд 12





Состояния процесса
Описание слайда:
Состояния процесса

Слайд 13


Разработка системных приложений. Основные понятия. Процессы, слайд №13
Описание слайда:

Слайд 14





Операции над процессами
создание процесса – завершение процесса
приостановка процесса – запуск процесса
блокирование процесса – разблокирование процесса
изменение приоритета процесса
Изменением состояния процессов занимается операционная система, совершая операции над ними
Описание слайда:
Операции над процессами создание процесса – завершение процесса приостановка процесса – запуск процесса блокирование процесса – разблокирование процесса изменение приоритета процесса Изменением состояния процессов занимается операционная система, совершая операции над ними

Слайд 15





Блок управления процессом. 
Process Control Block(PCB)
состояние, в котором находится процесс;
программный счетчик процесса или, другими словами, адрес команды, которая должна быть выполнена для него следующей;
содержимое регистров процессора;
данные, необходимые для планирования использования процессора и управления памятью (приоритет процесса, размер и расположение адресного пространства и т. д.);
учетные данные (идентификационный номер процесса, какой пользователь инициировал его работу, общее время использования процессора данным процессом и т. д.);
сведения об устройствах ввода-вывода, связанных с процессом (например, какие устройства закреплены за процессом, таблицу открытых файлов)
Описание слайда:
Блок управления процессом. Process Control Block(PCB) состояние, в котором находится процесс; программный счетчик процесса или, другими словами, адрес команды, которая должна быть выполнена для него следующей; содержимое регистров процессора; данные, необходимые для планирования использования процессора и управления памятью (приоритет процесса, размер и расположение адресного пространства и т. д.); учетные данные (идентификационный номер процесса, какой пользователь инициировал его работу, общее время использования процессора данным процессом и т. д.); сведения об устройствах ввода-вывода, связанных с процессом (например, какие устройства закреплены за процессом, таблицу открытых файлов)

Слайд 16





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

Слайд 17





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

Слайд 18





Одноразовые операции. 
Рождение процесса.
Инициатором рождения нового процесса после старта операционной системы может выступить либо процесс пользователя, совершивший специальный системный вызов, либо сама операционная система, то есть, в конечном итоге, тоже некоторый процесс.
Процесс, инициировавший создание нового процесса, принято называть процессом-родителем (parent process), а вновь созданный процесс – процессом-ребенком (child process).
Описание слайда:
Одноразовые операции. Рождение процесса. Инициатором рождения нового процесса после старта операционной системы может выступить либо процесс пользователя, совершивший специальный системный вызов, либо сама операционная система, то есть, в конечном итоге, тоже некоторый процесс. Процесс, инициировавший создание нового процесса, принято называть процессом-родителем (parent process), а вновь созданный процесс – процессом-ребенком (child process).

Слайд 19





Генеалогическое древо процессов
Описание слайда:
Генеалогическое древо процессов

Слайд 20





Этапы рождения процесса
система заводит новый PCB с состоянием процесса «рождение» и начинает его заполнять. Новый процесс получает уникальный идентификационный номер
процессу выделяются ресурсы(память, файлы, устройства ввода-вывода и т. д.)
в адресное пространство процесса вносятся программный код, значения данных и устанавливается программный счетчик
после того как процесс наделен содержанием, в PCB дописывается оставшаяся информация, и состояние нового процесса изменяется на «готовность»
Описание слайда:
Этапы рождения процесса система заводит новый PCB с состоянием процесса «рождение» и начинает его заполнять. Новый процесс получает уникальный идентификационный номер процессу выделяются ресурсы(память, файлы, устройства ввода-вывода и т. д.) в адресное пространство процесса вносятся программный код, значения данных и устанавливается программный счетчик после того как процесс наделен содержанием, в PCB дописывается оставшаяся информация, и состояние нового процесса изменяется на «готовность»

Слайд 21





Завершение жизненного цикла процесса
После того как процесс завершил свою работу, операционная система переводит его в состояние «закончил исполнение» и освобождает все его ресурсы, делая соответствующие записи в PCB. При этом сам PCB не уничтожается, а остается в системе еще некоторое время
В операционной системе Unix процессы, находящиеся в состоянии «закончил исполнение», принято называть процессами-зомби
Описание слайда:
Завершение жизненного цикла процесса После того как процесс завершил свою работу, операционная система переводит его в состояние «закончил исполнение» и освобождает все его ресурсы, делая соответствующие записи в PCB. При этом сам PCB не уничтожается, а остается в системе еще некоторое время В операционной системе Unix процессы, находящиеся в состоянии «закончил исполнение», принято называть процессами-зомби

Слайд 22





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

Слайд 23





Многоразовые операции. 
Приостановка процесса.
работа процесса, находящегося в состоянии «исполнение», приостанавливается в результате какого-либо прерывания. 
процессор автоматически сохраняет счетчик команд и, возможно, один или несколько регистров в стеке исполняемого процесса
затем передает управление по специальному адресу обработки данного прерывания. На этом деятельность hardware по обработке прерывания завершается. По указанному адресу обычно располагается одна из частей операционной системы.
она сохраняет динамическую часть системного и регистрового контекстов процесса в его PCB, переводит процесс в состояние «готовность» и приступает к обработке прерывания, то есть к выполнению определенных действий, связанных с возникшим прерыванием.
Описание слайда:
Многоразовые операции. Приостановка процесса. работа процесса, находящегося в состоянии «исполнение», приостанавливается в результате какого-либо прерывания. процессор автоматически сохраняет счетчик команд и, возможно, один или несколько регистров в стеке исполняемого процесса затем передает управление по специальному адресу обработки данного прерывания. На этом деятельность hardware по обработке прерывания завершается. По указанному адресу обычно располагается одна из частей операционной системы. она сохраняет динамическую часть системного и регистрового контекстов процесса в его PCB, переводит процесс в состояние «готовность» и приступает к обработке прерывания, то есть к выполнению определенных действий, связанных с возникшим прерыванием.

Слайд 24





Многоразовые операции. 
Блокирование процесса.
процесс блокируется, когда он не может продолжать работу, не дождавшись возникновения какого-либо события в вычислительной системе
для этого он обращается к операционной системе с помощью определенного системного вызова
операционная система обрабатывает системный вызов (инициализирует операцию ввода-вывода, добавляет процесс в очередь процессов, дожидающихся освобождения устройства или возникновения события, и т. д.) и переводит процесс из состояния «исполнение» в состояние «ожидание»
Описание слайда:
Многоразовые операции. Блокирование процесса. процесс блокируется, когда он не может продолжать работу, не дождавшись возникновения какого-либо события в вычислительной системе для этого он обращается к операционной системе с помощью определенного системного вызова операционная система обрабатывает системный вызов (инициализирует операцию ввода-вывода, добавляет процесс в очередь процессов, дожидающихся освобождения устройства или возникновения события, и т. д.) и переводит процесс из состояния «исполнение» в состояние «ожидание»

Слайд 25





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

Слайд 26





Переключение контекста
Для корректного переключения процессора с одного процесса на другой необходимо сохранить контекст исполнявшегося процесса и восстановить контекст процесса, на который будет переключен процессор. Такая процедура сохранения/восстановления работоспособности процессов называется переключением контекста
Описание слайда:
Переключение контекста Для корректного переключения процессора с одного процесса на другой необходимо сохранить контекст исполнявшегося процесса и восстановить контекст процесса, на который будет переключен процессор. Такая процедура сохранения/восстановления работоспособности процессов называется переключением контекста

Слайд 27





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

Слайд 28





Уровни планирования процессов


Долгосрочное планирование процессов
Краткосрочное планирование процессов
Среднесрочное планирование процессов
Описание слайда:
Уровни планирования процессов Долгосрочное планирование процессов Краткосрочное планирование процессов Среднесрочное планирование процессов

Слайд 29





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

Слайд 30





Краткосрочное планирование процессов
проводится, к примеру, при обращении исполняющегося процесса к устройствам ввода-вывода или просто по завершении определенного интервала времени
осуществляется, как правило, не реже одного раза в 100 миллисекунд
выбор нового процесса для исполнения оказывает влияние на функционирование системы до наступления очередного аналогичного события, т. е. в течение короткого промежутка времени
Описание слайда:
Краткосрочное планирование процессов проводится, к примеру, при обращении исполняющегося процесса к устройствам ввода-вывода или просто по завершении определенного интервала времени осуществляется, как правило, не реже одного раза в 100 миллисекунд выбор нового процесса для исполнения оказывает влияние на функционирование системы до наступления очередного аналогичного события, т. е. в течение короткого промежутка времени

Слайд 31





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

Слайд 32





Критерии планирования.
Справедливость – гарантировать каждому процессу определенную часть времени использования процессора в системе, стараясь не допустить возникновения ситуации, когда процесс одного пользователя постоянно занимает процессор, в то время как процесс другого пользователя фактически не начинал выполняться.
Эффективность – постараться занять процессор на все 100% рабочего времени, не позволяя ему простаивать в ожидании процессов, готовых к исполнению. В реальных вычислительных системах загрузка процессора колеблется от 40 до 90%.
Сокращение полного времени выполнения (turnaround time) – обеспечить минимальное время между стартом процесса или постановкой задания в очередь для загрузки и его завершением.
Сокращение времени ожидания (waiting time) – сократить время, которое проводят процессы в состоянии готовность и задания в очереди для загрузки.
Сокращение времени отклика (response time) – минимизировать время, которое требуется процессу в интерактивных системах для ответа на запрос пользователя.
Описание слайда:
Критерии планирования. Справедливость – гарантировать каждому процессу определенную часть времени использования процессора в системе, стараясь не допустить возникновения ситуации, когда процесс одного пользователя постоянно занимает процессор, в то время как процесс другого пользователя фактически не начинал выполняться. Эффективность – постараться занять процессор на все 100% рабочего времени, не позволяя ему простаивать в ожидании процессов, готовых к исполнению. В реальных вычислительных системах загрузка процессора колеблется от 40 до 90%. Сокращение полного времени выполнения (turnaround time) – обеспечить минимальное время между стартом процесса или постановкой задания в очередь для загрузки и его завершением. Сокращение времени ожидания (waiting time) – сократить время, которое проводят процессы в состоянии готовность и задания в очереди для загрузки. Сокращение времени отклика (response time) – минимизировать время, которое требуется процессу в интерактивных системах для ответа на запрос пользователя.

Слайд 33





Требования к алгоритмам планирования
Предсказуемость. Одно и то же задание должно выполняться приблизительно за одно и то же время. Применение алгоритма планирования не должно приводить, к примеру, к извлечению квадратного корня из 4 за сотые доли секунды при одном запуске и за несколько суток – при втором запуске.
Минимальные накладные расходы. Если на каждые 100 миллисекунд, выделенные процессу для использования процессора, будет приходиться 200 миллисекунд на определение того, какой именно процесс получит процессор в свое распоряжение, и на переключение контекста, то такой алгоритм, очевидно, применять не стоит.
Равномерная загрузка ресурсов вычислительной системы, отдавая предпочтение тем процессам, которые будут занимать малоиспользуемые ресурсы.
Масштабируемость, т. е. алгоритм не сразу теряет работоспособность при увеличении нагрузки. Например, рост количества процессов в системе в два раза не должен приводить к увеличению полного времени выполнения процессов на порядок.
Описание слайда:
Требования к алгоритмам планирования Предсказуемость. Одно и то же задание должно выполняться приблизительно за одно и то же время. Применение алгоритма планирования не должно приводить, к примеру, к извлечению квадратного корня из 4 за сотые доли секунды при одном запуске и за несколько суток – при втором запуске. Минимальные накладные расходы. Если на каждые 100 миллисекунд, выделенные процессу для использования процессора, будет приходиться 200 миллисекунд на определение того, какой именно процесс получит процессор в свое распоряжение, и на переключение контекста, то такой алгоритм, очевидно, применять не стоит. Равномерная загрузка ресурсов вычислительной системы, отдавая предпочтение тем процессам, которые будут занимать малоиспользуемые ресурсы. Масштабируемость, т. е. алгоритм не сразу теряет работоспособность при увеличении нагрузки. Например, рост количества процессов в системе в два раза не должен приводить к увеличению полного времени выполнения процессов на порядок.

Слайд 34





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

Слайд 35





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

Слайд 36





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

Слайд 37





Вытесняющее и невытесняющее планирование
Если в операционной системе планирование осуществляется только в вынужденных ситуациях, говорят, что имеет место невытесняющее (nonpreemptive) планирование. 
Если планировщик принимает и вынужденные, и невынужденные решения, говорят о вытесняющем (preemptive) планировании.
Описание слайда:
Вытесняющее и невытесняющее планирование Если в операционной системе планирование осуществляется только в вынужденных ситуациях, говорят, что имеет место невытесняющее (nonpreemptive) планирование. Если планировщик принимает и вынужденные, и невынужденные решения, говорят о вытесняющем (preemptive) планировании.

Слайд 38





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

Слайд 39





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

Слайд 40





Алгоритмы планирования
First-Come, First-Served (FCFS)
Round Robin (RR)
Shortest-Job-First (SJF)
Гарантированное планирование
Приоритетное планирование
Многоуровневые очереди (Multilevel Queue)
Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)
Описание слайда:
Алгоритмы планирования First-Come, First-Served (FCFS) Round Robin (RR) Shortest-Job-First (SJF) Гарантированное планирование Приоритетное планирование Многоуровневые очереди (Multilevel Queue) Многоуровневые очереди с обратной связью (Multilevel Feedback Queue)

Слайд 41





First-Come, First-Served (FCFS)
Представим себе, что процессы, находящиеся в состоянии «готовность», выстроены в очередь FIFO. 
Когда процесс переходит в состояние «готовность», он, помещается в конец этой очереди. 
Выбор нового процесса для исполнения осуществляется из начала очереди с удалением оттуда ссылки на него. 
Процесс, получивший в свое распоряжение процессор, занимает его до перехода в состояние «ожидание» или «закончил исполнение». 
После этого для выполнения выбирается новый процесс из начала очереди.
Описание слайда:
First-Come, First-Served (FCFS) Представим себе, что процессы, находящиеся в состоянии «готовность», выстроены в очередь FIFO. Когда процесс переходит в состояние «готовность», он, помещается в конец этой очереди. Выбор нового процесса для исполнения осуществляется из начала очереди с удалением оттуда ссылки на него. Процесс, получивший в свое распоряжение процессор, занимает его до перехода в состояние «ожидание» или «закончил исполнение». После этого для выполнения выбирается новый процесс из начала очереди.

Слайд 42





Round Robin (RR)
Описание слайда:
Round Robin (RR)

Слайд 43





Реализуется такой алгоритм так же, как и предыдущий, с помощью организации процессов, находящихся в состоянии «готовность», в очередь FIFO. Планировщик выбирает для очередного исполнения процесс, расположенный в начале очереди, и устанавливает таймер для генерации прерывания по истечении определенного кванта времени.
Реализуется такой алгоритм так же, как и предыдущий, с помощью организации процессов, находящихся в состоянии «готовность», в очередь FIFO. Планировщик выбирает для очередного исполнения процесс, расположенный в начале очереди, и устанавливает таймер для генерации прерывания по истечении определенного кванта времени.
Описание слайда:
Реализуется такой алгоритм так же, как и предыдущий, с помощью организации процессов, находящихся в состоянии «готовность», в очередь FIFO. Планировщик выбирает для очередного исполнения процесс, расположенный в начале очереди, и устанавливает таймер для генерации прерывания по истечении определенного кванта времени. Реализуется такой алгоритм так же, как и предыдущий, с помощью организации процессов, находящихся в состоянии «готовность», в очередь FIFO. Планировщик выбирает для очередного исполнения процесс, расположенный в начале очереди, и устанавливает таймер для генерации прерывания по истечении определенного кванта времени.

Слайд 44





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

Слайд 45





Shortest-Job-First (SJF)
Если короткие задачи расположены в очереди ближе к ее началу, то общая производительность этих алгоритмов значительно возрастает. 
Если бы мы знали время выполнения для процессов, находящихся в состоянии готовность, то могли бы выбрать для исполнения не процесс из начала очереди, а процесс с минимальной длительностью времени выполнения
Описание слайда:
Shortest-Job-First (SJF) Если короткие задачи расположены в очереди ближе к ее началу, то общая производительность этих алгоритмов значительно возрастает. Если бы мы знали время выполнения для процессов, находящихся в состоянии готовность, то могли бы выбрать для исполнения не процесс из начала очереди, а процесс с минимальной длительностью времени выполнения



Похожие презентации
Mypresentation.ru
Загрузить презентацию