读《程序是怎样跑起来的》第5章
?
第五章主要講的是內(nèi)存和磁盤的關(guān)系,內(nèi)存和磁盤被歸類為存儲部件,內(nèi)存主要指主內(nèi)存,主要負責(zé)CPU中運行的程序指令和數(shù)據(jù)內(nèi)存,磁盤主要指硬盤,磁盤中存儲的程序,必須要加載到內(nèi)存后才能運行,在磁盤中保存的原始程序是無法直接運行的,原因是因為負責(zé)解析和運行程序內(nèi)容的CPU需要通過內(nèi)部程序計數(shù)器來指定內(nèi)存地址,然后才能讀出程序,即使CPU可以直接讀出并運行磁盤中保存的程序,由于磁盤讀取速度慢,程序的運行速度還是會降低。
?
內(nèi)存和磁盤的關(guān)系一:磁盤緩存加快了磁盤的訪問速度,磁盤緩存指的是把從磁盤中讀出的數(shù)據(jù)結(jié)構(gòu)存儲到內(nèi)存空間中的方式,使用磁盤緩存可以大大改善磁盤數(shù)據(jù)的訪問速度。內(nèi)存和磁盤的關(guān)系二:虛擬內(nèi)存把磁盤作為部分內(nèi)存來使用,虛擬內(nèi)存是把磁盤的一部分作為假想的內(nèi)存來使用,這與磁盤緩存是假想的磁盤(實際上是內(nèi)存)相對,虛擬內(nèi)存是假想的內(nèi)存(實際是磁盤),虛擬內(nèi)存的方法有兩種分頁式和分段式兩種,分頁式是指在不考慮程序構(gòu)造的情況下,把運行的程序按照一定大小的頁進行分割,并以頁為單位在內(nèi)存和磁盤中進行置換。
?
但是為了從根本上解決內(nèi)存不足的問題,需要增加內(nèi)存的容量或把運行的應(yīng)用文件變小,把應(yīng)用文件變小的編程方法有兩種:1)通過DLL文件實現(xiàn)函數(shù)共有。2)通過stacall來減小程序文件的大小。
轉(zhuǎn)載于:https://www.cnblogs.com/2235118526xn/p/10424281.html
總結(jié)
以上是生活随笔為你收集整理的读《程序是怎样跑起来的》第5章的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。