Программно-управляемая виртуальная память

Программно-управляемая виртуальная память

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

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

Метки: , , , ,

Связанные записи