Виртуальная память компьютера

 

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

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

Известно устройство, содержащее оперативную память, разделенную на локальную и общую, и содержащее блок управления прохождением запросов, два входных коммутатора, блок управления первым блоком оперативной памяти, три выходных коммутатора, блок буферных регистров, блок обнаружения и исправления ошибок и коммутатор ввода-вывода [RU 2060538, C1, G06F 12/08, 20.05.1996].

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

Известно также устройство, содержащее флэш-память, оперативную память, отдельную энергонезависимую память, средство для копирования страницы флэш-памяти в виде образа страницы в оперативную память и обновления этого образа страницы, средство для записи обновленного образа страницы назад во флэш-память на свободную страницу и средство для обновления главной таблицы записи в энергонезависимой памяти [RU 2182375, C2, G11C 8/06, G06F 12/00, 10.05.2002].

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

Наиболее близким по технической сущности к предложенному является устройство для архивирования данных с помощью соответствующей прикладной программы в виртуальном прикладном окружении, содержащее процессор, память и накопитель информации, операционную систему, данные для архивирования и прикладную программу, соответствующую этим данным, так что прикладная программа может работать с этими данными, при этом, компьютерная система также включает в себя средство формирования виртуального прикладного окружения и в ответ на команду архивировать данные средство формирования виртуального прикладного окружения формирует виртуальное прикладное окружение, включающее данные, соответствующую прикладную программу и операционную систему [RU 2409838, С2, G06F 9/455, 20.01.2011].

Недостатком наиболее близкого технического решения является относительно низкое быстродействие.

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

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

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

Кроме того, устройство управления виртуальной памятью может быть выполнено по технологии аппаратной виртуализации с использованием программ Хоста Гипервизора для реализации алгоритма работы устройства управления виртуальной памятью.

На чертеже представлена функциональная схема виртуальной памяти компьютера.

Виртуальная память компьютера содержит процессор 1, внешний накопитель 2 и оперативную память 3, содержащую область 3-1, выделенную для размещения страниц виртуальной памяти, и область 3-2, выделенную для размещения таблицы доступа к страницам виртуальной памяти.

Виртуальная память компьютера содержит также устройство 4 управления виртуальной памятью.

В виртуальной памяти компьютера первый вход-выход процессора 1 соединен с первым входом-выходом устройства 4 управления виртуальной памятью, второй вход-выход которого соединен с первым входом-выходом внешнего накопителя 2, второй вход-выход которого соединен с первым входом-выходом области 3-1 оперативной памяти, выделенной для размещения страниц виртуальной памяти, второй вход-выход которой соединен со вторым входом-выходом процессора 1, третий вход-выход которого соединен с первым входом-выходом области 3-2 оперативной памяти, выделенной для размещения таблицы доступа к страницам виртуальной памяти, второй вход-выход которой соединен третьим входом-выходом устройства 4 управления виртуальной памятью.

Внешний накопитель 2 может быть выполнен в виде флэш-накопителя или винчестера, а устройство 4 управления виртуальной памятью может быть выполнено в виде выделенного ядра центрального процессора компьютера или по технологии аппаратной виртуализации с использованием программ Хоста Гипервизора для реализации алгоритма работы устройства управления виртуальной памятью.

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

Работает виртуальная память компьютера следующим образом.

Во время инициализации виртуальной памяти компьютера из процессора 1 устройству 4 управления виртуальной памятью передается информация о начальном адресе и размере области 3-1 оперативной памяти, выделенной для размещения виртуальных страниц памяти, а также адресе и размере области 3-2 оперативной памяти, выделенной для размещения таблицы доступа к страницам виртуальной памяти. Обе области выделены в оперативной памяти 3, которая может являться частью оперативной памяти компьютера.

После этого устройство 4 управления виртуальной памятью работает с таблицей доступа к страницам виртуальной памяти самостоятельно.

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

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

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

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

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

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

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

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

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

2. Устройство по п.1, отличающееся тем, что устройство управления виртуальной памятью выполнено в виде выделенного ядра центрального процессора компьютера.

3. Устройство по п.1, отличающееся тем, что устройство управления виртуальной памятью выполнено по технологии аппаратной виртуализации с использованием программ Хоста Гипервизора для реализации алгоритма работы устройства управления виртуальной памятью.



 

Наверх