Информатика и технология программирования


Кэширование структур данных при работе с файлами


Поэлементная загрузка данных из файла хороша в том случае, когда речь идет об отдельной операции над файлом. В этом случае при минимальных затратах используемой памяти получается минимальная же скорость доступа к данным. Очевидно, что путем сохранения наиболее часто используемых данных в памяти программы можно значительно увеличить скорость доступа к файлу. Такой способ организации доступа к данным называется КЭШИРОВАНИЕМ.

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

Каждая из перечисленных характеристик имеет значение . Подробнее стоит остановиться на " прозрачности" . КЭШ-память не меняет систему адресации данных в основной памяти. То есть пользователь (программа), осуществляющий доступ к данным основной памяти через КЭШ, " не видят" последней. КЭШ-память исключена из системы адресации данных. Заметим, что кэширование применяется на самых разных уровнях как архитектуры компьютеров, так и программного обеспечения. Например :



- быстродействующая КЭШ-память процессора не меняет системы адресации процессором оперативной памяти процессора и используется для хранения наиболее часто используемых ячеек ;



- виртуальная память представляет собой виртуальное адресное пространство адресов, в которое отображаются данные из " файлов подкачки" и библиотек. В этом случае обычная оперативная память играет роль КЭШ-памяти по отношению к виртуальной ;



-PROXY- сервер Интернет играет роль КЭШ-памяти для наиболее часто используемых страниц и " прозрачен" по отношению к системе адресации, принятой в сети.

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


Начало  Назад  Вперед



Книжный магазин