Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OSSO.docx
Скачиваний:
9
Добавлен:
21.08.2019
Размер:
175.27 Кб
Скачать

Физическая организация памяти.

T (суммарное)= 0,95*1+0,05(1нс+10 нс)=1,55

Если необходимо получить данные, находящиеся на втором уровне, их сначала необходимо передать на первый уровень. Причем передача будет включать не только потребные данные, а весь блок, в котором они содержатся, произойдет длительный процесс переадресации.

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

Объём ОП существенно влияет на характер вычислительного процесса, так как он ограничивает число одновременно выполняющихся программ, то есть уровень мультипрограммирования.

Если предположить что процесс проводит некоторую часть своего времени Р в режиме ожидания завершения операции ввода/вывода, то степень загрузки центрального процессора Z определяется следующей зависимостью, где n, соответственно, число процессов.

Под виртуализацией ОП понимают временную выгрузку неактивных процессов, находящихся в ожидании каких-либо ресурсов, на диск к моменту, когда подойдет очередь выполнения выгруженного процесса, его образ будет возвращен с диска в ОП. Если при этом обнаружится, что свободного места в ОП не хватает, на диск будет выгружен другой процесс, освобождая место загружаемому. Это позволяет повысить уровень мультипрограммирования, так как объем ОП уже не так жестко ограничивает число одновременно выполняемых процессов. При этом суммарный объем ОП, занимаемый образами процессов может существенно превосходить размер физической ОП.

Размер дискового пространства, который можно выделить для организации виртуальной памяти ограничивает возможностями ЦП по адресации и составляет 2^32 ≈ 4 ГБ степени для 32-х разрядных процессоров и 2^64 для 64-х разрядных ЦП.

Виртуализация ОП осуществляется совокупностью аппаратных и программных средств в вычислительных системах (схемами центрального процессора и возможностями ОС) автоматически без участия пользователя.

Для виртуализации используют 2 возможных подхода:

  1. Свопинг – образы процессов выгружаются на диск и возвращаются в ОП целиком.

  2. Виртуальная память – между ОП и диском перемещаются части образов (сегменты, страницы, блоки и т. д.) процессоров.

Недостатки свопинга:

● избыточность перемещаемых данных и в силу этого замедление работы системы и неэффективное использование памяти.

● невозможность загрузки процесса, размеры которого превышают имеющуюся в наличии ОП.

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

Виртуальная память не имеет указанных недостатков, но её проблемой является значительные затраты времени на преобразование виртуальных адресов в физические, сложность программной и аппаратной поддержки.

Функции ос по управлению памятью.

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

В многопрограммных системах пользовательскую часть необходимо разделить между несколькими процессами в том числе и процессами ОС.

Задача распределения выполняется ОС динамически специальной подсистемой управления памяти. Эффективное управление памятью жизненно важно для многозадачных систем. Если в памяти будет находится небольшое число процессов, то значительная часть времени процессы будут находиться в режиме ожидания и загрузка процессора будет низкой.

Схемы управления памятью прошли несколько этапов развития:

С появлением мультипрограммирования задачи ОС существенно усложнились. Функциями ОС по управлению памятью в мультипрограммных системах являются:

● отслеживание и учет свободной и занятой памяти.

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

● настройка адресов программы на конкретную область физической памяти.

● полное или частичное вытеснение кодов и данных процессов из ОП на диск в случае, когда размеры ОП недостаточны для размещения всех процессов и возвращение их в ОП при появлении свободного места в ней.

● защита памяти выделенной процессу от возможных вмешательств со стороны других процессов.

● дефрагментация памяти.

Для идентификации переменных и команд на разных этапах жизненного цикла программы используются символьные имена, виртуальные и физические адреса.

Символьные имена присваивает пользователь при написании программ на алгоритмическом языке (или на языке программирования).

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

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

Совокупность виртуальных адресов называется виртуальным адресным пространством. Диапазон адресов виртуального пространства у всех процессов один и тот же и определяется разрядностью и типом процессора.

Существует 2 принципиально отличных подхода к преобразованию виртуальных адресов в физические:

1. Преобразования выполняются один раз для каждого процесса во время его начальной загрузки в память. Преобразования осуществляет перемещающий загрузчик на основе имеющихся у него данных о начальном адресе физической памяти и информации предоставленной транслятором об адресно-зависимых элементах программы.

2. Программа загружается в память в виртуальных адресах. Место начальной загрузки определяет перемещающий загрузчик. Во время выполнения программы при каждом обращении к памяти будет выполняться преобразование виртуальных адресов в физические средствами ОС.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]