Понятие виртуальной памяти
Для большинства типичных применений ВМ характерна ситуация, когда размещение всей программы в ОП невозможно из-за ее большого размера. В этом, однако, и нет принципиальной необходимости, поскольку в каждый момент времени «внимание» машины концентрируется на определенных сравнительно небольших участках программы. Таким образом, в ОП достаточно хранить только используемые в данный период части программ, а остальные части могут располагаться на внешних ЗУ (ВЗУ). Сложность подобного подхода в том, что процессы обращения к ОП и ВЗУ существенно различаются, и это усложняет задачу программиста. Выходом из такой ситуации было появление в 1959 году идеи виртуализации памяти, под которой понимается метод автоматического управления иерархической памятью, при котором программисту кажется, что он имеет дело с единой памятью большой емкости и высокого быстродействия. Эту память называют виртуальной (кажущейся) памятью. По своей сути виртуализация памяти представляет собой способ аппаратной и программной реализации концепции иерархической памяти. В рамках идеи виртуализации памяти ОП рассматривается как линейное пространство N адресов, называемое физическим пространством памяти. Для задач, где требуется более чем N ячеек, предоставляется значительно большее пространство адресов (обычно равное общей емкости всех видов памяти), называемое виртуальным пространством, в общем случае не обязательно линейное. Адреса виртуального пространства называют виртуальными, а адреса физического пространства — физическими. Программа пишется в виртуальных адресах, но поскольку для ее выполнения нужно, чтобы обрабатываемые команды и данные находились в ОП, требуется, чтобы каждому виртуальному адресу соответствовал физический. Таким образом, в процессе вычислений необходимо, прежде всего, переписать из ВЗУ в ОП ту часть информации, на которую указывает виртуальный адрес (отобразить виртуальное пространство на физическое), после чего преобразовать виртуальный адрес в физический.
Среди систем виртуальной памяти можно выделить два класса: системы с фиксированным размером блоков (страничная организация) и системы с переменным размером блоков (сегментная организация). Оба варианта обычно совмещают (сегментно-страничная организация). Массивы магнитных дисков с избыточностью Магнитные диски, будучи основой внешней памяти любой ВМ, одновременно остаются и одним из «узких мест» из-за сравнительно высокой стоимости, недостаточной производительности и отказоустойчивости. Характерно, что если в плане стоимости и надежности ситуация улучшается, то разрыв в производительности между МД и ядром ВМ постоянно растет. Так, при удвоении быстродействия процессоров примерно каждые два года для МД такое удвоение было достигнуто лишь спустя десять лет. Ясно, что уже с самого начала использования подсистем памяти на базе МД не прекращаются попытки улучшить их характеристики. Одно из наиболее интересных и универсальных усовершенствований было предложено в 1987 году учеными университета Беркли (Калифорния) [179]. Проект известен под аббревиатурой RAID (Redundant Array of Independent (or Inexpensive) Disks) — массив независимых (или недорогих) дисков с избыточностью. В основе концепции RAID лежит переход от одного физического МД большой емкости к массиву недорогих, независимо и параллельно работающих физических дисковых ЗУ, рассматриваемых операционной системой как одно большое логическое дисковое запоминающее устройство. Такой подход позволяет повысить производительность дисковой памяти за счет возможности параллельного обслуживания запросов на считывание и запись, при условии, что данные находятся на разных дисках. Повышенная надежность достигается тем, что в массиве дисков хранится избыточная информация, позволяющая обнаружить и исправить возможные ошибки. На период, когда концепция RAID была впервые предложена, определенный выигрыш достигался и в плане стоимости. В настоящее время, с развитием технологии производства МД, утверждение об экономичности массивов RAID становится проблематичным, что, однако, вполне компенсируется их повышенными быстродействием и отказоустойчивостью.
Было предложено пять схем организации данных и способов введения избыточности, названные авторами уровнями RAID: RAID I, RAID 2,..., RAID 5. В настоящее время производители RAID-систем, объединившиеся в ассоциацию RAB (RAID Advisory Board), договорились о единой классификации RAID, включающей в себя шесть уровней (добавлен уровень RAID 0). Известны также еще несколько схем RAID, не включенных в эту классификацию, поскольку по сути они представляют собой различные комбинации стандартных уровней. Хотя ни одна из схем массива МД не может быть признана идеальной для всех случаев, каждая из них позволяет существенно улучшить какой-то из показателей (производительность, отказоустойчивость) либо добиться наиболее подходящего сочетания этих показателей. Для всех уровней RAID характерны три общих свойства: RAID представляет собой набор физических дисковых ЗУ, управляемых операционной системой и рассматриваемых как один логический диск; данные распределены по физическим дискам массива; избыточное дисковое пространство используется для хранения дополнительной информации, гарантирующей восстановление данных в случае отказа диска.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|