Упр- проц-1.ppt
- Количество слайдов: 23
Управление процессами Часть1 1. 2. 3. Основные понятия Управление процессом в однопрограммном режиме 3. Управление при мультипрограммировании 1
1. Основные понятия Подсистема управления процессами — одна из наиболее важных в ОС. В ее функции входит n создание, уничтожение и организация взаимодействия между процессами, n распределение между ними процессорного времени. n 2
1. Основные понятия n n n Для поддержки мультипрограммирования в ОС определяются единицы работы: процесс (задача) более крупная единица, которая порождает потоки (нити). С процессом и потоком связан программный код, выделяются ресурсы (процессорное время, оперативная память, дисковое пространство, устройства ввода-вывода, файлы). Если в ОС существует процесс и поток, то между потоками распределяется процессорное время, процесс же потребляет все ресурсы, кроме процессорного времени. В простейшем случае процесс состоит из одного потока. 3
1. Основные понятия n n n Процесс должен влиять только на свои коды и данные, ОС изолирует один процесс от другого, выделяет процессу виртуальное адресное пространство Когда нескольким процессам необходимо взаимодействие, они обращаются к ОС, она предоставляет им средства связи. 4
1. Основные понятия n n Потоки возникли как средство распараллеливания вычислений. Современные ОС предлагают механизм многопоточной обработки. 5
1. Основные понятия n Если внутри одного приложения организовать несколько процессов, то невозможно учесть, что они решают общую задачу, должны обращаться к одним данным, обращаться к одному кодовому сегменту, иметь одинаковые права доступа к ресурсам. 6
1. Основные понятия n n Для создания процесса Ос тратит ресурсы, которые в этом случае дублируются. Создание потоков требует от ОС меньших расходов. Процессу ОС назначает адресное пространство и набор ресурсов, которые совместно используются всеми его потоками. ОС изолирует потоки в меньшей степени, чем процессы. 7
1. Основные понятия n n Чтобы организовать взаимодействие, потокам не нужно обращаться к ОС, им достаточно иметь общую память, один поток туда записывает, другой считывает. Мультипрограммирование более эффективно на уровне потоков, а не процессов. 8
Управление процессом в однопрограммном режиме 2. n В такой ОС существует два процесса: Системный процесс — выполнение программ ОС. Существует постоянно с момента загрузки и до окончания работы. Пользовательский процесс — выполнение программы пользователя. 9
Управление процессом в однопрограммном режиме 2. n 1. 2. Переключение "пользовательский процесс — системный процесс" связано со следующими событиями: Завершение пользовательского процесса. Обращение п. п. к ОС для выполнения некоторых функций. Переключение "с. п — п. п. " связано с: Созданием п. п. завершение выполнения функций ОС, используемых п. п. Процессор не различает процессы. 10
3. Управление при мультипрограммировании ОС, поддерживающие мультипрограммирование, можно разделить на основные типы: 1. Системы пакетной обработки 2. Системы разделения времени 3. Системы реального времени Некоторые ОС поддерживают несколько режимов. 11
3. Управление при мультипрограммировании n n Мультипрограммирование в системах пакетной обработки. Критерием эффективности в системах пакетной обработки является максимальная пропускная способность, т. е. решение максимального количества задач в единицу времени. Системы используются для вычислительных задач, не требующих вмешательства программиста. 12
. Управление при мультипрограммировании n n n В начале работы формируется мультипрограммная смесь — пакет заданий, одновременно выполняемые задачи. Смесь строится из задач, предъявляющих различные требования к ресурсам. Например, в смесь включают вычислительную задачу и задачу с интенсивным вводом-выводом. Выбор нового задания зависит от внутренней ситуации в системе. Следствие — нет гарантии выполнения задачи в течение определенного периода времени. 13
. Управление при мультипрограммировании n n Параллельного выполнение можно достигнуть двумя путями Первый путь. Компьютер имеет специализированный процессор — канал. Канал имеет систему команд для управления внешними устройствами. ЦП передает каналу инструкцию, в которой передаются параметры и указания, какую команду ввода-вывода выполнить. С этого момента канал и ЦП работают параллельно n 14
n Второй путь. Реализуется в компьютерах, где внешними устройствами управляет контроллер. Контроллер автономно отрабатывает команды, контроллер и ЦП работают асинхронно 15
. Управление при мультипрограммировании n n Общее время выполнения смеси задач меньше их суммарного времени последовательного выполнения Пакетная обработка повышает эффективность работы аппаратуры, но взаимодействия программиста с программой сведено к нулю. 16
. Управление при мультипрограммировании n n Мультипрограммирование в системах разделения времени. Критерий эффективности — удобство работы пользователя. Пользователям предоставляется возможность интерактивной работы сразу с несколькими приложениями. ОС попеременно выделяет квант процессорного времени всем приложениям, принудительно периодически приостанавливает приложения. Пользователю предоставлен терминал, он ведет диалог со своей программой. 17
. Управление при мультипрограммировании n n Системы разделения времени обладают меньшей пропускной способностью, т. к. на выполнение принимается каждая запущенная задача, а не та которая выгодна системе в данный момент. Производительность также снижается за счет расходов на переключение процессора с одной задачи на другую. 18
. Управление при мультипрограммировании n n Мультипрограммирование в системах реального времени. Системы предназначены для управления технологическим процессом (станком, спутником). В этих случаях существует предельно допустимое время, время реакции системы, в течение его должна быть выполнена управляющая объектом программа. Критерий эффективности — время реакции системы. 19
n n В системах реального времени мультипрограммная смесь - фиксированный набор заранее разработанных программ, выбор программы на выполнение определяется текущим состояниеv объекта или в соответствии с расписанием плановых работ. В системах реального времени не стремятся максимально загружать все устройства, наоборот проектируется некоторый запас, на случай пиковой нагрузки. 20
Вопросы n n Назовите функции подсистемы управления процессами. Назовите две единицы работы. Какая из них порождает другую? Какая единица потребляет процессорное время? Что ОС изолирует в большей степени? 21
n n n Как взаимодействуют потоки? Какие процессы существуют в однопрограммном режиме? Назовите три типа мультипрограммирования. В какой системе критерием является максимальная пропускная способность? В какой системе критерием является удобство работы пользователя 22
n n В какой системе критерием является время реакции системы? Системы разделения времени обладают меньшей пропускной способностью по сравнению с пакетной обработкой? Для чего предназначены системы реального времени? Загружены ли максимально все устройства в системах реального времени ? 23