<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">Am 16.06.2021 um 18:07 schrieb Dennis Lee Bieber via fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org" class="">fpc-pascal@lists.freepascal.org</a>>:</div><br class="Apple-interchange-newline"><div class=""><div class="">On Wed, 16 Jun 2021 13:15:10 +0200 (CEST), Michael Van Canneyt via<br class="">fpc-pascal <<a href="mailto:fpc-pascal@lists.freepascal.org" class="">fpc-pascal@lists.freepascal.org</a>><br class="">declaimed the following:<br class=""><br class=""><blockquote type="cite" class="">~$ ldd /usr/bin/ls<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>linux-vdso.so.1 (0x00007ffc3f9c1000)<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f45b7132000)<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f45b6f40000)<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007f45b6eb0000)<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f45b6eaa000)<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>/lib64/ld-linux-x86-64.so.2 (0x00007f45b718f000)<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f45b6e87000)<br class="">~$ ls -lh /lib/x86_64-linux-gnu/libselinux.so.1 /lib/x86_64-linux-gnu/libc-2.31.so /lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0 /lib/x86_64-linux-gnu/libdl-2.31.so /lib/x86_64-linux-gnu/libpthread-2.31.so <br class="">-rwxr-xr-x 1 root root 2.0M Dec 16 11:04 /lib/x86_64-linux-gnu/libc-2.31.so<br class="">-rw-r--r-- 1 root root 19K Dec 16 11:04 /lib/x86_64-linux-gnu/libdl-2.31.so<br class="">-rw-r--r-- 1 root root 571K Dec 7 2019 /lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0<br class="">-rwxr-xr-x 1 root root 154K Dec 16 11:04 /lib/x86_64-linux-gnu/libpthread-2.31.so<br class="">-rw-r--r-- 1 root root 160K Feb 26 2020 /lib/x86_64-linux-gnu/libselinux.so.1<br class=""><br class="">Total size of code needed to run the application: close to 3 Mb.<br class=""><br class="">Comparison is different because of all kinds of memory sharing techniques,<br class="">but in general, the code size of an FPC binary is not too bad.<br class=""><br class=""></blockquote><br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>Being Shared Object files, there should be, at most, only one copy of<br class="">the library mapped into memory, and every executable referencing the shared<br class="">object will get mapped into the same memory space.<br class=""></div></div></blockquote><div><br class=""></div>This still results in pulling in all static data etc. of the libraries. <a href="https://dl.acm.org/doi/10.1145/3136014.3136031" class="">https://dl.acm.org/doi/10.1145/3136014.3136031</a></div><div>shows that the FPC approach is memory wise more efficient.</div><div><br class=""></div></body></html>