Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Требования к ОС. Синхронизация процессов в ОС. . Алгоритмы распределения времени процессора в ОС. Управление процессами – верхний уровень.Содержание книги
Поиск на нашем сайте Требования к ОС · Надежность · Защита информации · Отказоустойчивость · Гибкость · Открытость · Эргономичность 32. Синхронизация процессов в ОС. У каждого ресурса есть свой диспетчер, который: · отслеживает состояние ресурса (свободен/занят) · поддерживает алгоритм и стратегию выделения ресурса · выделяет ресурс (организует очередь) · освобождает ресурс Состояние ресурса хранится в управляющей таблице. Для синхронизации ресурсов и организации очереди используется семафор (поле, где хранится некоторое число, изначально S=1). Алгоритм диспетчера по обработке запросов на использование ресурса P(S): S=S-1 if (S < 0) процессàочередь ; тогда абсолютное значение S – количество процессов в очереди else выделить ресурс процессу Освобождение ресурса процессом – V(S): S=S+1 if (S <= 0) разблокировать первый ждущий процесс В Windows 2000 каждый процесс содержит в себе диспетчер процессов. Возникает проблема синхронизации диспетчеров. Несколько системных процессов имеют доступ к семафорам и управляющей таблице. Для них имеется еще один управляющий элемент, который либо разрешает (0), либо запрещает (1) доступ системного процесса к управлению ресурсами. Работа с битами осуществляется командой TestAndSet. 33. Алгоритмы распределения времени процессора в ОС. Управление процессами – верхний уровень. Готовый процесс имеет все ресурсы, кроме процессора. Активный процесс может быть только один. Готовые процессоры организуют очередь, и при освобождении CPU диспетчер процессора запускает следующий процесс. Этому процессу выделяется квант времени работы с CPU. После этого он может либо завершиться, либо перейти в очередь готовых, либо стать заблокированным, если ему нужен недоступный ресурс. A. Создание процесса (верхний уровень) · Выделение ОП · Выделение статических ресурсов · Создается PCB · Создается образ процесса · Программа загружается в память · PCB включается в очередь B. Выбор процесса, которому предоставляется время CPU Из очереди готовых процессов выбирается один активный (если один CPU). C. Завершение процесса (верхний уровень) · Закрываются все открытые файлы · Освобождается память · Освобождаются статические и динамические ресурсы · Уничтожается PCB (при этом виртуальные устройства связываются с физическими) D. Процесс ждет ресурса E. Процесс освобождает ресурс F. Ожидание объектов синхронизации. Правило построения очереди готовых процессов. (При “В” какой квант времени ему предоставляется.) (q это квант времени) I. FIFO (First-in First out). Кто первым пришел, тот первым и обслуживается (q = ¥). II. Круговорот (RR - Round Robin). FIFO, q = const. Удобно при равноправных процессах. III. Алгоритм приоритетного планирования времени CPU (PPA). Процессы делятся на системные и пользовательские. Каждый процесс имеет приоритет. Приоритет влияет на положение в очереди, а не на квант времени. Маленькие процессы вперед. Здесь процесс с низким приоритетом может никогда не выполниться (q = любой). IV. Круговорот со смещением (SRR - Shift RR). Каждому процессу присваивается диспетчерский приоритет, но он используется не для очереди готовых процессов (это по FIFO), а для назначения кванта времени (чем выше приоритет, тем быстрее идет процесс). Это круговорот со смещением FIFO, но квант времени пропорционален приоритету. Это обеспечивает выполнение процесса в любом случае, q = f(приоритет). V. Алгоритм очереди с обратной связью (Feed Back Queue Algorithm). STF (Short Time First) – высокий приоритет назначается коротким программам. Чем меньше времени остается до завершения, тем больше приоритет. VI. Алгоритм использования очередей с обратной связью (FBQUA). Первоначально процесс попадает в первую очередь. Процесс попадает в каждую очередь определенное число раз, а потом переходит в следующую очередь, если не завершился. Автоматически дается преимущество коротким процессам. Очереди также строятся по принципу FIFO. В Windows используется вытесняющее планирование: 1. Диспетчерский приоритет может меняться 2. Если появляется процесс с большим приоритетом, чем у активного, то активный процесс прекращает выполняться.
|
||
|
Последнее изменение этой страницы: 2024-06-27; просмотров: 44; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.009 с.) |