Средства распределения ресурсов
ОС поддерживает мультипрограммирование и старается эффективно использовать ресурсы, путём организации к ним очередей запроса, которые составляются тем или иным способом. Это требование достигается содержанием в памяти более одного процесса ожидающего процессор и более одного процесса готового использовать другие ресурсы.
Общая схема выделения ресурсов такова:
при необходимости использовать какой-либо ресурс, ОЗУ, устройство ввода/вывода процесс обращается к супервизору ОС. Супервизор ОС – центральный управляющий модуль ОС, который может состоять из нескольких модулей, например супервизор ввода/вывода, супервизор прерываний, супервизор программ, диспетчер задач т.п.
Задача посредством вызова команд или директив сообщает о своём требовании супервизору ОС, при этом указывается вид ресурса и если надо его объём. Директива обращения к ОС передаёт ей управление, переводя процессор в привилегированный режим работы (если такой существует).
Не все ОС имеют 2 режима работы. Режимы работы бывают привилегированными (режим супервизора), пользовательский, режим эмуляции.
Ресурс может быть выдан задаче по её запросу если:
• ресурс свободен и в системе нет задач более высокого приоритета к этому ресурсу
• текущий запрос и ранее полученные запросы допускают совместное использование ресурса.
• ресурс используется задачей более низкого приоритета и может быть временно отобран
|
|
Получив запрос, ОС либо удовлетворяет его и возвращает управление задаче, выдавшей этот запрос, либо, если ресурс занят, ставит задачу в очередь к ресурсу. Переводя задачу в состояние ожидания (блокируя), очередь к ресурсу может быть организована несколькими способами, но чаще всего с помощью специальной структуры. После окончания работы с ресурсом задача опять с помощью специального вызова супервизора сообщает ОС об отказе от ресурса. Или ОС забирает ресурс сама, если управление возвращается к супервизору после выполнения какой-либо системной функции. Супервизор ОС, получив управление, по этому обращению освобождает ресурс и проверяет, имеется ли очередь к освободившемуся ресурсу. Если очередь есть, то в зависимости от принятой дисциплины обслуживания и приоритетов заявок он выводит из состояния ожидания задачу, ждущую ресурс и переводит её в состояние готовности к выполнению, после этого управление либо передаётся этой задаче, либо возвращается к той, которая только что освободила ресурс. При выдаче запроса на ресурс задача может указать хочет ли она владеть ресурсом монопольно или допускает совместное использование с другими задачами. Если в системе имеется некоторая совокупность ресурсов, то упорядочить их использование можно на основе определённой стратегии. Эта стратегия подразумевает чёткую формулировку целей, следуя которой можно добиться эффективного распределения ресурсов.
|
|
Система распределения оперативной памяти. Контроль и распределение памяти в MS - DOS
Первый килобайт памяти занимает таблица векторов прерываний .Она содержит 256 элементов, имеющих размер 4 байта. Это дальние адреса обработчиков прерываний, состоящие из компонент сегмента и смещения.
Адреса 0000:0400 - 0000:04FF (или от 0040:0000 до 0050:0000) занимает область данных BIOS . Это так называемые внутренние переменные BIOS . К ним можно обращаться для получения различной информации. При этом необходимо только помнить, что формат этой области может быть различным для различных версий BIOS.
Начиная с адреса 0000:0500 следует область данных MS-DOS. Здесь MS-DOS хранит свои внутренние таблицы, переменные и структуры данных. Формат этой области (и ее размер) зависит от версии операционной системы.
Далее следует большая область памяти, используемая MS-DOS. Здесь находятся:
· система ввода-вывода MS-DOS (содержимое файла io.sys );
· обработчики прерываний MS-DOS, в частности, обработчик прерывания INT 21h (эти обработчики входят в состав файла msdos.sys );
|
|
· внутренние буферы MS-DOS и внутренние структуры данных;
· загружаемые драйверы (перечисленные в файле config.sys ).
После резидентных программ находится выполняющаяся в настоящий момент программа (запущенная из файла с расширением имени .com или .exe). Она может занимать всю оставшуюся память до адреса A000:0000 или только ее некоторую часть.
Далее и до конца границы первого мегабайта оперативной памяти идет область ПЗУ. Там расположено ПЗУ базовой системы ввода/вывода BIOS , ПЗУ интерпретатора BASIC (если такое ПЗУ есть, что совсем не обязательно), расширение. Диапазон адресов свыше первого мегабайта так называемая расширенная память (Extended Memory). Она используется операционной системой MS-DOS для организации "электронного" диска, кэш -памяти для дисков, для загрузки резидентных программ и драйверов.
Дата добавления: 2019-02-13; просмотров: 242; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!