*44.程序的链接方式
將程序的鏈接方式之前,我們先理清楚程序?yàn)槭裁葱枰溄?#xff1f;
首先先講一下在多道程序環(huán)境下,程序是并發(fā)運(yùn)行的,程序的運(yùn)行會(huì)創(chuàng)建一個(gè)進(jìn)程,創(chuàng)建進(jìn)程的第一件事就是把程序的數(shù)據(jù)和代碼裝入內(nèi)存。
那么怎么把代碼和數(shù)據(jù)裝入內(nèi)存呢?
總的來(lái)說(shuō),這兩個(gè)圖總的講述了程序和數(shù)據(jù)裝入內(nèi)存的流程。但是并不是所有順序都是這樣子的(靜態(tài)鏈接,先鏈接再裝入)。
很容易看出來(lái),鏈接就是把編譯好的目標(biāo)模塊和庫(kù)(ddl)關(guān)聯(lián)起來(lái)。
接下來(lái)講講鏈接的方式
靜態(tài)鏈接
裝入時(shí)動(dòng)態(tài)鏈接。其優(yōu)點(diǎn)是便于修改和更新,便于實(shí)現(xiàn)對(duì)目標(biāo)模塊的共享。
運(yùn)行時(shí)動(dòng)態(tài)鏈接。運(yùn)行時(shí)發(fā)現(xiàn)沒(méi)裝入,那就裝入再鏈接。不僅能加快程序的裝入過(guò)程,而且可以節(jié)省大量的內(nèi)存空間。
總結(jié)
以上是生活随笔為你收集整理的*44.程序的链接方式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 43.什么是TLB
- 下一篇: *45.程序的装入方式