Время загрузки общих библиотек против статических библиотек

У меня есть вопрос о разделяемых библиотеках и времени загрузки статических библиотек.

Предположим, что у меня есть исполняемый файл foo.exe, который использует liba, libb, libc. Также в данный момент на машине запущено более 10 экземпляров исполняемого файла.

Теперь, если вышеперечисленные 3 библиотеки были общими библиотеками: 1st Insance загружается в ОЗУ: время, которое потребуется main () foo.exe для загрузки памяти (при условии, что оно незначительно) + время загрузки liba + время загрузки libb + время загрузки libc 2-й экземпляр запущен: теперь предположим, что запущен второй экземпляр этого исполняемого файла. Поскольку все библиотеки уже загружены в основную память, время, затрачиваемое только на загрузку main () в память, ничтожно мало.

Теперь, если вышеуказанные 3 библиотеки были статическими библиотеками: 1st Insance загружается в ОЗУ: время, которое потребуется main () foo.exe для загрузки памяти (при условии, что это незначительно) + время загрузки liba + время загрузки libb + время на загрузку libc (перехватывает теперь всю часть исполняемого файла в целом) 2-й экземпляр запущен: теперь предположим, что запущен второй экземпляр этого исполняемого файла. Время, которое потребуется, будет снова временем, потребованным main () foo.exe для загрузки памяти (при условии, что оно незначительно) + время загрузки liba + время загрузки libb + время загрузки libc. (Поскольку каждый исполняемый файл не может совместно использовать библиотеки, так как это статические библиотеки)

Итак, мой вывод: со статической библиотекой время загрузки будет больше. Но мне сказали, что разделяемые библиотеки занимают больше времени при загрузке, чем статические, поэтому будет задержка, и поэтому совместно используемые библиотеки не являются хорошим вариантом. Как это возможно ?

Ответы на вопрос(3)

Ваш ответ на вопрос