Многоуровневая (иерархическая) организация памяти компьютера
Обмен данными в многоуровневой памяти осуществляется только между двумя соседними уровнями. В принципе, могут иметь место исключения из этого правила, например, в виде пересылок между ОП и регистрами ЦП, минуя кэш-память.
Изменение характеристик от уровня к уровню имеет следующие закономерности:
сверху вниз емкость памяти увеличивается;
сверху вниз быстродействие и удельная стоимость уменьшаются.
Для двух соседних уровней все необходимые для верхнего уровня данные обязательно размещаются на нижнем уровне. Передача данных между уровнями инициируется в том случае, если на верхнем уровне при обращении к нему необходимых данных не обнаружено.
В отношении кэш-памяти (в качестве примера) обнаружение требуемой информации называется cache-hit (попадание), а отсутствие требуемой информации – cache-miss (промах).
Пересылка блоков между тремя верхними уровнями реализуется чисто аппаратными средствами, в то время как пересылка между основной и внешней памятью реализуется совместно аппаратными и программными средствами.
Эффективность использования модели иерархической памяти во многом, если не во всем, объясняется существованием так называемого принципа локальности обращений (локальности ссылок). Этот принцип рассматривается в двух аспектах: пространственном и временном в отношении как команд, так и данных.
Пространственный аспект принципа локальности в отношении команд означает, что вероятность выборки команды по следующему адресу по сравнению с адресом исполняемой команды намного больше, чем по любому другому адресу. Этот принцип проявляется на линейных участках программ. По статистике, средняя длина линейного участка составляет 5-8 машинных команд.
Пространственный аспект принципа локальности в отношении данных означает, что вероятность обращения к данным по следующему адресу по сравнению с предыдущим обращением намного больше вероятности обращения по любому другому адресу. Этот принцип наиболее ярко проявляется при обработке структур данных типа массив.
Временной аспект принципа локальности в отношении команд и данных состоит в большей вероятности повторных обращений по одним и тем же адресам за командами или данными в течение небольшого промежутка времени. В отношении команд этот принцип наиболее ярко проявляется в циклах, а в отношении данных – при повторной обработке одной и той же структуры (например, массива).
Дополнение к упрощенной структуре иерархической памяти
Регистры процессора (1 уровень)
Кэш-память (2 уровень)
Оперативная память (3 уровень)
Внешняя память (4 уровень)
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.