Память компьютера

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

В вычислении, память относится к устройству, которое используется для хранения информации для немедленного использования на компьютере или связанном с ним компьютерном оборудовании устройство. Обычно это относится к полупроводниковой памяти, а именно к памяти металл-оксид-полупроводник (MOS), где данные хранятся в MOS ячейках памяти на кремнии. интегральная схема микросхема. Термин «память» часто является синонимом термина «первичная память ». Память компьютера работает с высокой скоростью, например память с произвольным доступом (RAM), в отличие от памяти, которая предоставляет информацию с медленным доступом, но предлагает более высокую производительность. При необходимости содержимое памяти компьютера можно перенести на вторичное хранилище ; очень распространенный способ сделать это - использовать метод управления памятью, называемый виртуальной памятью. Архаическим синонимом памяти является хранилище .

. Термин «память», означающий «первичное хранилище» или «основная память », часто ассоциируется с адресуемой полупроводниковой памятью, т.е. интегральные схемы, состоящие из кремниевых -содержащих МОП-транзисторов, используемых, например, в качестве первичного запоминающего устройства, а также для других целей в компьютерах и других цифровых электронных устройства. Существует два основных типа полупроводниковой памяти: энергозависимая и энергонезависимая. Примерами энергонезависимой памяти являются флэш-память (используется как вторичная память) и ROM, PROM, EPROM и память EEPROM (используется для хранения прошивки, например BIOS ). Примерами энергозависимой памяти являются первичная память, которая обычно является динамической памятью с произвольным доступом (DRAM), и быстрой кэш-памятью ЦП, которой обычно является статическая память с произвольным доступом (SRAM), быстрая, но энергоемкая, предлагающая более низкую плотность памяти , чем DRAM.

Большая часть полупроводниковой памяти организована в ячейки памяти или бистабильные триггеры, каждый из которых хранит один бит (0 или 1). Флэш-память. Организация включает в себя как один бит на ячейку памяти, так и несколько битов на ячейку (так называемая MLC, многоуровневая ячейка). Ячейки памяти группируются в слова фиксированной длины слова, например 1, 2, 4, 8, 16, 32, 64 или 128 бит. К каждому слову можно получить доступ по двоичному адресу размером N бит, что позволяет сохранить в памяти 2 слова, поднятые N словами. Это означает, что регистры процессора обычно не считаются памятью, поскольку они хранят только одно слово и не включают механизм адресации.

Содержание
  • 1 История
    • 1.1 MOS-память
  • 2 Энергозависимая память
  • 3 Энергонезависимая память
  • 4 Полу-энергозависимая память
  • 5 Управление
    • 5.1 Ошибки
    • 5.2 Ранние компьютерные системы
    • 5.3 Виртуальная память
    • 5.4 Защищенная память
  • 6 См. Также
  • 7 Примечания
  • 8 Ссылки
  • 9 Дополнительная литература
История
Подробная информация на обратной стороне раздел ENIAC, показывающий электронные лампы. 8 GB карту microSDHC поверх 8 байтов из памяти с магнитным сердечником (1 ядро 1 бит ).

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

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

Две альтернативы линии задержки, трубка Вильямса и трубка Selectron, возникшие в 1946 году, обе с использованием электронных лучей в стеклянных трубках в качестве средств хранения. Используя электронно-лучевые трубки, Фред Уильямс изобрел трубку Вильямса, которая станет первой компьютерной памятью с произвольным доступом. Трубка Вильямса окажется более емкой, чем трубка Selectron (Selectron была ограничена 256 битами, а трубка Williams могла хранить тысячи) и менее дорогой. Тем не менее трубка Вильямса оказалась чрезвычайно чувствительной к нарушениям окружающей среды.

В конце 1940-х годов начались попытки найти энергонезависимую память. Память с магнитным сердечником позволяла вызывать память после потери питания. Он был разработан Фредериком В. Вие и Ан Ван в конце 1940-х годов и улучшен Джеем Форрестером и Яном А. Райчманом в начале 1950-х годов, до была коммерциализирована с компьютером Whirlwind в 1953 году. Память с магнитным сердечником стала доминирующей формой памяти до разработки MOS полупроводниковой памяти в 1960-х. 280>Полупроводниковая память возникла в начале 1960-х годов с биполярной памяти, в которой использовались биполярные транзисторы. Биполярная полупроводниковая память, состоящая из дискретных устройств, была впервые отправлена ​​Texas Instruments в ВВС США в 1961 году. В том же году была разработана концепция твердотельная память на микросхеме интегральной схемы (IC) была предложена инженером по приложениям Бобом Норманом в Fairchild Semiconductor. Первой микросхемой биполярной полупроводниковой памяти была микросхема SP95, представленная IBM в 1965 году. Хотя биполярная память предлагала более высокую производительность по сравнению с памятью с магнитным сердечником, она не могла конкурировать с более низкой ценой на магнитный сердечник, который оставался доминирующим. вплоть до конца 1960-х гг. Биполярная память не смогла заменить память с магнитным сердечником, потому что биполярные триггерные схемы были слишком большими и дорогими.

MOS-память

Изобретение MOSFET (полевой транзистор металл-оксид-полупроводник, или МОП-транзистор) Мохамед М. Аталла и Давон Канг в Bell Labs в 1959 г., дало возможность практического использования металл – оксид – полупроводник (МОП) транзисторов в качестве элементов памяти ячейки памяти. MOS-память была разработана Джоном Шмидтом в Fairchild Semiconductor в 1964 году. Помимо более высокой производительности, MOS полупроводниковая память была дешевле и потребляла меньше энергии, чем память с магнитным сердечником. В 1965 году Дж. Вуд и Р. Болл из Royal Radar Establishment предложили цифровые системы хранения, в которых используются ячейки памяти CMOS (дополнительные МОП) в дополнение к устройствам питания MOSFET . для источника питания, переключаемой перекрестной связи, переключателей и памяти линии задержки. Разработка технологии silicon-gate MOS интегральной схемы (MOS IC) Федерико Фаггин в Fairchild в 1968 году позволила производить микросхемы памяти MOS . Память NMOS была коммерциализирована компанией IBM в начале 1970-х годов. Память MOS превзошла память на магнитных сердечниках в качестве доминирующей технологии памяти в начале 1970-х.

Двумя основными типами энергозависимой оперативной памяти (RAM) являются статическая память с произвольным доступом (SRAM) и динамическая память с произвольным доступом (DRAM). Биполярная SRAM была изобретена Робертом Норманом в Fairchild Semiconductor в 1963 году, после чего в 1964 году Джоном Шмидтом в Fairchild была разработана MOS SRAM. SRAM стала альтернативой памяти с магнитным сердечником, но потребовала шесть MOS-транзисторов для каждого бита данных. Коммерческое использование SRAM началось в 1965 году, когда IBM представила свой чип SP95 SRAM для System / 360 Model 95.

Toshiba представила биполярную DRAM ячейки памяти для своего Toscal BC-1411 электронный калькулятор в 1965 году. Хотя он предлагал более высокую производительность по сравнению с памятью на магнитном сердечнике, биполярная память DRAM не могла конкурировать с более низкой ценой тогдашней доминирующей памяти на магнитном сердечнике. Технология MOS является основой современной памяти DRAM. В 1966 году доктор Роберт Х. Деннард из Исследовательского центра IBM Томаса Дж. Уотсона работал над МОП-памятью. Изучая характеристики МОП-технологии, он обнаружил, что она способна создавать конденсаторы, и что сохранение заряда или отсутствие заряда на МОП-конденсаторе может представлять 1 и 0 бита, в то время как МОП-транзистор может контроль записи заряда на конденсатор. Это привело к его разработке ячейки памяти DRAM с одним транзистором. В 1967 году Деннард подал в IBM патент на ячейку памяти DRAM с одним транзистором, основанную на технологии MOS. Это привело к появлению первого коммерческого чипа DRAM IC, Intel 1103, в октябре 1970 года. Синхронная динамическая память с произвольным доступом (SDRAM) позже дебютировала с Samsung Микросхема KM48SL2000 в 1992 году.

Термин «память» также часто используется для обозначения энергонезависимой памяти, в частности флэш-памяти. Он находится в постоянной памяти (ПЗУ). Программируемая постоянная память (PROM) была изобретена Вэнь Цин Чоу в 1956 году, когда он работал в подразделении Arma американской корпорации Bosch Arma Corporation. В 1967 году Давон Кан и Саймон Сзе из Bell Labs предложили, чтобы плавающий затвор полупроводникового устройства MOS можно было использовать для ячейки перепрограммируемого постоянная память (ROM), что привело к тому, что Дов Фроман из Intel изобрел EPROM (стираемый PROM) в 1971 году. EEPROM (электрически стираемый PROM) был разработан Ясуо Таруи, Ютакой Хаяси и Киёко Нага в Электротехнической лаборатории в 1972 году. Флэш-память была изобретена Фудзио Масуока в Toshiba в начале 1980-х гг. Масуока и его коллеги представили изобретение NOR flash в 1984 году, а затем NAND flash в 1987 году. Toshiba коммерциализировала флэш-память NAND в 1987 году.

Развитие технологий и экономики масштаба сделали возможными так называемые компьютеры с очень большой памятью (VLM).

Энергозависимая память
Различные модули памяти, содержащие различные типы DRAM (сверху вниз): DDR SDRAM, SDRAM, EDO DRAM, и FPM DRAM

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

SRAM не годится для системной памяти настольных компьютеров, где DRAM преобладает, но используется для их кэш-памяти. SRAM - обычное дело в небольших встроенных системах, которым могут потребоваться всего несколько десятков килобайт или меньше. К будущим технологиям энергозависимой памяти, которые призваны заменить SRAM и DRAM или конкурировать с ними, входят Z-RAM и A-RAM.

Энергонезависимая память
твердотельные накопители. пример запоминающего устройства.

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

В число будущих технологий энергонезависимой памяти входят FERAM, CBRAM, PRAM, STT-RAM, SONOS, RRAM, память беговых дорожек, NRAM, 3D XPoint и память многоножек.

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

Третья Категория памяти - «полу-летучая». Этот термин используется для описания памяти, которая имеет ограниченную длительность энергонезависимой памяти после отключения питания, но затем данные в конечном итоге теряются. Типичная цель при использовании полу-летучей памяти - обеспечить высокую производительность / надежность и т. Д. связаны с энергозависимой памятью, обеспечивая при этом некоторые преимущества настоящей энергонезависимой памяти.

Например, некоторые типы энергонезависимой памяти могут изнашиваться, когда «изношенная» ячейка имеет повышенную нестабильность, но в остальном продолжает работать. Таким образом, часто записываемые участки данных можно направить на использование изношенных схем. Пока местоположение обновляется в течение известного времени хранения, данные остаются действительными. Если время удерживания «истекает» без обновления, то значение копируется в менее изношенную схему с более длительным удержанием. Запись в первую очередь в изношенную область обеспечивает высокую скорость записи, избегая при этом износа неизношенных схем.

В качестве второго примера STT-RAM можно сделать энергонезависимым путем создания большие ячейки, но стоимость бита и мощность записи возрастают, а скорость записи снижается. Использование небольших ячеек увеличивает стоимость, мощность и скорость, но приводит к полу-летучему поведению. В некоторых приложениях можно управлять повышенной волатильностью, чтобы обеспечить множество преимуществ энергонезависимой памяти, например, отключив питание, но принудительно пробудив его до потери данных; или путем кэширования данных, предназначенных только для чтения, и отбрасывания кэшированных данных, если время выключения превышает порог энергонезависимости.

Термин «полу-летучий» также используется для описания полу-энергозависимого поведения, созданного на основе других типов памяти. Например, энергозависимая и энергонезависимая память могут быть объединены, при этом внешний сигнал копирует данные из энергозависимой памяти в энергонезависимую память, но если питание отключается без копирования, данные теряются. Или энергозависимая память с резервным питанием от батареи, и если внешнее питание потеряно, существует некоторый известный период, когда батарея может продолжать питать энергозависимую память, но если питание отключено в течение длительного времени, батарея разряжается и данные теряются.

Управление

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

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

Ошибки

Неправильное управление памятью - частая причина ошибок, включая следующие типы:

  • В арифметическом переполнении результат вычисления больше чем позволяет выделенная память. Например, 8-битное целое число со знаком позволяет использовать числа от –128 до +127. Если его значение равно 127 и ему дано указание добавить единицу, компьютер не может сохранить число 128 в этом пространстве. Такой случай приведет к нежелательной операции, например к изменению значения числа на -128 вместо +128.
  • A утечка памяти возникает, когда программа запрашивает память у операционной системы и никогда не возвращает память, когда это делается с помощью Это. Программа с этой ошибкой будет постепенно требовать все больше и больше памяти до тех пор, пока программа не выйдет из строя по мере ее завершения.
  • A segmentation fault возникает, когда программа пытается получить доступ к памяти, к которой у нее нет разрешения. Обычно выполняющая это программа будет завершена операционной системой.
  • A переполнение буфера означает, что программа записывает данные до конца выделенного пространства, а затем продолжает записывать данные в память, выделенную для других целей. Это может привести к неустойчивому поведению программы, включая ошибки доступа к памяти, неверные результаты, сбой или нарушение безопасности системы. Таким образом, они являются основой многих уязвимостей программного обеспечения и могут быть использованы злонамеренно.

Ранние компьютерные системы

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

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

Виртуальная память

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

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

Защищенная память

Защищенная память - это система, в которой каждой программе предоставляется область памяти для использования, и ей не разрешается выходить за пределы этого диапазона. Использование защищенной памяти значительно повышает надежность и безопасность компьютерной системы.

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

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

Защищенные системы памяти почти всегда также включают виртуальную память.

См. Также
Викискладе есть носители, связанные с памятью компьютера.
Примечания
Ссылки
Дополнительная литература
  • Миллер, Стивен В. (1977), Технология памяти и хранения, Montvale: AFIPS Press
  • Технология памяти и хранения, Александрия, Вирджиния: Time Life Books, 1988
Последняя правка сделана 2021-05-15 08:35:21
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте