Я слышал, что многие библиотеки, такие как JXTA и PjSIP, имеют меньшие отпечатки. Это указывает на небольшое потребление ресурсов или что-то еще?
Что означает небольшая занимаемая площадь в плане программирования?
Ответ 1
Footprint обозначает размер, занимаемый вашим приложением, в памяти оперативной памяти компьютера.
След может иметь различный смысл, говоря о потреблении памяти. По моему опыту, область памяти часто не включает в себя память, выделенную в куче (динамической памяти) или ресурс, загруженный с диска и т.д. Это связано с тем, что динамические распределения не являются постоянными и могут варьироваться в зависимости от того, как используется приложение или модуль. Когда вы сообщаете о "низкой занимаемой площади" или "высокой занимаемой площади", обычно требуется желаемый или максимальный размер требуемого пространства.
Если, например, в том числе динамическая память в отчете footprint в редакторе изображений, то след будет полностью зависеть от размера изображения, загруженного пользователем в приложение.
В контексте сторонней библиотеки автор библиотеки может оптимизировать объем памяти в статической памяти библиотеки, гарантируя, что вы никогда не связываете больше кода в свой двоичный код приложения, чем это абсолютно необходимо. Общим методом, используемым для этого, например, для C, является распространение библиотечных функций для разделения c файлов. Это связано с тем, что большинство C-компоновщиков свяжут весь код с c файлом в вашем приложении, а не только с вызываемой вами функцией. Поэтому, если вы поместите одну единственную функцию в c файл, все компоновщик будет входить в ваше приложение при его вызове. Если вы поместите пять функций в c файл, компоновщик, вероятно, свяжет их все с вашим приложением, даже если вы используете только один из них.
Все это, как говорится, общее (академическое) определение footprint включает все виды аспектов памяти/хранения.
Ответ 2
Из Википедии Объем памяти:
Объем памяти относится к количеству основной памяти, которую использует программа или ссылки во время работы.
Это включает в себя всевозможные области активной памяти, такие как сегмент кода, содержащий (в основном) программные инструкции (и иногда константы), сегмент данных (как инициализированный, так и неинициализированный), память кучи, стек вызовов и память, необходимые для хранения любых дополнительных структур данных, такие как таблицы символов, отладка структур данных, открытые файлы, общие библиотеки, сопоставленные текущему процессу и т.д., которые программа когда-либо нуждается во время выполнения и будет загружена хотя бы один раз в течение всего прогона.
Ответ 3
Как правило, это объем памяти, который он занимает, - "след", который он оставляет в памяти при работе. Однако он также может относиться к тому, сколько места он занимает на вашем жестком диске - хотя в наши дни это меньше проблем.
Если вы пишете приложение и имеете ограничения по памяти, подумайте над запуском профилировщика, чтобы отслеживать, насколько ваша программа использует.
Ответ 4
Это относится к ресурсам. Особенно память. При работе требуется меньший объем памяти.
Ответ 5
да, такие ресурсы, как память или диск