2014-02-04 1 views
0

У любого есть идея, сколько раз общая библиотека загружается в память? Например, если я выполняю ProgramA и ProgramB, что оба используют libmyLib.so, я согласен, что на диске есть только одна копия, но как насчет памяти?Сколько раз общая библиотека загружалась в память

PS: а как насчет окон?

+0

В идеале только один раз! –

ответ

0

Его только один экземпляр разделяемой библиотеки совместно Программа A & B

article Проверьте, который говорит,

Shared libraries can save memory, not just disk space. The kernel can keep a 
single copy of a shared library in memory, sharing it among multiple applications. 
So, not only do we only have one copy of printf() on the disk, we only have one 
in memory. That has a pretty noticeable effect on performance. 
+0

спасибо :), я думаю, это то же самое для окон? – rednaks

+0

Скорее всего, для Windows тоже. Обычно код общей библиотеки отсутствует в исполняемом программном обеспечении, что означает, что он не загружается каждый раз. –

Смежные вопросы