Як працює оперативна пам’ять і навіщо вона потрібна

Windows

ОЗУ (оперативний пристрій), воно ж RAM (” Random Access Memory ” – пам’ять з довільним доступом), являє собою область тимчасового зберігання даних, за допомогою якої забезпечується функціонування програмного забезпечення. Фізично, оперативна пам’ять у системі є набір мікросхем або модулів (що містять мікросхеми), які зазвичай підключаються до системної плати.

В процесі роботи пам’ять виступає як тимчасовий буфер (у ній зберігаються дані та запущені програми) між дисковими накопичувачами та процесором, завдяки значно більшій швидкості читання та запису даних.

Примітка.
Зовсім новачки часто плутають оперативну пам’ять з пам’яттю жорсткого диска ( ПЗУ – постійний пристрій, що запам’ятовує), чого робити не потрібно, т.к. це різні види пам’яті. Оперативна пам’ять (на кшталт є динамічної – Dynamic RAM ), на відміну постійної – энергозависима, тобто. для зберігання даних їй необхідна електроенергія, і за її відключенні (вимикання комп’ютера) дані видаляються. Приклад енергонезалежної пам’яті ПЗУ – флеш-пам’ять, в якій електрика використовується лише для запису та читання, у той час як для зберігання даних джерело живлення не потрібен.

За структурою пам’ять нагадує бджолині стільники, тобто. складається з осередків, кожна з яких призначена для зберігання меду певного обсягу даних, як правило, одного або чотирьох бітів. Кожна комірка вона має свою унікальну «домашню» адресу, яка ділиться на два компоненти – адресу горизонтального рядка ( Row ) і вертикального стовпця ( Column ).

Осередки є конденсаторами, здатними накопичувати електричний заряд. За допомогою спеціальних підсилювачів аналогові сигнали перетворюються на цифрові, які у свою чергу утворюють дані.

Для передачі на мікросхему пам’яті адреси рядка служить сигнал, який зветься RAS ( Row Address Strobe ), а адреси стовпця — сигнал CAS ( Column Address Strobe ).

Із цим розібралися, йдемо далі. Порушимо ще одне важливе питання:до змісту ↑

Як працює оперативна пам’ять?

Робота оперативної пам’яті безпосередньо пов’язана з роботою процесора і зовнішніх пристроїв комп’ютера, оскільки саме останні «довіряють» свою інформацію. Таким чином, дані спершу потрапляють з жорсткого диска (або іншого носія) в саму ОЗУ і потім обробляються центральним процесором (дивіться зображення).

Як працює оперативна пам'ять - Схема - взаємодія компонентів ПК

Обмін даними між процесором і пам’яттю може відбуватися безпосередньо, але частіше все ж таки буває за участю кеш-пам’яті.

Кеш-пам’ять є місцем тимчасового зберігання інформації, що найбільш часто запитується, і є відносно невеликими ділянками швидкої локальної пам’яті. Її використання дозволяє значно зменшити час доставки інформації в регістри процесора, так як швидкодія зовнішніх носіїв (оперативки та дискової підсистеми) набагато гірша за процесорний. Як наслідок, зменшуються, а часто й повністю усуваються вимушені простої процесора, що підвищує загальну продуктивність системи.

Оперативною пам’яттю управляє контролер, який знаходиться в чіпсеті материнської плати, а точніше в тій його частині, яка називається North Bridge (північний міст) – він забезпечує підключення CPU (процесора) до вузлів, що використовують високопродуктивні шини: ОЗУ , графічний контролер (див. зображення) .

Як працює оперативна пам'ять - Управління оперативною пам'яттю

Примітка.
Важливо розуміти, що й у процесі роботи оперативної пам’яті проводиться запис даних у якийсь осередок, його зміст, що було до надходження нової інформації, буде безповоротно втрачено. Тобто. за командою процесора дані записуються у вказану комірку, одночасно стираючи при цьому те, що там було записано раніше.

Розглянемо ще один важливий аспект роботи оперативної пам’яті – це її розподіл на кілька розділів за допомогою спеціального програмного забезпечення (ПЗ), яке підтримується операційними системами.

Докладніше

Справа в тому, що сучасні пристрої оперативної пам’яті є досить об’ємними (привіт двотисячним, коли вистачало і 32 Mб), щоб у ній можна було розміщувати дані від кількох завдань, що одночасно працюють. Процесор може одночасно обробляти кілька завдань. Ця обставина сприяла розвитку так званої системи динамічного розподілу пам’яті, коли під кожну оброблювану процесором завдання відводяться динамічні (змінні за своєю величиною та місцезнаходженням) розділи оперативної пам’яті.

Динамічний характер роботи дозволяє розпоряджатися наявною пам’яттю більш економно, своєчасно «вилучаючи» зайві ділянки пам’яті в одних завдань і «додаючи» додаткові ділянки – іншим (залежно від їх важливості, обсягу інформації, що обробляється, терміновості виконання тощо). За «правильний» динамічний розподіл пам’яті в ПК відповідає операційна система, тоді як за «правильне» використання пам’яті відповідає прикладне програмне забезпечення.

Цілком очевидно, що прикладні програми повинні мати здатність працювати під управлінням операційної системи, інакше остання не зможе виділити такій програмі оперативну пам’ять або вона не зможе «правильно» працювати в межах відведеної пам’яті. Саме тому не завжди вдається запустити під сучасною операційною програмою, раніше написані програми, які працювали під управлінням застарілих систем, наприклад під ранніми версіями Windows (98 наприклад).

Ще (для загального розвитку) слід знати, що підтримка пам’яті залежить від розрядності системи, наприклад, операційна система Windows 7, розрядністю 64 біта, підтримує об’єм пам’яті до 192 Гбайт (молодший 32 -бітний побратим “бачить” не більше 4 Гбайт). Однак, якщо Вам і цього мало, будь ласка, 128 -розрядна Windows 8 заявляє підтримку воістину колосальних обсягів – я навіть не наважуюсь озвучити цю цифру.

Що це таке розібралися.

Далі, на черзі, як і говорив заголовок, у нас не менш цікаве питання:

Навіщо потрібна ця оперативна пам’ять?

Як ми вже знаємо, обмін даними між процесором та пам’яттю відбувається найчастіше за участю кеш-пам’яті. Своєю чергою, нею управляє спеціальний контролер, який, аналізуючи виконувану програму, намагається передбачити, які дані та команди найімовірніше знадобляться найближчим часом процесору, і підкачує їх, тобто. кеш-контролер завантажує в кеш-пам’ять потрібні дані з оперативної пам’яті і повертає, коли потрібно, модифіковані процесором дані в оперативну пам’ять.

Після процесора, оперативну пам’ять можна вважати швидкодіючим пристроєм. Тому основний обмін даними відбувається між цими двома девайсами. Вся інформація у персональному комп’ютері зберігається на жорсткому диску. При включенні комп’ютера в ОЗУ з гвинта записуються драйвери, спеціальні програми та елементи операційної системи. Потім туди записуються ті програми – програми, які ми запускатимемо, при закритті останніх вони будуть стерті з неї.

Дані, записані в оперативній пам’яті, передаються в CPU (він же неодноразово згаданий процесор, він же Central Processing Unit ), там обробляються і записуються назад. І так постійно: дали команду процесору взяти біти за такими адресами (як: обробити їх і повернути на місце або записати на нове) – він так і зробив (дивіться зображення).

Як працює оперативна пам'ять - процесор та оперативна пам'ять - взаємодія

Все це добре, поки клітинок пам’яті ( 1 ) вистачає. А якщо ні?

Тоді в роботу входить файл підкачки ( 2 ). Цей файл розташований на жорсткому диску і туди записується все, що не влазить у комірки оперативної пам’яті. Оскільки швидкодія гвинта значно нижча за ОЗУ , то робота файлу підкачки сильно уповільнює роботу системи. Крім цього, це знижує довговічність жорсткого диска. Але це вже зовсім інша історія.

Примітка.
У всіх сучасних процесорах є кеш ( cache ) – масив надшвидкісної оперативної пам’яті, що є буфером між контролером порівняно повільної системної пам’яті та процесором. У цьому буфері зберігаються блоки даних, з якими CPU працює в даний момент, завдяки чому суттєво зменшується кількість звернень процесора до надзвичайно повільної (порівняно зі швидкістю роботи процесора) системної пам’яті.

Однак, кеш-пам’ять малоефективна при роботі з великими масивами даних (відео, звук, графіка, архіви), бо такі файли просто туди не поміщаються, тому весь час доводиться звертатися до оперативної пам’яті, або до HDD (який також має свій кеш) .

Компонування модулів

До речі, давайте розглянемо з чого складається (з яких елементів) сам модуль.

Так як практично всі модулі пам’яті, складаються з тих самих конструктивних елементів, ми для наочності візьмемо стандарт SD-RAM (для настільних комп’ютерів). На зображенні спеціально наведено різне конструктивне виконання цих (щоб Ви знали не тільки «шаблонне» виконання модуля, але й «екзотичне»).

Отже, модулі стандарту SD-RAM ( 1 ): DDR ( 1.1 ); DDR2 ( 1.2 ).

Як працює оперативна пам'ять - компонування модулів пам'яті

Опис:

  1. Чіпи (мікросхеми) пам’яті
  2. SPD ( Serial Presence Detect ) – мікросхема енергонезалежної пам’яті, в яку записані базові налаштування будь-якого модуля. Під час старту системи BIOS материнської плати зчитує інформацію, відображену в SPD , і виставляє відповідні таймінги та частоту роботи ОЗУ ;
  3. “Ключ” – спеціальний проріз плати, за якою можна визначити тип модуля. Механічно перешкоджає неправильному встановленню плашок у слоти, призначені для оперативної пам’яті;
  4. SMD -компоненти модулів (резистори, конденсатори). Забезпечують електричну розв’язку сигнальних ланцюгів та керування живленням чіпів;
  5. Cтикери виробника – вказують стандарт пам’яті, штатну частоту роботи та базові таймінги;
  6. РСВ – друкована плата. На ній розпаюються інші компоненти модуля. Від якості часто залежить результат розгону: на різних платах однакові чіпи можуть поводитися по-різному.

Тепер спільна, спрощуючи.

Температура, лаг, енергозалежність та взагалі “на пальцях”

Умовно кажучи, якщо дуже просто, то оперативна пам’ять це багато дрібних осередків, що зберігають дані і кожен біт цих даних зберігається зарядом (або його відсутністю) на крихітному конденсаторі в мікросхемі (про що йшлося вище за текстом).

Ця пам’ять є енергозалежною, саме тому під час режиму сну (глибокого сну комп’ютера) вміст пам’яті записується на жорсткий диск , а при пробудженні завантажується назад. Коли комп’ютер вимкнено, пам’ять порожня.

Файл підкачки , який є “продовженням” цієї пам’яті, логічним чином, зберігає дані на жорсткому диску, що, в загальному випадку, небезпечно.

Інформація в осередках з часом “губиться”, причому чим вище температура , тим швидше це відбувається.

Щоб уникнути втрати збережених даних, вони повинні регулярно оновлюватися, щоб відновити заряд (якщо він є) до початкового рівня. Цей процес оновлення включає в себе читання кожного біта, а потім запис його назад. Це відбувається не повністю, а блоками. У процесі такого оновлення пам’ять зайнята і не може виконувати звичайні операції, такі як запис або зберігання бітів. Загалом через це оновлення пам’ять гальмує кожні 7,8 мкс .

Післямова

Власне, це основи основ і базисний базис, а тому сподіваюся, що стаття була цікава Вам як з точки зору розширення кругозору, так і як цеглина в персональних знаннях про персональний комп’ютер :).

Оцініть статтю
Додати коментар

  1. Атоній

    Дякую за дуже гарну статтю та розгорнуту відповідь. Ще було б дуже цікаво дізнатись про сумісність RAM, про те на що впливає частота МГц і що буде якщо вставити плашку на 1600МГц в материнку і якій чіпсет підтримує частоту 1067МГц?)

    Відповіcти
    1. Стерненко Микола автор

      Дякую за позитивний відгук! Щодо сумісності RAM та впливу частоти МГц: Частота RAM (в МГц) важлива для продуктивності комп’ютера. Якщо вставити плашку на 1600МГц в материнську плату, яка підтримує частоту 1067МГц, то ймовірно, система автоматично знизить частоту RAM до максимально підтримуваного рівня (в даному випадку 1067МГц). Це несуттєво вплине на продуктивність, але збільшить сумісність компонентів, що важливо для стабільної роботи комп’ютера.

      Відповіcти