2009-10-24 2 views

ответ

36

Footprint обозначает размер, занимаемый приложением в памяти компьютера RAM.

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

Если, например, в том числе динамическая память в отчете о снимке редактора изображений, размер отпечатка полностью зависит от размера изображения, загружаемого пользователем в приложение.

В контексте сторонней библиотеки автор библиотеки может оптимизировать размер памяти для статической памяти библиотеки, гарантируя, что вы никогда не свяжете больше кода с вашим двоичным кодом приложения, чем это абсолютно необходимо. Общим методом, используемым для этого, например, для C, является распространение библиотечных функций для разделения c-файлов. Это связано с тем, что большинство C-компоновщиков свяжут весь код с c-файлом в вашем приложении, а не только с вызываемой вами функцией. Поэтому, если вы поместите одну функцию в c-файл, это все, что компоновщик будет вписывать в ваше приложение при вызове. Если вы поместите пять функций в c-файл, компоновщик, вероятно, свяжет их все с вашим приложением, даже если вы используете только один из них.

Все это, как говорится, общее (академическое) определение footprint включает в себя все виды аспектов памяти/хранения.

1

да, ресурсы, такие как память или диск

2

Это относится к ресурсам. Особенно память. При работе требуется меньший объем памяти.

4

Как правило, это объем памяти, который он занимает - «след», который он оставляет в памяти при работе. Однако он также может ссылаться на то, сколько места он занимает на вашем жестком диске - хотя в наши дни это не проблема.

Если вы пишете приложение и имеете ограничения по памяти, подумайте над запуском профилировщика, чтобы отслеживать, насколько ваша программа использует.

6

Из Википедии Memory footprint статьи:

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

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