Главная страница
Навигация по странице:

  • Рисунок 32 – Отображение виртуальных адресов в физические

  • Рисунок 33 – Двухуровневая схема построения памяти

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


    Скачать 1.97 Mb.
    НазваниеПрограмма для эвм это упорядоченная последовательность команд, подлежащая обработке
    Дата16.04.2023
    Размер1.97 Mb.
    Формат файлаdocx
    Имя файлаШинная организация микропроцессорных систем- с одной шиной, с дв.docx
    ТипПрограмма
    #1065457
    страница15 из 40
    1   ...   11   12   13   14   15   16   17   18   ...   40

    24.Концепция виртуальной памяти.


    Термин виртуальная память ассоциируется с возможностью адресовать пространство памяти, большее, чем емкость основной (реальной, физической) памяти конкретного процессора.

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

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

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

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

    Для установления соответствия между виртуальными и физическими адресами на практике используется механизмдинамическогопреобразованияадресовDAT, который обеспечивает преобразование адресов во время выполнения программы. Этот механизм обладает следующим свойством (рис. 32): смежные адреса виртуального адресного пространства не обязательно будут смежными в физической памяти. Это свойство называют искусственнойсмежностью. Оно позволяет устранять фрагментациюфизической памяти.




    Рисунок 32 Отображение виртуальных адресов в физические

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

    Концепция виртуальной памяти требует применения двухуровневой схемы построения памяти (рис. 33).



    Рисунок 33 Двухуровневая схема построения памяти

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

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

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

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

    Например, в 32-разрядных процессора фирмы Intel размер виртуального адресного пространства для одной задачи составляет 64 Тбайт.
    1   ...   11   12   13   14   15   16   17   18   ...   40


    написать администратору сайта