回覆列表
  • 1 # 13976514131

    動態共享庫有以下的優點,使它在Linux開發中比靜態連結庫更加的流行。(1) 節省記憶體動態共享庫無論被多少應用程式使用,在記憶體中都只存在一個動態共享庫的副本,而不像靜態連結庫那樣,一個應用程式在執行中用到靜態連結庫,就會有多個靜態連結庫的副本 。(2) 節省磁碟這和節省記憶體有點相似,同樣這也是由於靜態連結庫存在多個靜態連結庫的副本造成的。同樣的應用程式,使用動態共享庫編譯出的版本通常比使用靜態連結庫編譯出來的版本要小。因此,在嵌入式系統開發中使用動態共享庫也不節省空間,提供了一種很好的選擇。(3) 便於軟體修復與升級由於動態共享是獨立於應用程式存在的,因此,用新版本的動態共享庫替舊版本的工作將變得非常容易。如果使用靜態連結庫的話,假設在一個靜態庫中發現了一個ug,那麼要修正這個ug的話,就要重新編譯所有使用這個靜態庫的應用程式,使用這個靜態庫的應用程式有很多的話,可以想像工作量是有多大。(4) 提高效能與採用靜態連結庫臃腫的應用程式相比,採用動態共享庫的應用程式明顯“苗條”得多,這樣當作業系統載入應用程式時,是需要把應用程式複製到記憶體中的,這樣的“苗條”的動態連結庫也就有了很大的優勢,同時提高了程式的效能。當然,動態連結庫在有上述這些優勢的同時,也有以下的幾個劣勢。複雜性,相容性,除錯困難。但是它在Linux上使用頻率上仍然比靜態連結庫要高的多。應用的更加廣泛。

  • 中秋節和大豐收的關聯?
  • "我沒有難過,有什麼好難過"是哪首歌的歌詞?