ТОП 10:

Вопрос 18. Технология виртуальной памяти. Алгоритмы замещение страниц.




Виртуальная память.

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

Обращение к invalid- стр. недостаточность. Тогда ос загружает необх стр в оп – valid.

Она разбивает на страницы или сегменты, которые могут находиться как в ОП, так и во внешней памяти. Могут использоваться методы, рассмотренные выше. Только каждая строка должна дополняться полем «бит присутствия», который указывает, где находится страница (ОП или внешняя память). Если при вычислении адреса окажется, что страница находится во внешней памяти, то возникает событие – страничная недоступность, которая вызывает прерывание процесса и передачу управления ОС. В функции ОС входит загрузка требований страницы в ОП.

Страницы, если не в ОП, то в области свопинга. Для этой области используется высокоскоростное устройство – Swapdevice. В большинстве систем для каждого процесса используется одна глобальная таблица страниц. При этом при большом размере процессов таблица страниц может быть достаточно большой.

т.е. в таблице 222 записей. Они могут находиться целиком или частично в виртуальной памяти.

Для организации хранения страниц в виртуальной памяти и минимизации страниц используется двухуровневая страничная организация виртуальной памяти.

Достаточно хранить каталог, можно организовать Х*У страниц. Если каждая строка в каталоге КТС 4 б.

А размер КТС - 4 Кб, то число строк в КТС = 1024 (Х)

Число страниц Х*У.

Если теперь умножить на размер страницы в ТС- 4 кБ, то получим 4 Гб ВП.

Алгоритм замещения страниц.

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

Алгоритмы.

1. Уменьшение на 1 количества мультипрограммной смеси.

2. Приостановка процесса, который требует страницы до тех пор, пока они не освободятся.

3. Замещение страниц

а)замещается та страница, которая дольше всего находится в ОП (наиболее «старая» страница);

б)замещается та страница, на которую нет ссылок на протяжении большого периода времени.

в)Случайно удалённая страница ОП помещается в свопинг файл, а из swap может потом подгрузиться.

г)По вероятности использования.

д)Удаление по приоритетам (наиболее эффективно)

Вопрос 19. Задачи программного обеспечения ввода/вывода(в/в). В/в без использования и с использованием прерываний. Прямой доступ к памяти

 

Управление вводом/выводом.

Ввод/вывод – обмен данными между процессом и внешним устройством.

Задачи ПО ввода/вывода.

1) Обеспечение независимости от устройств, т.е. мы можем писать программы без предварительного указания устройств, способные получать сообщения ввода/вывода без дополнительных устройств.

2) Единообразное именование. Имя устройства или файлов должно быть текстовой строкой или числом(не должно зависеть от внешнего устройства).

3) Обработка ошибок ввода/вывода должна быть реализована как можно ближе к аппаратному уровню (повторная запись или прочитывание).

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

5) Буферизация данных. Часто данные, поступающие в устройство вв/выв, не могут быть сразу отправлены адресату т.к. может происходить:.

- Предварительный анализ

- в устройствах реального времени важно время поступления данных, необходимо согласовать время внешних устройств со временем считывания и записью в ОП.

Чаще всего внеш устройства медленнее, чем ОП и процессор. t не совпадают. Используется буферизация (однако это приводит к понижению производительности).

6) Задача выделенных устройств и устройств коллективного пользования .Отдельные устройства в/в могут использоваться несколькими пользователями, это не должно приводить к конфликтам(устройства коллективного пользования). Выделенные устройства используются в монопольном режиме (запрос- использование- освобождение). ОС обеспечивает коллективный или выделенный доступ

Уровни ввода – вывода.

1. Верхний уровень. ОС предоставляет приложению высокоуровневый интерфейс, позволяющий работать с созданными системами для некоторых виртуальных устройств. Этот интерфейс зависит от ОС.

2. Нижний уровень. Обеспечивает интерфейс (управление) с аппаратным обеспечением.

1. Языковой интерфейс. Предоставляется на уровне языка (программа производителя).

Запрещается прямое программирование устройств ввода/вывода. Ввод/вывод осуществляется путем запроса сервисом ОС с помощью системных вызовов.

2. Системные вызовы. Отделяет пользовательский уровень от ОС.

Независимый от языка интерфейс ввода/вывода.

3. Уровень ОС.

Управления ввода/вывода определяет тип устройства, конкретно определяет модуль управления устройством (драйвер).

Эти 3 модуля составляют процесс организации ввода/вывода на прикладном уровне, который предполагает переключение привилегий (либо пользователь, либо ОС) и некоторые команды для работы с буфером. Для организации ввода/вывода есть область буфера для данного типа устройств.







Последнее изменение этой страницы: 2016-08-16; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.226.243.36 (0.007 с.)