рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

ИЕРАРХИЯ ЗАПОМИНАЮЩИХ УСТРОЙСТВ

ИЕРАРХИЯ ЗАПОМИНАЮЩИХ УСТРОЙСТВ - раздел Компьютеры, Обзор компьютерных систем Конфигурация Памяти Компьютера В Основном Определяется Тремя Пара­метрами: Об...

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

Вопрос об объеме решить не так просто. Какой большой ни была бы па­мять, все равно будут разработаны приложения, которым ее не хватит. В отно­шении быстродействия памяти все ясно: чем быстрее, тем лучше. Для достиже­ния высшей производительности память должна иметь возможность быстро об­мениваться данными с процессором. Но в реальной жизни едва ли не главным становится третий параметр. Стоимость памяти должна быть сравнима со стои­мостью других компонентов.

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

• Чем меньше время доступа, тем дороже каждый бит.

• Чем выше емкость, тем ниже стоимость бита.

• Чем выше емкость, тем больше время доступа.

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

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

1. Снижается стоимость бита.

2. Возрастает емкость.

3. Возрастает время доступа.

4. Снижается частота обращений процессора к памяти.

 

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

Предположим, процессор имеет доступ к памяти двух уровней. На первом уровне содержится 1000 слов, и он характеризуется временем доступа . Допустим, что к словам, расположенным на первом уровне, процессор может обращаться непосредственно. Если же нужно получить доступ к слову, находящемуся на второй уровне, то это слово сначала передается на первый уровень, и лишь потом процессор получает к нему доступ. Опустим для простоты вопрос о времени, которое требуется процессору для определения, на каком именно уровне находится слово. На рис. 1.15 показан вид кривой, описывающей данную ситуацию. На графике представлена зависимость среднего времени доступа к памяти второго уровня от результативности поиска Н. Символом Н обозначено отношение числа нахождений нужного слова в быстрой памяти (например, в кэше) к числу всех обращений, T1 — время доступа к уровню 1, T2 — время доступа к уровню 2. Видно, что при высокой частоте обращения к уровню 1 среднее время доступа намного ближе ко времени доступа к уровню 1, чем ко времени доступа к уровню 2.

 

Предположим, что в нашем примере 95% обращений к памяти приходится на кэш (Н = 0.95). Тогда среднее время доступа можно записать как

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

Основой соблюдения условия 4 служит принцип, известный как принцип локализации обращений [DENN68]. Адреса, к которым во время исполнения про­граммы обращается процессор, имеют тенденцию собираться в группы. Как правило, программы содержат в себе повторяющиеся циклы и подпрограммы. Как только наступает очередь цикла или подпрограммы, процессор обращается лишь к небольшому повторяющемуся набору команд. Работа с таблицами и массивами также предполагает доступ к сгруппированным данным. Со временем одни используемые кластеры заменяются другими, но в течение небольших промежутков времени процессор преимущественно работает с фиксированными кластерами памяти.

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

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

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

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

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

Производительность памяти с несколькими уровнями рассматривается в приложении А к данной главе.

 

– Конец работы –

Эта тема принадлежит разделу:

Обзор компьютерных систем

Таблица Классы прерываний Программнное прерывание Прерывание по таймеру Прерывание... Прерывания в основном предназначены для повышения эффективности ра боты Например большинство устройств ввода вывода...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: ИЕРАРХИЯ ЗАПОМИНАЮЩИХ УСТРОЙСТВ

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Обзор компьютерных систем
1.1. Основные элементы 1.2. Регистры процессора 1.3. Исполнение команд 1.4. Прерывания 1.5. Иерархия запоминающих устройств 1.6. Кэш 1.7. Техно

ОСНОВНЫЕ ЭЛЕМЕНТЫ
На макроуровне компьютер состоит из процессора, памяти и устройств вво­да-вывода; при этом каждый компонент представлен одним или несколькими модулями. Чтобы компьютер мог выполнять свое основное п

РЕГИСТРЫ ПРОЦЕССОРА
В процессоре имеется набор регистров, представляющих собой область па­мяти быстрого доступа» но намного меньшей емкости, чем основная память. Регистры процессора выполняют две функции.

Регистры, доступные пользователю
К доступным регистрам пользователь может обращаться с помощью команд машинного языка. К этим регистрам, как правило, имеют доступ все програм­мы — как приложения, так и системные. Обычно среди дост

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

ИСПОЛНЕНИЕ КОМАНД
Программа, которую выполняет процессор, состоит из набора хранящихся в памяти команд. В простейшем виде обработка команд проходит в две стадии: процессор считывает (выбирает) из памяти, а затем зап

Выборка и исполнение команды
В начале каждого цикла процессор выбирает из памяти команду. Обычно адрес ячейки, из которой нужно извлечь очередную команду, хранится в про­граммном счетчике (PC), Если не указано иное, после извл

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

Прерывания и цикл команды
Благодаря прерываниям во время выполнения операций ввода-вывода процес­сор может быть занят обработкой других команд. Рассмотрим ход процесса, пока­занный на рис. 1.5,б. Как и в предыдущем с

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

Многозадачность
  Бывает, что для эффективного использования процессора одних прерываний недостаточно. Обратимся, например, к рис. 1.9,6. Если время, которое требуется для выполнения операций ввода-в

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

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

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

Программируемый ввод-вывод
  Когда процессору при выполнении программы встречается команда, связанная с вводом-выводом, он выполняет ее, передавая соответствующие команды контроллеру ввода-вывода. При программи

Ввод-вывод с использованием прерываний
Проблема программируемого ввода-вывода состоит в том, что процессор должен долго ждать, пока контроллер ввода-вывода будет готов читать или при­нимать новые данные. Во время ожидания процессор долж

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

Локализация
Основой для повышения производительности двухуровневой памяти являет­ся принцип локализации, о котором шла речь в разделе 1.5. Основной постулат состоит в том, что последовательные обращения к памя

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

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

Реализация стека
Стек — это упорядоченный набор элементов, причем при обращении к нему можно получить доступ лишь к одному из элементов. Этот элемент называется вершиной стека. Число элементов стека (его дли

Вызов процедуры и возврат из нее
Общепринятым методом управления вызовами процедур и возвратами из них является использование стека. При обработке вызова процессор помещает в стек адрес возврата. При возврате из проц

Реентерабельные процедуры
Реентерабельная (повторно входимая) процедура является весьма полезной концепцией, особенно успешно применяемой в многопользовательских и много­задачных системах. Реентерабельной называется процеду

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги