程式的局部性原理是指程式在執行時呈現出局部性規律,即在一段時間內,整個程式的執行僅限於程式中的某一部分;相應地,執行所存取的儲存空間也侷限於某個記憶體區域;局部性原理又表現為「時間局部性」和「空間局部性」。
本文操作環境:Windows10系統、Dell G3電腦。
程式的局部性原理是什麼?
程式的局部性原理是指程式在執行時呈現出局部性規律,即在一段時間內,整個程式的執行僅限於程式中的某一部分。相應地,執行所存取的儲存空間也局限於某個記憶體區域。局部性原理又表現為:時間局部性和空間局部性。時間局部性是指如果程式中的某條指令一旦執行,則不久之後該指令可能再次被執行;如果某資料被訪問,則不久之後該資料可能會再次被存取。空間局部性是指一旦程式存取了某個儲存單元,則不久之後,其附近的儲存單元也將被存取。
程式的局部性原理:
另外,根據程式的局部性理論,Denning提出了工作集理論。所謂工作集是指進程運行時被頻繁存取的頁面集合。顯然我們知道只要使程式的工作集全部集中在記憶體中,就可以大幅減少進程的缺頁次數;否則會使進程在運行過程中頻繁出現缺頁中斷,從而出現頻繁的頁麵調入/調出現象,造成系統效能的下降,甚至出現「抖動」。
劃分工作集可以按定長時間或定長頁面兩種方法進行劃分。當顛簸現象發生時,表示系統的負載過大,通常採用處理器均衡調度。另一種是控制缺頁率,當缺頁率達到上限時,則增加記憶體分配量;當缺頁率達到下限時,就減少記憶體的分配量。
更多相關知識,請造訪常見問題欄位!
以上是程序的局部性原理是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!