Скажем, у меня есть приложение в Linux, которое использует разделяемые библиотеки (.so
files). Мой вопрос заключается в том, будет ли код в этих библиотеках выделять память в той же куче, что и основное приложение, или они используют свою собственную кучу?
Так, например, некоторая функция в файле .so
вызывает malloc
, будет ли она использовать тот же кучный менеджер, что и приложение или другое? Кроме того, как насчет глобальных данных в этих общих воспоминаниях. Где он лежит? Я знаю, что приложение лежит в сегменте bss и данных, но не знает, где это для этих общих файлов объектов.