Оперативная память

Операти́вная па́мять ( — память с произвольным доступом) — в большинстве случаев энергозависимая часть системы компьютерной памяти, в которой во время работы компьютера хранится выполняемый машинный код (программы), а также входные, выходные и промежуточные данные, обрабатываемые процессором. Оперативное запоминающее устройство (ОЗУ) — техническое устройство, реализующее функции оперативной памяти. ОЗУ может изготавливаться как отдельный внешний модуль или располагаться на одном кристалле с процессором, например, в однокристальных ЭВМ или однокристальных микроконтроллерах.

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

Содержащиеся в полупроводниковой оперативной памяти данные доступны и сохраняются только тогда, когда на модули памяти подаётся напряжение. Выключение питания оперативной памяти, даже кратковременное, приводит к потере хранимой информации.

Энергосберегающие режимы работы материнской платы компьютера позволяют переводить его в режим сна, что значительно сокращает уровень потребления компьютером электроэнергии. В режиме гибернации питание ОЗУ отключается. В этом случае для сохранения содержимого ОЗУ операционная система перед отключением питания записывает содержимое ОЗУ на устройство постоянного хранения данных (на жёсткий диск или твердотельный накопитель). Например, в Windows XP содержимое памяти сохраняется в файл hiberfil.sys, в системах семейства Unix — на специальный swap-раздел.

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

История 

В 1833 году Чарльз Бэббидж начал разработку аналитической машины; одну из её частей он называл «складом» (), эта часть предназначалась для хранения промежуточных результатов вычислений. Информация в «складе» запоминалась в чисто механическом устройстве в виде поворотов валов и шестерней.

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

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

Второе поколение требовало более технологичных, дешёвых и быстродействующих ОЗУ. Наиболее распространённым видом ОЗУ в то время стала ферритовая память на магнитных сердечниках.

Начиная с третьего поколения большинство электронных узлов компьютеров стали выполнять на микросхемах, в том числе и ОЗУ. Наибольшее распространение получили два вида ОЗУ:
 статическая память (SRAM) в виде массива триггеров;
 динамическая память (DRAM) в виде массива конденсаторов.
SRAM хранит бит данных в виде состояния триггера. Этот вид памяти является более дорогим в расчёте на хранение 1 бита, но, как правило, имеет меньшее время доступа, но и большее энергопотребление, чем DRAM. В современных компьютерах SRAM часто используется в качестве кэш-памяти процессора.

DRAM хранит бит данных в виде заряда конденсатора. Однобитовая ячейка памяти содержит конденсатор и транзистор. Конденсатор заряжается до высокого или низкого напряжения (логические 1 или 0). Транзистор выполняет функцию ключа, подключающего конденсатор к схеме управления, расположенной на том же чипе. Схема управления позволяет считывать состояние заряда конденсатора или изменять его. Так как хранение 1 бита информации в этом виде памяти дешевле, DRAM преобладает в компьютерах третьего поколения.

Статические и динамические ОЗУ являются энергозависимыми, так как информация в них теряется при отключении питания. Энергонезависимые устройства (постоянная память, ПЗУ) сохраняют информацию вне зависимости от наличия питания. К ним относятся флэш-накопители, карты памяти для фотоаппаратов и портативных устройств и так далее. Во второй половине 2010-х годов получили распространение модули энергонезависимой памяти, близкие по свойствам к DRAM.

В устройствах управления энергозависимой памяти (SRAM или DRAM) часто включают специальные схемы для обнаружения и исправления ошибок. Это достигается введением избыточных битов в хранимые машинные слова, используемые для проверки (например, биты чётности) или коррекции ошибок.

Термин «RAM» относится только к устройствам твердотельной памяти SRAM или DRAM — основной памяти большинства современных компьютеров. Для оптических дисков термин «DVD-RAM» не совсем корректен, так как, в отличие от дисков типа CD-RW или DVD-RW, старые данные не должны стираться перед записью новых. Тем не менее, информационно DVD-RAM больше похож на жёсткий диск, хотя время обращения к нему намного больше.

ОЗУ современных компьютеров 
ОЗУ большинства современных компьютеров представляет собой модули динамической памяти, содержащие полупроводниковые интегральные схемы, организованные по принципу устройств с произвольным доступом. Память динамического типа дешевле, чем статического, и её плотность выше, что позволяет на той же площади кремниевого кристалла разместить больше ячеек памяти, но при этом её быстродействие ниже. Статическая память, наоборот, более быстрая память, но она и дороже. В связи с этим основную оперативную память строят на модулях динамической памяти, а память статического типа используется для построения кэш-памяти внутри микропроцессора.

Память динамического типа 

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

DRAM имеет определённые недостатки. Во-первых, работает медленнее, поскольку, если в SRAM изменение управляющего напряжения на входе триггера сразу очень быстро изменяет его состояние, то для того, чтобы изменить состояние конденсатора, его нужно зарядить или разрядить. Перезаряд конденсатора гораздо более длителен (в 10 и более раз), чем переключение триггера, даже если ёмкость конденсатора очень мала. Второй существенный недостаток — конденсаторы со временем разряжаются. Причём разряжаются они тем быстрее, чем меньше их электрическая ёмкость и больше ток утечки, в основном, это утечка через ключ.

Именно из-за того, что заряд конденсатора постепенно уменьшается во времени, память на конденсаторах получила своё название DRAM — динамическая память. Поэтому, дабы не потерять содержимое памяти, величина заряда конденсаторов периодически восстанавливается («регенерируется») через определённое время, называемое циклом регенерации, для современных микросхем памяти это время не должно превышать 2 мс. Для регенерации в современных микросхемах достаточно выполнить циклограмму чтения по всем строкам запоминающей матрицы. Процедуру регенерации выполняет процессор или контроллер памяти. Так как для регенерации памяти периодически приостанавливается обращение к памяти, это снижает среднюю скорость обмена с этим видом ОЗУ.

Память статического типа 

ОЗУ, которое не надо регенерировать, обычно схемотехнически выполненное в виде массива триггеров, называют статической памятью с произвольным доступом или просто статической памятью. Достоинство этого вида памяти — скорость. Поскольку триггеры являются соединением нескольких логических вентилей, а время задержки на вентиль очень мало, то и переключение состояния триггера происходит очень быстро. Данный вид памяти не лишён недостатков. Во-первых, группа транзисторов, входящих в состав триггера, обходится дороже, чем ячейка динамической памяти, даже если они изготавливаются групповым методом миллионами на одной кремниевой подложке. Кроме того, группа транзисторов, входящих в статический триггер занимает гораздо больше площади на кристалле, чем ячейка динамической памяти, поскольку триггер состоит минимум из 2 вентилей, в каждый вентиль входит по меньшей мере один транзистор, а ячейка динамической памяти — только из одного транзистора и одного конденсатора. Память статического типа используется для организации сверхбыстродействующего ОЗУ, обмен информацией с которым критичен для производительности системы.

Логическая структура памяти в IBM PC 

В реальном режиме память делится на следующие участки:
 основная область памяти (),
 расширенная память (EMS),
 дополнительная память (XMS),
 Upper Memory Area (UMA),
 High Memory Area (HMA).

Литература

Ссылки 
 Дмитрий Беседин, Современная оперативная память (RAM FAQ 1.01) , ixbt, 12 МАЯ 2006
 FAQ по чипам памяти , FAQ по модулям памяти , FAQ по подсистеме памяти  1998, ixbt
 Введение в цифровую схемотехнику, МИФИ, 2006. Лекция 12: Оперативная память