How to signal kernel that shared library is not in use by any process anymore ?

Lev Olshvang <levonshe-zJpx2rpV7r/[email protected]> Fri, 21 Dec 2018 17:20:36 +0300
Newsgroups gmane.linux.region.israel
Message-ID <965981545402036__49544.0786392011$1545401953$gmane$org@sas1-2b3c3045b736.qloud-c.yandex.net>
Hi All,

I have  an executable (C++) which is the exclusive user of the some shared library that it uses only during  the initialization phase.

I would like to free memory used by this shared library, because I am running on embedded system.

How can I achieve this?

I know that dlopen() will load shared library, and hope that following dlclose() will free this lib memory. 

1. Still  I do not know what method should be used to make dynamic linker look again into executable and resolve symbols of the newly appeared symbols ?
2. And  how to tell the dynamic linker ld-linux.so to postpone the symbol resolution until dlopen()  will load  the library?
3. Whether to compile and link executable with this library or leave unresolved symbols?

Waiting for your advises,
Lev.

_______________________________________________
Linux-il mailing list
[email protected]
http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il