Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Для ее выполнения, и входных данных.Содержание книги
Поиск на нашем сайте
Две абсолютно идентичные программы, абсолютно идентичных задания в процессе выполнения различны с точки зрения вычислительной системы: v свое адресное пространство; v свое состояние регистров; V свои «права» и обязанности по отношению к другим задачам. Термины программа и задание предназначены для описания статических, неактивных объектов. Программа в процессе исполнения является динамическим, активным объектом. Вместо терминов программа и задание для активных объектов ВС используется термин процесс. Процесс (или по-другому, задача) - абстракция, описывающая выполняющуюся программу. Для Операционной системы процесс представляет собой единицу работы, заявку на потребление Системных ресурсов. Подсистема управления процессами (eng. PCB – Process Control Block) Подсистема управления процессами планирует выполнение процессов, а также занимается Созданием и уничтожением процессов, обеспечивает процессы необходимыми системными Ресурсами, поддерживает взаимодействие между процессами. Мультипрограммирование или многозадачность – это способ организации вычислительного Процесса, при котором на одном процессоре попеременно выполняется сразу несколько программ. Если такой способ в операционной системе не предусмотрен, то она называется однозадачной. Все, что выполняется в ВС (даже определенные части операционных систем), организовано Как набор процессов Реально на однопроцессорной компьютерной системе в каждый момент времени может Исполняться только один процесс Пока один процесс выполняется, остальные ждут своей очереди на получение процессора В мультипрограммных вычислительных системах псевдопараллельная обработка нескольких Процессов достигается с помощью переключения процессора с одного процесса на другой Процесс, находящийся в состоянии процесс исполняется, может завершиться или быть приостановлен ОС и переведен в состояние процесс не исполняется. Приостановка процесса: для работы потребовалось возникновение события (завершение операции ввода-вывода), истек Временной интервал, отведенный ОС для работы этого процесса. Потом ОС выбирает для исполнения один из процессов, находящихся в состоянии процесс не исполняется и переводит его в состояние процесс исполняется. Новый процесс, появляющийся в системе, первоначально помещается в состояние процесс не исполняется Жизненный цикл процесса В многозадачной (многопроцессной) системе процесс может находиться в одном из трех основных состояний: ВЫПОЛНЕНИЕ - активное состояние процесса, во время которого процесс обладает всеми необходимыми ресурсами и непосредственно выполняется процессором; ОЖИДАНИЕ - пассивное состояние процесса, процесс заблокирован, он не может выполняться по своим внутренним причинам, он ждет осуществления некоторого события; ГОТОВНОСТЬ - также пассивное состояние процесса, но в этом случае процесс заблокирован в связи с внешними по отношению к нему обстоятельствами: Процесс имеет все требуемые для него ресурсы, он готов выполняться, однако процессор занят Выполнением другого процесса. Контекст и дескриптор процесса Состояние операционной среды отображается: V состоянием регистров и программного счетчика, V режимом работы процессора, V указателями на открытые файлы, V информацией о незавершенных операциях ввода-вывода, V кодами ошибок выполняемых данным процессом системных вызовов и т.д. Эта информация называется контекстом процесса. Для реализации планирования процессов требуется дополнительная информация: V идентификатор процесса, V состояние процесса, V данные о степени привилегированности процесса, V место нахождения кодового сегмента и т.п. Такая информация называется дескриптором процесса. Задачи планирования Планирование процессов в мультипрограммных ОС включает в себя решение следующих задач: 1) определение момента времени для смены выполняемого процесса; 2) выбор процесса на выполнение из очереди готовых процессов; 3) переключение контекстов "старого" и "нового" процессов. Первые две задачи решаются программными средствами, а последняя в значительной степени Аппаратно. Цели планирования 1. Справедливость: гарантировать каждому заданию или процессу некоторую часть времени Использования процессора в компьютерной системе, не допуская ситуаций, когда процесс Одного пользователя постоянно занимает процессор, а процесс другого пользователя Фактически не выполняется 2. Эффективность: постараться занять процессор на все 100% рабочего времени, не позволяя Ему простаивать в ожидании процессов, готовых к исполнению (в реальных ВС загрузка процессора колеблется от 40 до 90 %) Свойства планирования 1. Предсказуемость: одно и то же задание должно выполняться приблизительно за одно и то же Время Минимальные накладные расходы Сбаллансированная загрузка ресурсов ВС с предпочтением процессов, которые будут Занимать малоиспользуемые ресурсы Масштабируемость: алгоритмы должны сохранять работоспособность при увеличении Нагрузки Статические параметры планирования Статические параметры (предельные значения ресурсов): • размер оперативной памяти, • максимальное количество памяти на диске для осуществления свопинга, • количество подключенных устройств ввода-вывода • каким пользователем запущен процесс или сформировано задание • насколько важной является поставленная задача, т. е. каков приоритет ее выполнения • сколько процессорного времени запрошено пользователем для решения задачи? • какие ресурсы ВС и в каком количестве необходимы заданию? Динамические параметры планирования Динамические параметры: • сколько времени прошло со времени выгрузки процесса на диск или его загрузки в Оперативную память • сколько оперативной памяти занимает процесс • сколько процессорного времени было уже предоставлено процессу • промежуток времени непрерывного использования процессора (CPU brust) • промежуток ввода-вывода – I/O burst Алгоритм планирования First-Come, First-Served (FCFS) Невытесняющее планирование Процесс, получивший в свое распоряжение процессор, занимает его до истечения своего Текущего CPU burst После этого для выполнения выбирается новый процесс из начала очереди Преимущество: простота реализации Недостатки: Среднее время ожидания и среднее полное время выполнения для этого алгоритма Существенно зависят от порядка расположения процессов в очереди При наличии процесса с длительным CPU burst короткие процессы, перешедшие в состояние готовность после длительного процесса, будут очень долго ждать начала своего выполнения Алгоритм FCFS практически неприменим для систем разделения времени Алгоритм планирования Round Robin (RR) • Вариант FCFS, реализованный в режиме вытесняющего планирования • Готовые процессы организованы циклически - сидят на карусели • Карусель вращается так, что каждый процесс находится около процессора небольшой Фиксированный квант времени, обычно 10 - 100 миллисекунд • Пока процесс находится рядом с процессором, он получает процессор в свое распоряжение и Может исполняться Алгоритм планирования Shortest-Job-First (SJF) Для алгоритмов FCFS и RR является существенным порядок расположения процессов в Очереди процессов готовых к исполнению Если короткие задачи расположены в ближе к началу очереди, то общая производительность Возрастает Если знать время следующих CPU burst для готовых процессов, то можно выбрать для Исполнения процесс с минимальной длительностью CPU burst Если таких процессов несколько, то для выбора можно использовать FCFS (без квантования Времени) ―Кратчайшая работа первой‖, или Shortest Job First (SJF). В качестве алгоритма краткосрочного планирования SJF может быть как вытесняющим, так и Невытесняющим При невытесняющем планировании процессор предоставляется избранному процессу на все
|
||||
Последнее изменение этой страницы: 2016-08-16; просмотров: 178; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.136.22.184 (0.008 с.) |