У якийсь момент це потрапляє в питання про те, що навіть вважається "ОЗУ". Існує багато процесорів та мікроконтролерів, які мають достатню кількість мікросхем для роботи з невеликими операційними системами без доданих окремих мікросхем оперативної пам'яті. Насправді це насправді відносно часто в світі вбудованих систем. Отже, якщо ви просто маєте на увазі не приєднані окремі мікросхеми оперативної пам’яті, то, так, ви можете зробити це з багатьма поточними мікросхемами, особливо тими, які створені для вбудованого світу. Я це робив сам на роботі. Однак, оскільки єдиною реальною різницею між адресною пам'яткою на мікросхемі та окремими чіпами оперативної пам’яті є лише розташування (і, очевидно, затримка), цілком розумно вважати вбудовану пам’ять самою оперативною пам’яттю. Якщо ви рахуєте це як ОЗУ, то кількість поточного,
Якщо ви посилаєтесь на звичайний ПК, ні, ви не можете запустити його без прикріплених окремих RAM-накопичувачів, але це лише тому, що BIOS розроблений так, щоб не намагатися завантажуватися без встановленої оперативної пам'яті (що, в свою чергу, тому що всі сучасні операційні системи ПК вимагають запуску оперативної пам’яті, тим більше, що машини x86, як правило, не дозволяють безпосередньо звертатися до пам'яті на мікросхемі; вона використовується виключно як кеш.)
Нарешті, як сказав Цайсс, немає жодної теоретичної причини, що ви не можете спроектувати комп'ютер для роботи без жодної оперативної пам’яті, окрім пари реєстрів. Оперативна пам’ять існує лише тому, що вона дешевша, ніж мікросхема пам'яті і набагато швидша, ніж диски. Сучасні комп’ютери мають ієрархію пам'яті, яка варіюється від великої, але повільної до дуже швидкої, але малої. Нормальна ієрархія - це щось подібне:
- Регістри - Дуже швидкі (ними можна керуватися інструкціями процесора безпосередньо, як правило, без додаткової затримки), але зазвичай дуже малі (64-розрядні процесорні ядра x86 мають лише 16 регістрів загального призначення, наприклад, кожен з яких може зберігати одне 64-розрядне число.) Розміри регістрів, як правило, невеликі, оскільки регістри дуже дорогі за один байт.
- Кеш процесорів - все ще дуже швидкий (часто на 1-2 циклу затримки) і значно більший, ніж регістри, але все ж набагато менший (і набагато швидший), ніж звичайний DRAM. Кеш процесора також набагато дорожчий за байт, ніж DRAM, тому він, як правило, значно менший. Крім того, багато процесорів насправді мають ієрархії навіть у кеші. Зазвичай вони мають менші, швидші кеші (L1 і L2) на додаток до більших і повільніших кешів (L3.)
- DRAM (те, що більшість людей вважають оперативною пам’яттю) - набагато повільніше, ніж кеш (затримка доступу, як правило, становить десятки-сотні циклів тактових годин), але набагато дешевша за байт і, отже, зазвичай набагато більша за кеш. DRAM все ще є, однак у багато разів швидшим, ніж доступ до диска (як правило, сотні до тисяч разів швидше.)
- Диски - знову ж таки, вони набагато повільніші, ніж DRAM, але в цілому набагато дешевші за байт і, отже, набагато більші. Крім того, диски, як правило, не енергонезалежні, це означає, що вони дозволяють зберігати дані навіть після закінчення процесу (а також після перезавантаження комп'ютера.)
Зауважте, що вся причина ієрархії пам'яті - це просто економія. Не існує жодної теоретичної причини (принаймні не в галузі інформатики), чому ми не могли б мати терабайт енергонезалежних регістрів на процесорному гине. Питання в тому, що будувати це було б просто шалено важко і дорого. Наявність ієрархій, що варіюються від невеликих обсягів дуже дорогої пам'яті до великих об'ємів дешевої пам'яті, дозволяє нам підтримувати швидкі швидкості з розумними витратами.