Перейти к основному содержимому

Что такое память?

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

Основные концепции

  • Адресация: Каждая ячейка памяти имеет уникальный номер (адрес), позволяющий процессору обращаться к ней.
  • Единицы измерения: Память состоит из битов, но для удобства работы объединяется в байты (8 бит), слова и т. д..
  • Иерархия памяти: Процессор использует быстрые кэши, затем оперативную память (RAM), затем более медленные накопители. Часто используемые данные лучше хранить как можно выше в иерархии.

Жизненный цикл данных

  • Выделение (Allocate): Программа запрашивает блок памяти.
  • Использование (Use): Программа читает и записывает данные в выделенную область.
  • Освобождение (Release): Память возвращается системе, когда она больше не нужна (вручную или автоматически).