Объем памяти

редактировать

Объем памяти относится к объему основной памяти, которую программа использует или на которую ссылается во время работы.

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

Более крупные программы занимают больше места в памяти. Объем памяти приложения примерно пропорционален количеству и размеру совместно используемых библиотек или классов, которые оно загружает, тогда как статические библиотеки, исполняемые программы и области статических данных вносят свой вклад в фиксированную (постоянную) часть. Сами программы часто не вносят большую часть в свои собственные следы памяти; скорее, структуры, представленные средой выполнения, занимают большую часть памяти. Например, компилятор C ++ вставляет vtables, информационные объекты типа и множество временных и анонимных объектов, которые активны во время выполнения программы. В программе Java объем памяти преимущественно состоит из среды выполнения в форме самой виртуальной машины Java (JVM), которая загружается косвенно при запуске приложения Java. Кроме того, в большинстве операционных систем файлы на диске, открытые приложением, также считываются в адресное пространство приложения, тем самым увеличивая его размер.

СОДЕРЖАНИЕ
  • 1 Тенденция использования
    • 1.1 Во встроенных системах
  • 2 См. Также
  • 3 ссылки
Тенденция использования

В течение 1990-х годов компьютерная память стала дешевле, и программы с большим объемом памяти стали обычным явлением. Эта тенденция произошла в основном из-за широкого использования компьютерного программного обеспечения, от крупных корпоративных приложений, потребляющих огромные объемы памяти (например, базы данных ), до программного обеспечения для создания и редактирования мультимедиа с интенсивным использованием памяти. Чтобы удовлетворить постоянно растущие потребности в памяти, были введены системы виртуальной памяти, которые делят доступную память на части равного размера и загружают их со «страниц», хранящихся на жестком диске, по мере необходимости.

Такой подход к поддержке программ с огромным объемом памяти оказался весьма успешным. Большинство современных операционных систем, включая Microsoft Windows, MacOS от Apple и все версии Linux и Unix, предоставляют системы виртуальной памяти.

Во встроенных системах

Дополнительная информация: Встроенная система

Традиционно программы с низким объемом памяти имели важное значение для запуска приложений на встроенных платформах, где память часто была ограниченным ресурсом - настолько, что разработчики обычно жертвовали эффективностью (скоростью обработки) только для того, чтобы сделать программные следы достаточно малыми, чтобы поместиться в доступный БАРАН. Например, Sun Microsystems выпустила версию своей виртуальной машины Java (JVM) для таких ограниченных устройств; он называется KVM. KVM работает на платформах, где память находится в килобайтах, а не в мегабайтах (или даже гигабайтах ) памяти, доступной на обычном домашнем ПК или более современных интеллектуальных устройствах.

Смотрите также
использованная литература
Последняя правка сделана 2024-01-02 06:55:15
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте