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