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

15

Оглавление

Введение 2

1. История виртуальной памяти. 4

2. Система управления памятью. 5

3. Принцип управления виртуальной памятью. 6

4. Организация и управление виртуальной памятью 7

4.1. Страничная организация виртуальной памяти 10

4.2. Сегментная организация виртуальной памяти 11

4.3. Сегментно-страничная организация виртуальной памяти 12

Заключение 14

Список литературы 15

Введение

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

Понятие виртуальной памяти было впервые введено в 1956 году немецким физиком Фрицем-Рудольфом Гюнтшем (нем. Fritz-Rudolf Güntsch) из Берлинского технического университета в его докторской диссертации «Логическое проектирование цифровой вычислительной машины с несколькими асинхронными вращающимися барабанами и автоматическим высокоскоростным управлением памятью». В ней описывается машина с 6 блоками памяти на магнитных сердечниках ёмкостью 100 слов каждый, и адресным пространством в 1000 блоков по 100 слов.

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

Подкачка страниц впервые была реализована в Манчестерском университете как способ расширения памяти компьютера Atlas путём объединения его основной памяти на магнитных сердечниках объёмом 16000 слов с памятью на магнитных барабанах ёмкостью 96000 слов. Первая поставка машины Atlas состоялась в 1962 году, но работающие прототипы подкачки страниц были разработаны уже в 1959 году.

В 1961 году Burroughs Corporation независимо выпустила первый промышленно производившийся компьютер с виртуальной памятью B5000, использующий сегментацию вместо подкачки страниц.[6][7] В 1965 году виртуальная память была реализована в отечественной машине БЭСМ-6, хотя реализованный механизм не позволял расширить 15-разрядное адресное пространство процесса и ограничивал удобство программирования.

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

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

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

· преобразование виртуальных адресов в физические.

· размещение данных в ЗУ разного типа, например, часть ОП, а часть на диске;

· перемещение по мере необходимости данные между ЗУ разного типа, например, подгрузка нужной части программы с диска в ОП;

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