Оперативна пам'ять є дешевим Так чому б ми не запустити все від нього?
Модулі оперативної пам'яті коштують дешевше, ніж будь-коли раніше, так чому ж ми не запускаємо всю нашу операційну систему над надзвичайно швидкими банками оперативної пам'яті?
Сьогоднішня сесія запитань та відповідей приходить до нас люб'язно SuperUser - підрозділ Stack Exchange, групування веб-сайтів із запитаннями та відповідями на рівні спільноти..
Питання
Читач SuperUser pkr298 хоче знати, чому ми не використовуємо машини на основі RAM, а не на дисках. Він пише:
Оперативна пам'ять дешева і набагато швидше, ніж SSD. Це просто мінливі. Так чому ж комп'ютери не мають багато оперативної пам'яті, і при включенні живлення, завантажуйте все в оперативну пам'ять з жорсткого диска / SSD і просто запустіть все звідти, припускаючи, що немає реальної необхідності зберігати що-небудь поза пам'яттю? Не було б комп'ютерів набагато швидше?
Звичайно, поточна операційна система може не підтримувати цю функцію взагалі, але чи існує будь-яка причина, що RAM не використовується таким чином?
На перший погляд, його запит має сенс, але, очевидно, ми не переповнені комп'ютерами на основі оперативної пам'яті; що це задня історія?
Відповідь
Співробітник SuperUser Hennes пропонує деяке розуміння того, чому ми все ще використовуємо дискові системи:
Є кілька причин, по яких RAM не використовується таким чином:
- Спільний робочий стіл (DDR3) оперативної пам'яті дешевий, але не зовсім такий дешевий. Особливо, якщо ви хочете купити відносно великі DIMM.
- Операційна пам'ять втрачає вміст при вимкненому живленні. Таким чином, потрібно перезавантажити вміст під час завантаження. Скажімо, ви використовуєте RAMDISK розміром SSD розміром 100 Гб, це означає, що затримка близько двох хвилин, а копіювання 100 Гб з диска.
- Оперативна пам'ять використовує більше енергії (наприклад, 2-3 вати на DIMM, приблизно так само, як бездіяльний SSD).
- Щоб використовувати стільки оперативної пам'яті, вашій материнській платі знадобиться багато DIMM-розеток і сліди до них. Зазвичай це обмежується шістьма або менше. (Більше місця на борту означає більше витрат, а отже, і більш високі ціни).
- Нарешті, вам також знадобиться оперативна пам'ять для запуску програм, тому для роботи потрібно мати звичайний розмір оперативної пам'яті (наприклад, 18GiB і достатньо для зберігання даних, які ви очікуєте від використання).
Сказавши, що: Так, RAM диски існують. Навіть як PCI плата з роз'ємами DIMM і як пристрій для дуже високих IOps. (В основному використовуються в корпоративних базах даних, перш ніж SSD стала опцією). Ці речі не є дешевими.
Ось два приклади дискових карт з низьким рівнем оперативної пам'яті, які внесли його у виробництво:Зауважте, що існує багато способів зробити це, ніж просто створити RAM-диск у спільній робочій пам'яті.
Ти можеш:
- Використовуйте спеціальний фізичний диск для нього з енергонезалежною (динамічною) пам'яттю. Або як пристрій, або як інтерфейс SAS, SATA або PCI [e].
- Ви можете зробити те ж саме з накопичувачем, що зберігається за допомогою батареї (не потрібно копіювати початкові дані в неї, оскільки він зберігатиме вміст доти, доки резервна потужність залишається дійсною)..
- Ви можете використовувати статичні оперативні пам'яті, а не DRAMS (простіше, дорожче).
- Ви можете використовувати спалах або інше постійне сховище, щоб зберегти всі дані (Попередження: спалах зазвичай має обмежену кількість циклів запису). Якщо ви використовуєте флеш-пам'ять тільки як зберігання, ви просто переїхали на SSD. Якщо ви зберігаєте все в динамічній оперативній пам'яті і зберігаєте на флеш-резервній копії при відключенні живлення, ви повернулися до приладів.
Я впевнений, що є спосіб описати більше, від Amiga RAD: скидання збережених дисків RAM до IOPS, вирівнювання зносу і G-d знає, що, Однак я скорочу цей короткий і тільки список ще один пункт:
Ціни DDR3 (поточна DRAM) у порівнянні з цінами SSD:
- DDR3: 10 євро за ГБ, або 10 000 євро за ТБ
- SSD: значно менше. (Близько 1/4 до 1/10).
Якщо ви хочете дізнатися більше про диски RAM, перевірте RAM Disks Explained: що вони є і чому ви, ймовірно, не повинні використовувати один.
Маєте щось додати до пояснення? Звучить в коментарях. Хочете прочитати більше відповідей від інших технологічних користувачів Stack Exchange? Перегляньте повний потік обговорення тут.