Оперативная память предназначена для управления процессами передачи данных
ОЗУ (оперативное запоминающее устройство), оно же RAM ("Random Access Memory" - память с произвольным доступом), представляет собой область временного хранения данных, при помощи которой обеспечивается функционирование программного обеспечения. Физически, оперативная память в системе представляет собой набор микросхем или модулей (содержащих микросхемы), которые обычно подключаются к системной плате.
В процессе работы память выступает в качестве временного буфера (в ней хранятся данные и запущенные программы) между дисковыми накопителями и процессором благодаря значительно большей скорости чтения и записи данных.
Примечание. Совсем новички часто путают оперативную память с памятью жесткого диска (ПЗУ - постоянное запоминающее устройство), чего делать не нужно, т.к. это совершенно разные виды памяти. Оперативная память (по типу является динамической - Dynamic RAM), в отличие от постоянной - энергозависима, т.е. для хранения данных ей необходима электроэнергия, и при ее отключении (выключение компьютера) данные удаляются. Пример энергонезависимой памяти ПЗУ - флэш-память, в которой электричество используется лишь для записи и чтения, в то время как для самого хранения данных источник питания не нужен.
По своей структуре память напоминает пчелиные соты, т.е. состоит из ячеек, каждая из которых предназначена для хранения мёда определенного объема данных, как правило, одного или четырех бит. Каждая ячейка оной имеет свой уникальный «домашний» адрес, который делится на два компонента – адрес горизонтальной строки (Row) и вертикального столбца (Column).
Ячейки представляют собой конденсаторы, способные накапливать электрический заряд. С помощью специальных усилителей аналоговые сигналы переводятся в цифровые, которые в свою очередь образуют данные.
Для передачи на микросхему памяти адреса строки служит некий сигнал, который зовется RAS (Row Address Strobe), а для адреса столбца — сигнал CAS (Column Address Strobe).
Температура, лаг, энергозависимость и вообще "на пальцах"
Условно говоря, если очень просто, то оперативная память это много мелких ячеек, хранящих данные и каждый бит этих данных хранится зарядом (или его отсутствием) на крошечном конденсаторе в микросхеме (о чем говорилось выше по тексту).
Эта память является энергозависимой, именно поэтому во время режима сна (гибернации компьютера) содержимое памяти записывается на жесткий диск, а при пробуждении загружается обратно. Когда компьютер выключен, - память пуста.
Файл подкачки, который является "продолжением" этой памяти, логичным образом, хранит в себе данные на жестком диске, что, в общем случае, небезопасно.
Информация в ячейках со временем "теряется", причем, чем выше температура, тем быстрее это происходит.
Чтобы избежать потери сохранённых данных, они должны регулярно обновляться, чтобы восстановить заряд (если он есть) до первоначального уровня. Этот процесс обновления включает чтение каждого бита, а потом запись его обратно. Это происходит не целиком, а блоками. В процессе такого «обновления» память занята и не может выполнять обычные операции, такие как запись или хранение битов. В общем случае из-за этого обновления память тормозит каждые 7,8 мкс.
Подробнее
Дело в том, что современные устройства оперативной памяти являются достаточно объемными (привет двухтысячным, когда хватало и 32 Mб), чтобы в ней можно было размещать данные от нескольких одновременно работающих задач. Процессор также может одновременно обрабатывать несколько задач. Это обстоятельство способствовало развитию так называемой системы динамического распределения памяти, когда под каждую обрабатываемую процессором задачу отводятся динамические (переменные по своей величине и местоположению) разделы оперативной памяти.
Динамический характер работы позволяет распоряжаться имеющейся памятью более экономно, своевременно «изымая» лишние участки памяти у одних задач и «добавляя» дополнительные участки – другим (в зависимости от их важности, объема обрабатываемой информации, срочности выполнения и т.п.). За «правильное» динамическое распределение памяти в ПК отвечает операционная система, тогда как за «правильное» использование памяти, отвечает прикладное программное обеспечение.
Совершенно очевидно, что прикладные программы должны иметь способность работать под управлением операционной системы, в противном случае последняя не сможет выделить такой программе оперативную память или она не сможет «правильно» работать в пределах отведенной памяти. Именно поэтому не всегда удается запустить под современной операционкой, ранее написанные программы, которые работали под управлением устаревших систем, например под ранними версиями Windows (98 например).
Ещё (для общего развития) следует знать, что поддержка памяти зависит от разрядности системы, например, операционная система Windows 7, разрядностью 64 бита, поддерживает объем памяти до 192 Гбайт (младший 32 -битный собрат "видит" не больше 4 Гбайт). Однако, если Вам и этого мало, пожалуйста, 128 -разрядная Windows 8 заявляет поддержку поистине колоссальных объемов – я даже не осмеливаюсь озвучить эту цифру. Чуть подробнее про разрядность мы писали тут.
Что это такое разобрались.
Дальше, на очереди, как и гласил заголовок, у нас не менее интересный вопрос:
Частота и скорость
Чем выше пропускная способность ОЗУ, тем больше её скорость. Частота является параметром, определяющим пропускную способность каналов, через которые осуществляется передача данных различного рода в ЦП через материнскую плату.
Желательно, чтобы данная характеристика совпадала с допустимой скоростью работы материнской платы.
Например, если планка поддерживает частоту 1600 МГц, а материнская плата – не более 1066 Мгц, то скорость обмена данными между ОЗУ и ЦП будет ограничена именно возможностями материнской платы. То есть скорость будет не более 1066 МГц.
3.1 Внутренняя память
Оперативная память.
Назначение оперативной памяти – хранение данных, работа с которыми осуществляется в данный момент времени. Если для этого использовать жесткий диск, то время доступа к данным заметно увеличится, так как производительность оперативной памяти намного выше, чем дисковой. Это скажется на быстродействии всей системы. Оперативная память обеспечивает возможность обращения процессора к любой ее ячейке, поэтому называется памятью с произвольным доступом (RAM – Random Access Memory) 2 .
Из определения следует, что в оперативной памяти на стадии выполнения могут одновременно находится несколько программ. Кроме того, в оперативной памяти могут находиться как обрабатываемые, так и уже обработанные программой данные. Можно считать, что оперативная память представляет собой последовательность пронумерованных байтов. Каждый байт имеет свой собственный номер, который называют адресом. Содержимое любого байта памяти может обрабатываться независимым от остальных байтов образом. Указав адрес байта, можно прочитать код, который в нем записан или записать в этот байт какой – либо другой код.
Максимально возможный объем оперативной памяти, который иногда называют адресным пространством, и объем памяти, фактически присутствующий в составе машины, являются важнейшими характеристиками данной модели в целом и конкретного экземпляра компьютера. Адресное пространство является величиной постоянной для данной модели, в то время как фактический объем оперативной памяти может у разных экземпляров быть разным, но он не может быть больше, чем адресное пространство для данной модели. Современные модули памяти RAM бывают: DDR, DDR2, DDR3 и DDR4. Характеристики оперативной памяти каждого вида значительно лучше, чем характеристики предшествующего поколения. Рассмотрим их:
DDR. Самая древняя оперативная память. Время ее господства на IT рынке уже давно ушло. Но кое-где еще иногда встречаются системы, в которых используется эта оперативная память. Как правило, это довольно старые системы. Эта память потребляет напряжение 2.5 В. Обычно, напряжение увеличивается при разгоне процессора. DDR является самым прожорливым представителем оперативной памяти, так как требует для своей работы самое высокое напряжение. Эта память работала на частотах 266/333/400 Mhz и использовалась на компьютерах класса Intel Pentium 4.
DDR2. Основное отличие DDR2 от DDR — вдвое большая частота работы шины (533/800/1066 Mhz), по которой данные передаются в буфер микросхемы памяти. При этом чтобы обеспечить необходимый поток данных, передача на шину осуществляется из четырёх мест одновременно.
DDR3. Этот тип памяти основан на технологиях DDR2 со вдвое увеличенной частотой передачи данных по шине памяти. Отличается пониженным энергопотреблением по сравнению с предшественниками (1,5 В, по сравнению с 1,8 В для DDR2 и 2,5 В для DDR). Частота полосы пропускания лежит в пределах от 800 до 2400 Mhz (рекорд частоты — более 3000 Mhz), что обеспечивает большую пропускную способность по сравнению со всеми предшественниками. В целом скорость работы DDR3 выше, чем у DDR2, на 15-20 процентов.
DDR4 — новый тип оперативной памяти, являющийся эволюционным развитием предыдущих поколений DDR. Отличается повышенными частотными характеристиками и пониженным напряжением питания. В массовое производство вышла во 2 квартале 2014 года 3
Кроме оперативной памяти в состав внутренней памяти входят кэш-память и постоянная память.
Постоянная память .
Постоянная — энергонезависимая память, используется для хранения данных, которые никогда не потребуют изменения. Содержание памяти специальным образом “зашивается” в устройстве при его изготовлении для постоянного хранения. Из ПЗУ можно только читать. Прежде всего, в постоянную память записывают программу управления работой самого процессора. В ПЗУ находятся программы управления дисплеем, клавиатурой, принтером, внешней памятью, программы запуска и остановки компьютера, тестирования устройств.
Важнейшая микросхема постоянной или Flash-памяти — модуль BIOS, предназначенная для автоматического тестирования устройств после включения питания компьютера и загрузки операционной системы в оперативную память.
Разновидность постоянного ЗУ — CMOS RAM. Это память с невысоким быстродействием и минимальным энергопотреблением от батарейки. Используется для хранения информации о конфигурации и составе оборудования компьютера, а также о режимах его работы. Содержимое CMOS изменяется специальной программой Setup, находящейся в BIOS.
По сравнению с быстродействием современных процессоров скорость функционирования основной памяти мала. Однако процессор не может тратить много времени в ожидании команд и данных из основной памяти. Поэтому нужны механизмы, сокращающие время доступа к необходимой информации. Поскольку быстродействие основной памяти физически ограничено, здесь потребуется архитектурное решение. Таким решением является использование быстрой кэш-памяти, благодаря которой основная память представляется процессору более быстрой, чем она есть на самом деле. 4
Кэш — это память с большей скоростью доступа, предназначенная для ускорения обращения к данным, содержащимся постоянно в памяти с меньшей скоростью доступа. Кэширование применяется ЦПУ, жёсткими дисками, браузерами, веб-серверами, службами DNS и WINS.
Кэш состоит из набора записей. Каждая запись ассоциирована с элементом данных или блоком данных (небольшой части данных), которая является копией элемента данных в основной памяти. Каждая запись имеет идентификатор, определяющий соответствие между элементами данных в кэше и их копиями в основной памяти.
Производительность
Быстродействие зависит от многих факторов. Очень большое влияние на данный параметр оказывает количество используемых планок. Двухканальная ОЗУ работает на порядок быстрее, чем одноканальная. Наличие возможности поддерживать режимы многоканальности обозначается на наклейке, расположенной поверх платы.
Данные обозначения имеют следующий вид:
- Single (одиночный);
- Dual (двойной);
- Triple (тройной).
Для определения того, какой режим является оптимальным для конкретной материнской платы, необходимо посчитать общее количество слотов для подключения, и разделить их на два. Например, если их 4, то необходимо 2 идентичных планки от одного производителя. При их параллельной установке активируется режим Dual.
Общее
ОЗУ (оперативное запоминающее устройство), оно же RAM (" Random Access Memory " - память с произвольным доступом), представляет собой область временного хранения данных, при помощи которой обеспечивается функционирование программного обеспечения. Физически, оперативная память в системе представляет собой набор микросхем или модулей (содержащих микросхемы), которые обычно подключаются к системной плате.
В процессе работы память выступает в качестве временного буфера (в ней хранятся данные и запущенные программы) между дисковыми накопителями и процессором, благодаря значительно большей скорости чтения и записи данных.
Примечание.
Совсем новички часто путают оперативную память с памятью жесткого диска ( ПЗУ - постоянное запоминающее устройство), чего делать не нужно, т.к. это совершенно разные виды памяти. Оперативная память (по типу является динамической - Dynamic RAM ), в отличие от постоянной - энергозависима, т.е. для хранения данных ей необходима электроэнергия, и при ее отключении (выключение компьютера) данные удаляются. Пример энергонезависимой памяти ПЗУ - флэш-память, в которой электричество используется лишь для записи и чтения, в то время как для самого хранения данных источник питания не нужен.
По своей структуре память напоминает пчелиные соты, т.е. состоит из ячеек, каждая из которых предназначена для хранения мёда определенного объема данных, как правило, одного или четырех бит. Каждая ячейка оной имеет свой уникальный «домашний» адрес, который делится на два компонента – адрес горизонтальной строки ( Row ) и вертикального столбца ( Column ).
Ячейки представляют собой конденсаторы, способные накапливать электрический заряд. С помощью специальных усилителей аналоговые сигналы переводятся в цифровые, которые в свою очередь образуют данные.
Для передачи на микросхему памяти адреса строки служит некий сигнал, который зовется RAS ( Row Address Strobe ), а для адреса столбца — сигнал CAS ( Column Address Strobe ).
С этим разобрались, идем дальше. Затронем еще один немаловажный вопрос:
Зачем нужна оперативная память?
Как мы уже знаем, обмен данными между процессором и памятью происходит чаще всего с участием кэш-памяти. В свою очередь, ею управляет специальный контроллер, который, анализируя выполняемую программу, пытается предвидеть, какие данные и команды вероятнее всего понадобятся в ближайшее время процессору, и подкачивает их, т.е. кэш-контроллер загружает в кэш-память нужные данные из оперативной памяти, и возвращает, когда нужно, модифицированные процессором данные в оперативку.
После процессора, оперативную память можно считать самым быстродействующим устройством. Поэтому основной обмен данными и происходит между этими двумя девайсами. Вся информация в персональном компьютере хранится на жестком диске. При включении компа в ОЗУ с винта записываются драйверы, специальные программы и элементы операционной системы. Затем туда записываются те программы – приложения, которые мы будем запускать, при закрытии последних они будут стерты из оной.
Данные, записанные в оперативной памяти, передаются в CPU (он же не раз упомянутый процессор, он же Central Processing Unit), там обрабатываются и записываются обратно. И так постоянно: дали команду процессору взять биты по таким-то адресам (как то: обработатьих и вернуть на место или записать на новое) – он так и сделал (смотрите изображение).
Статический тип
Более дорогой на сегодняшний день является микросхема статическая. Маркируется она как SDRAM. Динамическая же является более дешевой.
Отличительными чертами SDRAM-разновидности являются:
- двоичные и троичные разряды сохраняются при положительной обратной связи;
- поддерживается постоянное состояние без осуществления регенерации.
Также отличительной особенностью RAM является наличие возможности осуществлять выбор того бита, в который будет осуществлена запись какой-либо информации.
К недостаткам можно отнести:
- малую плотность записи;
- относительно высокую стоимость.
Устройства оперативной памяти компьютера всевозможного вида (SDRAM и DRAM) имеют внешние отличия. Они заключаются в длине контактной части. Также имеет отличия её форма. Обозначение оперативной памяти находится как на этикетке-наклейке, так и пропечатано непосредственно на самой планке.
Сегодня существует множество различных модификаций SDRAM.
Обозначается она как:
Вводная
Перед каждым пользователем рано или поздно (или никогда) встает вопрос модернизации своего верного «железного коня». Некоторые сразу меняют «голову» - процессор, другие - колдуют над видеокартой, однако, самый простой и дешевый способ – это увеличение объема оперативной памяти.
Почему самый простой?
Да потому что не требует специальных знаний технической части, установка занимает мало времени и не создает практически никаких сложностей (и еще он наименее затратный из всех, которые я знаю).
Итак, чтобы узнать чуть больше о таком простом и одновременно эффективном инструменте апгрейда, как оперативная память (далее ОП), для этого обратимся к родимой теории.
Зачем нужна эта самая оперативная память?
Как мы уже знаем, обмен данными между процессором и памятью происходит чаще всего с участием кэш-памяти. В свою очередь, ею управляет специальный контроллер, который, анализируя выполняемую программу, пытается предвидеть, какие данные и команды вероятнее всего понадобятся в ближайшее время процессору, и подкачивает их, т.е. кэш-контроллер загружает в кэш-память нужные данные из оперативной памяти, и возвращает, когда нужно, модифицированные процессором данные в оперативку.
После процессора, оперативную память можно считать самым быстродействующим устройством. Поэтому основной обмен данными и происходит между этими двумя девайсами. Вся информация в персональном компьютере хранится на жестком диске. При включении компа в ОЗУ с винта записываются драйверы, специальные программы и элементы операционной системы. Затем туда записываются те программы – приложения, которые мы будем запускать, при закрытии последних они будут стерты из оной.
Данные, записанные в оперативной памяти, передаются в CPU (он же не раз упомянутый процессор, он же Central Processing Unit ), там обрабатываются и записываются обратно. И так постоянно: дали команду процессору взять биты по таким-то адресам (как то: обработатьих и вернуть на место или записать на новое) – он так и сделал (смотрите изображение).
Все это хорошо до тех пор, пока ячеек памяти ( 1 ) хватает. А если нет?
Тогда в работу вступает файл подкачки ( 2 ). Этот файл расположен на жестком диске и туда записывается все, что не влезает в ячейки оперативной памяти. Поскольку быстродействие винта значительно ниже ОЗУ , то работа файла подкачки сильно замедляет работу системы. Кроме этого, это снижает долговечность самого жесткого диска. Но это уже совсем другая история.
Примечание.
Во всех современных процессорах имеется кэш ( cache ) - массив сверхскоростной оперативной памяти, являющейся буфером между контроллером сравнительно медленной системной памяти и процессором. В этом буфере хранятся блоки данных, с которыми CPU работает в текущий момент, благодаря чему существенно уменьшается количество обращений процессора к чрезвычайно медленной (по сравнению со скоростью работы процессора) системной памяти.Однако, кэш-память малоэффективна при работе с большими массивами данных (видео, звук, графика, архивы), ибо такие файлы просто туда не помещаются, поэтому все время приходится обращаться к оперативной памяти, или к HDD (у которого также имеется свой кэш).
Послесловие
Собственно, это основы основ и базисный базис, а посему, надеюсь, что статья была интересна Вам как с точки зрения расширения кругозора, так и в качестве кирпичика в персональных знаниях о персональном компьютере :).
На сим всё. Как и всегда, если есть какие-то вопросы, комментарии, дополнения и тп, то можете смело бежать в комментарии, которые расположены ниже. И да, не забудьте прочитать материал по выбору этой самой оперативной памяти.
Белов Андрей (Sonikelf) Заметки Сис.Админа [Sonikelf's Project's] Космодамианская наб., 32-34 Россия, Москва (916) 174-8226
Принцип работы и функции
- на требуемую строку подается электрический сигнал;
- происходит открытие транзистора;
- электрический заряд, присутствующий в конденсаторе, подается на нужный столбец.
Каждый столбец подключен к чрезвычайно чувствительному усилителю. Он регистрирует потоки электронов, возникающие в случае, если конденсатор разряжается. При этом подается соответствующая команда. Таким образом, происходит осуществление доступа к различным ячейкам, расположенным на плате. Есть один важный нюанс, который следует обязательно знать. Когда подается электрический импульс на какую-либо строку, он открывает все её транзисторы. Они подключены к ней напрямую.
Из этого можно сделать вывод, что одна строка является минимальным объемом информации, который можно прочитать при осуществлении доступа. Основное назначение ОЗУ – хранить различного рода временные данные, которые необходимы, пока персональный компьютер включен и функционирует операционная система. В ОЗУ загружаются наиболее важные исполняемые файлы, ЦП осуществляет их выполнение напрямую, просто сохраняя результаты выполненных операций.
Также в ячейках хранятся:
- исполняемые библиотеки;
- коды клавиш, нажатие на которые было осуществлено;
- результаты различных математических операций.
При необходимости все, что находится в RAM, центральный процессор может сохранить на жесткий диск. Причем сделать это в том виде, в котором это необходимо.
2. Определение
Память ЭВМ – совокупность технических устройств и процессов, обеспечивающих запись, хранение и воспроизведение информации в ЭВМ. Компьютерная память обеспечивает поддержку одной из функций ЭВМ — способность длительного хранения информации.
Память — основная часть любой вычислительной системы или отдельной вычислительной машины, она реализуется аппаратно — в виде комплекса взаимосвязанных запоминающих устройств (ЗУ) — и программными средствами. Максимальное количество информации, которое может храниться в памяти ЭВМ (ёмкость), определяется суммарной ёмкостью всех ЗУ, а быстродействие памяти ЭВМ зависит как от быстродействия отдельных ЗУ, так и от принципов их организации в единую систему памяти и способов обмена информацией внутри этой системы.
Задачей памяти является хранение программ и данных. Существует два класса запоминающих устройств, а именно первичные и вторичные. Первичное запоминающее устройство – это память, быстродействие которой определяется скоростью работы электронных микросхем. Пока программа выполняется, она должна храниться в первичной памяти. Эта память состоит из большого количества полупроводниковых ячеек, каждая из которых может хранить один бит информации. Ячейки редко считываются по отдельности – обычно они обрабатываются группами фиксированного размера, называемыми словами… Для облегчения доступа к словам в памяти с каждым словом связывается отдельный адрес. Адрес – это числа, идентифицирующие конкретные местоположения слов в памяти. Для того чтобы прочитать слово из памяти или записать его в таковую, необходимо указать его адрес и задать управляющую команду, которая начнет соответствующую операцию. 1 Для каждого компьютера характерна определенная длина слова — два, четыре или восемь байтов. Это не исключает использования ячеек памяти другой длины (например, полуслово, двойное слово).
Как правило, в одном машинном слове может быть представлено либо одно целое число, либо одна команда, но допускаются переменные форматы представления информации.
3.2 Внешняя память
Внешняя память предназначена для длительного хранения программ и данных, и целостность её содержимого не зависит от того, включен или выключен компьютер. В отличие от оперативной памяти, внешняя память не имеет прямой связи с процессором. Устройства внешней памяти или, иначе, внешние запоминающие устройства весьма разнообразны. Их можно классифицировать по целому ряду признаков: по виду носителя, типу конструкции, по принципу записи и считывания информации, методу доступа и т.д. 5 Рассмотрим классификацию по виду носителей.
Гибкий диск, дискета — устройство для хранения небольших объёмов информации (максимально до 2,88 МБ), представляющее собой гибкий пластиковый диск в защитной оболочке. Используется для переноса данных с одного компьютера на другой и для распространения программного обеспечения. Способ записи двоичной информации на магнитной среде называется магнитным кодированием.
Накопитель на жёстких магнитных дисках или винчестерский накопитель — это наиболее массовое запоминающее устройство большой ёмкости, в котором носителями информации являются круглые алюминиевые или стеклянные пластины — плоттеры, обе поверхности которых покрыты слоем ферромагнитного материала. С момента создания первых жёстких дисков, в результате непрерывного совершенствования технологии записи данных, их максимально возможная ёмкость непрерывно увеличивается. Ёмкость современных жёстких дисков достигает нескольких Тб. НЖМД используется для постоянного хранения информации — программ и данных, и является основным накопителем данных в большинстве ЭВМ.
Существуют внешние или портативные жесткие диски, которые подключаются к компьютеру с помощью USB-кабеля.
CD-ROM состоит из прозрачной полимерной основы диаметром 12 см и толщиной 1,2 мм. Одна сторона покрыта тонким алюминиевым слоем, защищенным от повреждений слоем лака. Двоичная информация представляется последовательным чередованием углублений и основного слоя.
Со временем на смену CD-ROM пришли цифровые видеодиски DVD . Эти диски имеют тот же размер, что и обычные CD, но вмещают 4,7 Гбайт данных, т.е. по объёму заменяют семь стандартных дисков CD-ROM. На таких дисках могут выпускаться полноэкранные видеофильмы отличного качества, программы-тренажёры, мультимедийные игры и многое другое. 6
Blu-ray Disc , BD — формат оптического носителя, используемый для записи с повышенной плотностью и хранения цифровых данных, включая видео высокой чёткости. Первый прототип нового носителя был представлен в октябре 2000 года. Более короткая длина волны сине-фиолетового лазера позволяет хранить больше информации на 12-сантиметровых дисках того же размера, что и у CD/DVD. Уменьшение длины волны, использование числовой апертуры (0,85, в сравнении с 0,6 для DVD), высококачественной двухлинзовой системы, а также уменьшение толщины защитного слоя в шесть раз (0,1 мм вместо 0,6 мм) предоставило возможность проведения более качественного и корректного течения операций чтения/записи. Это позволило записывать информацию в меньшие точки на диске, а значит, хранить больше информации в физической области диска, а также увеличить скорость считывания до 432 Мбит/с.
Флеш-накопитель — запоминающее устройство, использующее в качестве носителя флеш-память (разновидность полупроводниковой технологии электрически перепрограммируемой памяти). Благодаря компактности, дешевизне, механической прочности, большому объёму, скорости работы и низкому энергопотреблению, флеш-память широко используется в цифровых портативных устройствах и носителях информации. Очень распространены USB флеш-накопители (флеш-брелоки) – устройства, подключаемое к компьютеру или иному считывающему устройству по интерфейсу USB.
Серьёзным недостатком данной технологии является ограниченный срок эксплуатации носителей, а также чувствительность к электростатическому разряду.
Виды и объем памяти
Плата на сегодняшний день может иметь объем в несколько десятков гигабайт. Современные технические средства позволяют использовать её максимально быстро. Большинство операционных систем оснащаются возможностью взаимодействовать с такими устройствами. Имеется пропорциональная зависимость между объемом ОЗУ и стоимостью. Чем больше её размер, тем более она дорогая. И наоборот.
Все современные ОЗУ можно разделить на две разновидности:
Динамический тип
Ещё один вид микросхем обозначается как DRAM. Он является также полностью энергозависимым, доступ к битам записи осуществляется произвольным образом. Данная разновидность широко используется в большинстве современных ПК. Также она применяется в тех компьютерных системах, где высоки требования к задержкам – быстродействие DRAM на порядок выше SDRAM.
Чаще всего данная разновидность имеет форм-фактор типа DIMM. Такое же конструктивное решение используется и для изготовления статической схемы (SDRAM). Особенностью DIMM-исполнения является то, что контакты имеются с обеих сторон поверхности.
Компоновка модулей
Кстати, давайте рассмотрим из чего же состоит (из каких элементов) сам модуль.
Так как практически все модули памяти, состоят из одних и тех же конструктивных элементов, мы для наглядности возьмем стандарт SD-RAM (для настольных компьютеров). На изображении специально приведено разное конструктивное исполнение оных (чтобы Вы знали не только «шаблонное» исполнение модуля, но и весьма «экзотическое»).
Итак, модули стандарта SD-RAM ( 1 ): DDR ( 1.1 ); DDR2 ( 1.2 ).
- Чипы (микросхемы) памяти
- SPD ( Serial Presence Detect ) – микросхема энергонезависимой памяти, в которую записаны базовые настройки любого модуля. Во время старта системы BIOS материнской платы считывает информацию, отображенную в SPD , и выставляет соответствующие тайминги и частоту работы ОЗУ ;
- «Ключ» - специальная прорезь платы, по которой можно определить тип модуля. Механически препятствует неверной установке плашек в слоты, предназначенные для оперативной памяти;
- SMD -компоненты модулей (резисторы, конденсаторы). Обеспечивают электрическую развязку сигнальных цепей и управление питанием чипов;
- Cтикеры производителя - указывают стандарт памяти, штатную частоту работы и базовые тайминги;
- РСВ – печатная плата. На ней распаиваются остальные компоненты модуля. От качества зачастую зависит результат разгона: на разных платах одинаковые чипы могут вести себя по-разному.
Теперь обощая, упрощая.
Статическая оперативная память
Статическая память используется в кэше центрального процессора, а динамическая в качестве системной оперативной памяти компьютера.
В современном мире чипы памяти комплектуются в компонент, именуемый модулем. Порой компьютерные специалисты называют его «планкой памяти». Один модуль или «планка» содержит несколько чипов памяти. Не исключено, что вам приходилось слышать такие определения, как «память 8×32» или «память 4×16». Разумеется, цифры могли быть иными. В этой простой формуле первым множителем является количество чипов в модуле, а вторым емкость каждого модуля. Только не в мегабайтах, а в мегабитах. Это значит, что результат действия умножения следует разделить на восемь, чтобы получить объем модуля в привычных нам мегабайтах.
К примеру: 4×32 означает, что модуль содержит четыре 32-мегабитных чипа. Умножив 4 на 32, получаем 128 мегабит. Поскольку нам известно, что в одном байте восемь бит, нам нужно разделить 128 на 8. В итоге узнаем, что «модуль 4×32» является 16-мегабайтным и устарел еще в конце минувшего века, что не мешает ему быть превосходным простым примером для тех вычислений, которые нам потребовались.
Как же работает оперативная память?
Работа оперативной памяти непосредственно связана с работой процессора и внешних устройств компьютера, так как именно ей последние «доверяют» свою информацию. Таким образом, данные сперва попадают с жесткого диска (или другого носителя) в саму ОЗУ и уже затем обрабатываются центральным процессором (смотрите изображение).
Обмен данными между процессором и памятью может происходить напрямую, но чаще все же бывает с участием кэш-памяти.
Кэш-память является местом временного хранения наиболее часто запрашиваемой информации и представляет собой относительно небольшие участки быстрой локальной памяти. Её использование позволяет значительно уменьшить время доставки информации в регистры процессора, так как быстродействие внешних носителей (оперативки и дисковой подсистемы) намного хуже процессорного. Как следствие, уменьшаются, а часто и полностью устраняются, вынужденные простои процессора, что повышает общую производительность системы.
Оперативной памятью управляет контроллер, который находится в чипсете материнской платы, а точнее в той его части, которая называется North Bridge (северный мост) - он обеспечивает подключение CPU (процессора) к узлам, использующим высокопроизводительные шины: ОЗУ , графический контроллер (смотрите изображение).
Примечание.
Важно понимать, что если в процессе работы оперативной памяти производится запись данных в какую-либо ячейку, то её содержимое, которое было до поступления новой информации, будет безвозвратно утеряно. Т.е. по команде процессора данные записываются в указанную ячейку, одновременно стирая при этом то, что там было записано ранее.
Рассмотрим еще один важный аспект работы оперативки – это ее деление на несколько разделов с помощью специального программного обеспечения (ПО), которое поддерживается операционными системами.
Сейчас Вы поймете, о чем это я.
3. Виды памяти ЭВМ
Память современной ЭВМ строится в виде многоступенчатой иерархической системы, что обеспечивает экономически оправданное удовлетворение противоречивых требований — большой ёмкости и высокого быстродействия, и обычно предполагает использование нескольких запоминающих устройств, имеющих различные характеристики. В иерархию памяти ЭВМ обычно входят: внешняя память и внутренняя, или оперативная, память.
1. Введение
В современном мире мобильных компьютерных технологий большинство людей уже просто не могут обойтись без коммуникаторов, планшетов и другой портативной компьютерной техники. В свою очередь растет спрос на скорость работы представленных мобильных решений, поскольку никто уже не готов мириться с низкой производительностью того или иного устройства . Скорость выполнения программ напрямую зависит от скорости передачи данных между процессором и памятью, а для выполнения больших программ, обрабатывающих огромные массивы данных, необходима память очень большого объема.
В идеале память должна быть быстрой, большой и недорогой. . Поэтому проектировщики компьютерных систем трудятся над разработкой и усовершенствованием технологий, позволяющих создавать для компьютера видимость большой и быстрой памяти.
В этом вопросе рассмотрим, что такое память ЭВМ и какие виды памяти существуют.
4 Заключение
Первые ЭВМ использовали запоминающие устройства исключительно для хранения обрабатываемых данных. Их программы реализовывались на аппаратном уровне в виде жёстко заданных выполняемых последовательностей. Любое перепрограммирование требовало огромного объёма ручной работы по подготовке новой документации, перестройки блоков и устройств и т. д. Использование архитектуры фон Неймана, предусматривающей хранение компьютерных программ и данных в общей памяти, коренным образом переменило ситуацию.
К настоящему времени создано множество устройств, предназначенных для хранения данных. Универсального решения не существует, у каждого имеются свои достоинства и свои недостатки, поэтому компьютерные системы оснащаются несколькими видами систем хранения, основные свойства которых обуславливают их использование и назначение.
5 Литература
Организация ЭВМ. 5-е изд. /К.Хамахер, З. Вранешич, С. Заки. – СПб.: Питер; Киев: Издательская группа BHV , 2003. – 848с.
Информатика: Учебник / Под ред. проф. Н.В. Макаровой - М.: Финансы и статистика -2006. - 768 с.
Сегодня хочется поговорить с Вами о такой важной и полезной штуке как оперативная память, в связи с чем опубликовано сразу две статьи, одна из которых рассказывает о памяти вообще (тобишь ниже по тексту), а другая рассказывает о том как эту самую память выбрать (собственно, статья находится прямо под этой, просто опубликована отдельно).
Изначально это был один материал, но, дабы не делать очередную многобуквенную страницу-простыню, да и просто из соображений разделения и систематизации статей, было решено разбить их на две.
Ну, а сейчас, приступаем.
- Вводная
- Общее
- Как же работает оперативная память?
- Подробнее
- Зачем нужна эта самая оперативная память?
- Компоновка модулей
- Температура, лаг, энергозависимость и вообще "на пальцах"
- Послесловие
Параметры ОП
- частота работы;
- тайминг;
- напряжение.
Все они зависят от типа конкретной модели. Например, ДДР 2 будет выполнять различные действия однозначно быстрее, чем планка ДДР 1, так как обладает более выдающимися рабочими характеристиками.
Таймингами называется время задержки информации между различными компонентами устройства. Маленькие тайминги позволяют увеличить скорость выполнения различных операций. Но чем выше быстродействие оперативно-запоминающего устройства, тем больше значения таймингов.
Выходом из данного положения служит повышение рабочего напряжения – чем оно выше, тем меньше становятся тайминги. Количество выполненных операций за единицу времени в то же время возрастает.
Компоновка модулей
Практически все модули памяти состоят из одних и тех же конструктивных элементов.
Для примера используем модули стандарта SD-RAM (1): DDR (1.1); DDR2 (1.2).
- Чипы (микросхемы) памяти
- SPD (Serial Presence Detect) – микросхема энергонезависимой памяти, в которую записаны базовые настройки любого модуля. Во время старта системы BIOS материнской платы считывает информацию, отображенную в SPD, и выставляет соответствующие тайминги и частоту работы ОЗУ;
- «Ключ» - специальная прорезь платы, по которой можно определить тип модуля. Механически препятствует неверной установке плашек в слоты, предназначенные для оперативной памяти;
- SMD-компоненты модулей (резисторы, конденсаторы). Обеспечивают электрическую развязку сигнальных цепей и управление питанием чипов;
- Cтикеры производителя - указывают стандарт памяти, штатную частоту работы и базовые тайминги;
- РСВ – печатная плата. На ней распаиваются остальные компоненты модуля. От качества зачастую зависит результат разгона: на разных платах одинаковые чипы могут вести себя по-разному.
Принцип работы оперативной памяти компьютера, ноутбука
Оперативная память хранит в себе данные, необходимые для работы всей системы в определённый момент времени. При создании чипов оперативной памяти используют динамическую память, которая медленнее, но дешевле чем статическая, которая используется при создании кеш памяти процессоров. Если нам нужно прочитать память, то на определённую строку страницы памяти, подаётся сигнал, который открывает транзистор и пропускает электрический заряд, который содержится (или не содержится) в конденсаторе на соответствующий столбец. К каждому столбцу подключен чувствительный усилитель, который реагирует на незначительный поток электронов выпущенных с конденсатора. Но тут есть нюанс – сигнал, поданный на строку матрицы, открывает все транзисторы данной строки, так как они все подключены на данную строку, и таким образом происходит чтение всей строки. Исходя из вышесказанного, становится ясно, что строка в памяти, является минимальной величиной для чтения – прочитать одну ячейку, не затронув другие невозможно. Процесс чтения памяти является деструктивным, так как прочитанный конденсатор отдал все свои электроны, что бы его услышал чувствительный усилитель. И по этому, после каждого чтения строки, её нужно записать заново. онденсатор, который служит хранителем данных, имеет микроскопические размеры и как следствие маленькую ёмкость, и ввиду этого не может долго хранить заряд заданный ему, по причине саморазряда. Для борьбы с этой проблемой, используется регенерация памяти, которая, с определённой периодичностью считывает ячейки и записывает заново. Благодаря подобному явлению, эта память и получила название динамической.
EDO-DRAM (Extended Data Out DRAM) – динамическая память с усовершенствованным выходом. В этом типе памяти адрес следующего считываемого слова передавался до завершения считывания линии данных памяти, то есть до того, как считанные данные из памяти были переданы процессору.
Приступить к считыванию нового слова данных, до завершения чтения предыдущего, стало возможным, благодаря вводу, так называемых, регистров – защелок, которые сохраняли последнее считанное слово даже после того, как начиналось чтение или запись следующего слова.
Сочетая в себе также новшества памяти FPM RAM, новый тип памяти давал прирост производительности в пике, достигавший 15-20%.
Однако прогресс не стоял на месте, тактовые частоты работы процессоров, системной шины и естественно памяти росли. С повышением тактовой частоты все сложнее было добиваться стабильной работы памяти EDO-DRAM, так как из-за непредвиденных задержек чтение нового слова данных могло начаться прежде, чем предыдущее слово данных было сохранено с помощью регистров-защелок.
Тестовые задания к аттестации для специальности «Прикладная информатика» (по отраслям) Дисциплина «Архитектура ЭВМ и вычислительных систем»
В процессе преобразова
ния растрового графичес
кого файла количество
цветов уменьшилось с
65536 до 256.
Во сколько раз умень
шится информационный объем файла?
В процессе преобразова
ния растрового графичес
кого файла количество
цветов уменьшилось с
65536 до 256.
Во сколько раз умень
шится информационный объем файла?
3. набор микросхем, руководящих работой внутренних устройств ПК и определяющих основные функциональные возможности материнской платы
4. устройства для связи с принтером,
сканером и т. п., для этого ПК оснащается
портами (USB, COM, LTP)
a) память, предназначенная для
временного хранения данных и команд, необходимых процессору для
выполнения им операций;
Организация памяти, при которой
линейный адрес преобразован в
двумерный операционной системой
для удобства отображения:
Программное управление работой
компьютера предполагает:
a) необходимость использования
операционной системы для синхронной
работы аппаратных средств;
Прямая адресация, при которой для
увеличения длины адресного поля команды
под адрес отводится дополнительное слово
(а если нужно, то и два):
Основная шина, которая используется
для передачи информационных кодов
между всеми устройствами микропроцес
сорной системы:
Шина, которая служит для
определения адреса (номера)
устройства, с которым
процессор обменивается
информацией в данный момент:
Свойство операционной системы
или среды программирования
обеспечивать возможность
параллельной (или псевдопарал
лельной) обработки нескольких
процессов:
b) набор микросхем, спроектированных
для совместной работы с целью
выполнения набора каких-либо
функций
с) сложная многослойная печатная
плата, на которой устанавливаются
основные компоненты персонального
компьютера либо сервера начального
уровня
c) массив сверхскоростной оперативной
памяти, являющейся буфером между
контроллером сравнительно медленной
системной памяти и процессором
Тактовая частота процессора - это:
a) число двоичных операций, совершаемых
процессором в единицу времени;
d)скорость обмена информацией между
процессором и устройством ввода/вывода;
скорость обмена информацией между
процессором и ПЗУ.
Процесс нахождения и исправления
ошибок, связанных с неправильным
указанием логических страниц данных:
b)компьютерная программа,
предназначенная для поиска
ошибок в других программах,
ядрах операционных систем,
SQL-запросах и других
видах кода
a) компьютерные программы,
предназначенные для поиска
ошибок в других программах,
ядрах операционных системах,
SQL-запросах и других видах
кода
b) физические компьютерные,
а также программные системы,
реализующие тем или иным
способом параллельную
обработку данных на многих вычислительных узлах
a) комплекс управляющих и
обрабатывающих программ,
которые, с одной стороны,
выступают как интерфейс
между устройствами
вычислительной системы и
прикладными программами,
а с другой стороны —
предназначены для управления
устройствами
b) физические компьютерные,
а также программные системы,
реализующие тем или иным
способом параллельную
обработку данных на многих
вычислительных узлах
d) взаимосвязанная совокупность
аппаратных средств вычислительной
техники и программного обеспечения, предназначенная для обработки
информации
Управление памятью – центральный аспект в работе операционных систем. Он оказывает основополагающее влияние на сферу программирования и системного администрирования. В нескольких последующих постах я коснусь вопросов, связанных с работой памяти. Упор будет сделан на практические аспекты, однако и детали внутреннего устройства игнорировать не будем. Рассматриваемые концепции являются достаточно общими, но проиллюстрированы в основном на примере Linux и Windows, выполняющихся на x86-32 компьютере. Первый пост описывает организацию памяти пользовательских процессов.
Каждый процесс в многозадачной ОС выполняется в собственной “песочнице”. Эта песочница представляет собой виртуальное адресное пространство, которое в 32-битном защищенном режиме всегда имеет размер равный 4 гигабайтам. Соответствие между виртуальным пространством и физической памятью описывается с помощью таблицы страниц (page table). Ядро создает и заполняет таблицы, а процессор обращается к ним при необходимости осуществить трансляцию адреса. Каждый процесс работает со своим набором таблиц. Есть один важный момент — концепция виртуальной адресации распространяется на все выполняемое ПО, включая и само ядро. По этой причине для него резервируется часть виртуального адресного пространства (т.н. kernel space).
Синим цветом на рисунке отмечены области виртуального адресного пространства, которым в соответствие поставлены участки физической памяти; белым цветом — еще не использованные области. Как видно, Firefox использовал большую часть своего виртуального адресного пространства. Все мы знаем о легендарной прожорливости этой программы в отношении оперативной памяти. Синие полосы на рисунке — это сегменты памяти программы, такие как куча (heap), стек и так далее. Обратите внимание, что в данном случае под сегментами мы подразумеваем просто непрерывные адресные диапазоны. Это не те сегменты, о которых мы говорим при описании сегментации в Intel процессорах. Так или иначе, вот стандартная схема организации памяти процесса в Linux:
Давным давно, когда компьютерная техника находилась в совсем еще младенческом возрасте, начальные виртуальные адреса сегментов были совершенно одинаковыми почти для всех процессов, выполняемых машиной. Из-за этого значительно упрощалось удаленное эксплуатирование уязвимостей. Эксплойту часто необходимо обращаться к памяти по абсолютным адресам, например по некоторому адресу в стеке, по адресу библиотечной функции, и тому подобное. Хакер, рассчитывающий осуществить удаленную атаку, должен выбирать адреса для обращения в слепую в расчете на то, что размещение сегментов программы в памяти на разных машинах будет идентичным. И когда оно действительно идентичное, случается, что людей хакают. По этой причине, приобрел популярность механизм рандомизации расположения сегментов в адресном пространстве процесса. Linux рандомизирует расположение стека, сегмента для memory mapping, и кучи – их стартовый адрес вычисляется путем добавления смещения. К сожалению, 32-битное пространство не очень-то большое, и эффективность рандомизации в известной степени нивелируется.
В верхней части user mode space расположен стековый сегмент. Большинство языков программирования используют его для хранения локальных переменных и аргументов, переданных в функцию. Вызов функции или метода приводит к помещению в стек т.н. стекового фрейма. Когда функция возвращает управление, стековый фрейм уничтожается. Стек устроен достаточно просто — данные обрабатываются в соответствии с принципом «последним пришёл — первым обслужен» (LIFO). По этой причине, для отслеживания содержания стека не нужно сложных управляющих структур – достаточно всего лишь указателя на верхушку стека. Добавление данных в стек и их удаление – быстрая и четко определенная операция. Более того, многократное использование одних и тех же областей стекового сегмента приводит к тому, что они, как правило, находятся в кеше процессора, что еще более ускоряет доступ. Каждый тред в рамках процесса работает с собственным стеком.
Возможна ситуация, когда пространство, отведенное под стековый сегмент, не может вместить в себя добавляемые данные. В результате, будет сгенерирован page fault, который в Linux обрабатывается функцией expand_stack(). Она, в свою очередь, вызовет другую функцию — acct_stack_growth(), которая отвечает за проверку возможности увеличить стековый сегмент. Если размер стекового сегмента меньше значения константы RLIMIT_STACK (обычно 8 МБ), то он наращивается, и программа продолжает выполняться как ни в чем не бывало. Это стандартный механизм, посредством которого размер стекового сегмента увеличивается в соответствии с потребностями. Однако, если достигнут максимально разрещённый размер стекового сегмента, то происходит переполнение стека (stack overflow), и программе посылается сигнал Segmentation Fault. Стековый сегмент может увеличиваться при необходимости, но никогда не уменьшается, даже если сама стековая структура, содержащаяся в нем, становиться меньше. Подобно федеральному бюджету, стековый сегмент может только расти.
Динамическое наращивание стека – единственная ситуация, когда обращение к «немэппированной» области памяти, может быть расценено как валидная операция. Любое другое обращение приводит к генерации page fault, за которым следует Segmentation Fault. Некоторые используемые области помечены как read-only, и обращение к ним также приводит к Segmentation Fault.
Под стеком располагается сегмент для memory mapping. Ядро использует этот сегмент для мэппирования (отображания в память) содержимого файлов. Любое приложение может воспользоваться данным функционалом посредством системного вызовома mmap() (ссылка на описание реализации вызова mmap) или CreateFileMapping() / MapViewOfFile() в Windows. Отображение файлов в память – удобный и высокопроизводительный метод файлового ввода / вывода, и он используется, например, для загрузки динамических библиотек. Существует возможность осуществить анонимное отображение в память (anonymous memory mapping), в результате чего получим область, в которую не отображен никакой файл, и которая вместо этого используется для размещения разного рода данных, с которыми работает программа. Если в Linux запросить выделение большого блока памяти с помощью malloc(), то вместо того, чтобы выделить память в куче, стандартная библиотека C задействует механизм анонимного отображения. Слово «большой», в данном случае, означает величину в байтах большую, чем значение константы MMAP_THRESHOLD. По умолчанию, это величина равна 128 кБ, и может контролироваться через вызов mallopt().
Если текущий размер кучи позволяет выделить запрошенный объем памяти, то выделение может быть осуществлено средствами одной лишь среды выполнения, без привлечения ядра. В противном случае, функция malloc() задействует системный вызов brk() для необходимого увеличения кучи (ссылка на описание реализации вызова brk). Управление памятью в куче – нетривиальная задача, для решения которой используются сложные алгоритмы. Данные алгоритмы стремятся достичь высокой скорости и эффективности в условиях непредсказуемых и хаотичных пэттернов выделения памяти в наших программах. Время, затрачиваемое на каждый запрос по выделению памяти в куче, может разительно отличаться. Для решения данной проблемы, системы реального времени используют специализированные аллокаторы памяти. Куча также подвержена фрагментированию, что, к примеру, изображено на рисунке:
Наконец, мы добрались до сегментов, расположенных в нижней части адресного пространства процесса: BSS, сегмент данных (data segment) и сегмент кода (text segment). BSS и data сегмент хранят данные, соответствующий static переменным в исходном коде на C. Разница в том, что в BSS хранятся данные, соответствующие неинициализированным переменным, чьи значения явно не указаны в исходном коде (в действительности, там хранятся объекты, при создании которых в декларации переменной либо явно указано нулевое значение, либо значение изначально не указано, и в линкуемых файлах нет таких же common символов, с ненулевым значением. – прим. перевод.). Для сегмента BSS используется анонимное отображение в память, т.е. никакой файл в этот сегмент не мэппируется. Если в исходном файле на C использовать int cntActiveUsers, то место под соответствующий объект будет выделено в BSS.
В отличии от BSS, data cегмент хранит объекты, которым в исходном коде соответствуют декларации static переменных, инициализированных ненулевым значением. Этот сегмент памяти не является анонимным — в него мэппируется часть образа программы. Таким образом, если мы используем static int cntWorkerBees = 10, то место под соответствующий объект будет выделено в data сегменте, и оно будет хранить значение 10. Хотя в data сегмент отображается файл, это т.н. «приватный мэппинг» (private memory mapping). Это значит, что изменения данных в этом сегменте не повлияют на содержание соответствующего файла. Так и должно быть, иначе присвоения значений глобальным переменным привели бы к изменению содержания файла, хранящегося на диске. В данном случае это совсем не нужно!
С указателями все немножко посложнее. В примере из наших диаграмм, содержимое объекта, соответствующего переменной gonzo – это 4-байтовый адрес – размещается в data сегменте. А вот строка, на которую ссылается указатель, не попадет в data сегмент. Строка будет находиться в сегменте кода, который доступен только на чтение и хранит весь Ваш код и такие мелочи, как, например, строковые литералы (в действительности, строка хранится в секции .rodata, которая вместе с другими секциями, содержащими исполняемый код, рассматривается как сегмент, который загружается в память с правами на выполнение кода / чтения данных – прим. перевод.). В сегмент кода также мэппируется часть исполняемого файла. Если Ваша программа попытается осуществить запись в text сегмент, то заработает Segmentation Fault. Это позволяет бороться с «бажными» указателями, хотя самый лучший способ борьбы с ними – это вообще не использовать C. Ниже приведена диаграмма, изображающая сегменты и переменные из наших примеров:
Мы можем посмотреть, как используются области памяти процесса, прочитав содержимое файла /proc/pid_of_process/maps. Обратите внимание, что содержимое самого сегмента может состоять из различных областей. Например, каждой мэппируемой в memory mapping сегмент динамической библиотеке отводится своя область, и в ней можно выделить области для BSS и data сегментов библиотеки. В следующем посте поясним, что конкретно подразумевается под словом “область”. Учтите, что иногда люди говорят “data сегмент”, подразумевая под этим data + BSS + heap.
Можно использовать утилиты nm и objdump для просмотра содержимого бинарных исполняемых образов: символов, их адресов, сегментов и т.д. Наконец, то, что описано в этом посте – это так называемая “гибкая” организация памяти процесса (flexible memory layout), которая вот уже несколько лет используется в Linux по умолчанию. Данная схема предполагает, что у нас определено значение константы RLIMIT_STACK. Когда это не так, Linux использует т.н. классическую организации, которая изображена на рисунке:
Ну вот и все. На этом наш разговор об организации памяти процесса завершен. В следующем посте рассмотрим как ядро отслеживает размеры описанных областей памяти. Также коснемся вопроса мэппирования, какое отношение к этому имеет чтение и запись файлов, и что означают цифры, описывающие использование памяти.
Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.
Рабочие листы и материалы для учителей и воспитателей
Более 2 500 дидактических материалов для школьного и домашнего обучения
Столичный центр образовательных технологий г. Москва
Получите квалификацию учитель математики за 2 месяца
от 3 170 руб. 1900 руб.
Количество часов 300 ч. / 600 ч.
Успеть записаться со скидкой
Форма обучения дистанционная
- Онлайн
формат - Диплом
гособразца - Помощь в трудоустройстве
Видеолекции для
профессионалов
- Свидетельства для портфолио
- Вечный доступ за 120 рублей
- 311 видеолекции для каждого
Память ЭВМ, виды, краткая характеристика
Как работает оперативная память?
Работа оперативной памяти непосредственно связана с работой процессора и внешних устройств компьютера, так как именно ей последние «доверяют» свою информацию. Таким образом, данные сперва попадают с жесткого диска (или другого носителя) в саму ОЗУ и уже затем обрабатываются центральным процессором.
Обмен данными между процессором и памятью может происходить напрямую, но чаще все же бывает с участием кэш-памяти.
Кэш-память является местом временного хранения наиболее часто запрашиваемой информации и представляет собой относительно небольшие участки быстрой локальной памяти. Её использование позволяет значительно уменьшить время доставки информации в регистры процессора, так как быстродействие внешних носителей (оперативки и дисковой подсистемы) намного хуже процессорного. Как следствие, уменьшаются, а часто и полностью устраняются, вынужденные простои процессора, что повышает общую производительность системы.
Оперативной памятью управляет контроллер, который находится в чипсете материнской платы, а точнее в той его части, которая называется North Bridge (северный мост) - он обеспечивает подключение CPU (процессора) к узлам, использующим высокопроизводительные шины: ОЗУ, графический контроллер (смотрите изображение).
Примечание. Важно понимать, что если в процессе работы оперативной памяти производится запись данных в какую-либо ячейку, то её содержимое, которое было до поступления новой информации, будет безвозвратно утеряно. Т.е. по команде процессора данные записываются в указанную ячейку, одновременно стирая при этом то, что там было записано ранее.
Читайте также: