卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

linux運行so動態(tài)庫 linux動態(tài)庫和靜態(tài)庫的區(qū)別?

linux動態(tài)庫和靜態(tài)庫的區(qū)別?通常編譯動態(tài)鏈接庫和靜態(tài)鏈接庫來集成一系列接口(函數(shù))程序源代碼編譯后,它是由編譯器編譯并通過鏈接器鏈接到這些庫中的動態(tài)鏈接庫和靜態(tài)鏈接庫的區(qū)別是鏈接器鏈接時靜態(tài)鏈接庫

linux動態(tài)庫和靜態(tài)庫的區(qū)別?

通常編譯動態(tài)鏈接庫和靜態(tài)鏈接庫來集成一系列接口(函數(shù))

程序源代碼編譯后,它是由編譯器編譯并通過鏈接器鏈接到這些庫中的

動態(tài)鏈接庫和靜態(tài)鏈接庫的區(qū)別是鏈接器鏈接時靜態(tài)鏈接庫會直接編譯到程序中

但是動態(tài)鏈接庫不會被編譯,這些鏈接庫稱為依賴關(guān)系(動態(tài)庫和靜態(tài)庫)

程序的運行需要這些依賴關(guān)系。程序靜態(tài)鏈接后,程序本身已包含此依賴項

但動態(tài)鏈接的程序本身不包含此依賴項。這些依賴項需要執(zhí)行器將它們安裝到操作系統(tǒng)中(動態(tài)庫和運行時庫)

這些庫將在程序運行時動態(tài)加載

Linux動態(tài)庫的一般后綴為。所以

靜態(tài)庫的一般后綴是。A

因為靜態(tài)鏈接會直接將庫編譯到程序中,靜態(tài)編譯的程序比動態(tài)鏈接的程序大

這是因為靜態(tài)鏈接會將鏈接庫編譯到程序中,所以占用的空間會更大

因此,如果有靜態(tài)鏈接庫,靜態(tài)庫不易維護和更新實現(xiàn)中的bug,整個程序需要更新,因為靜態(tài)庫被編譯到程序中

而動態(tài)庫沒有這種情況,因為動態(tài)庫是在程序運行時動態(tài)加載的,所以我們只需要更新動態(tài)庫,而不需要更新所有依賴該庫的程序(軟件)

]另一方面,許多程序開發(fā)都會使用相同的方法鏈接庫,也就是說,許多程序(軟件)將具有相同的依賴關(guān)系

如果所有這些依賴關(guān)系都是靜態(tài)編譯的,它會造成存儲資源的過度消耗和資源的浪費

并且通過使用動態(tài)庫,這些程序(軟件)可以共享一個鏈接庫,而每個程序都沒有鏈接庫,這大大減少了存儲資源的消耗空間