在我們的生活中,內(nèi)存是十分的重要的,人的大腦是有內(nèi)存的,手機(jī)也是內(nèi)存的,如果說內(nèi)存過滿的話就沒有辦法運(yùn)行了。像我們?nèi)说拇竽X如果說記的事情太多的話就會(huì)出現(xiàn)罷工的狀態(tài)了,就會(huì)不想要記那多的事情,而我們的手機(jī)如果內(nèi)存滿的話手機(jī)就會(huì)特別的卡,這個(gè)時(shí)候你也就需要去清理手機(jī)的內(nèi)存了。那么嵌入式系統(tǒng)中也是一樣的,但是嵌入式系統(tǒng)的內(nèi)存是可以進(jìn)行壓縮的,對(duì)于嵌入式系統(tǒng)中內(nèi)存壓縮技術(shù)你了解多少呢?
內(nèi)存壓縮技術(shù)的主要思想是將數(shù)據(jù)按照一定的算法壓縮后存入壓縮內(nèi)存中,系統(tǒng)從壓縮內(nèi)存中找到壓縮過的數(shù)據(jù),將其解壓后即可以供系統(tǒng)使用。這樣既可以增加實(shí)際可用的內(nèi)存空間,又可以減少頁(yè)面置換所帶來的開銷,從而以較小的成本提高系統(tǒng)的整體性能。
內(nèi)存壓縮機(jī)制是在系統(tǒng)的存儲(chǔ)層次中邏輯地加入一層——壓縮內(nèi)存層。系統(tǒng)在該層中以壓縮的格式保存物理頁(yè)面,當(dāng)頁(yè)面再次被系統(tǒng)引用時(shí),解壓該壓縮頁(yè)后,即可使用。
我們將管理這一壓縮內(nèi)存層的相關(guān)硬件及軟件的集合統(tǒng)稱為內(nèi)存壓縮系統(tǒng)。內(nèi)存壓縮系統(tǒng)對(duì)于CPU、I/O設(shè)備、設(shè)備驅(qū)動(dòng)以及應(yīng)用軟件來說是透明的,但是操作系統(tǒng)必須具有管理內(nèi)存大小變化以及壓縮比率變化的功能。
對(duì)于大多數(shù)的操作系統(tǒng)而言,要實(shí)現(xiàn)內(nèi)存壓縮,大部分體系結(jié)構(gòu)都不需要改動(dòng)。在標(biāo)準(zhǔn)的操作系統(tǒng)中,內(nèi)存都是通過固定數(shù)目的物理頁(yè)框(page
frame)來描述的,由操作系統(tǒng)的VMM來管理。要支持內(nèi)存壓縮,OS要管理的實(shí)際內(nèi)存大小和頁(yè)框數(shù)目是基于內(nèi)存的壓縮比率來確定的。
這里的實(shí)現(xiàn)內(nèi)存是指操作系統(tǒng)可的內(nèi)存大小,它與物理內(nèi)存的關(guān)系如下:假設(shè)PM是物理內(nèi)存,RM(t)是系統(tǒng)在t時(shí)刻的實(shí)際內(nèi)存,而CR(t)是壓縮比率,在給定時(shí)刻t可支持的實(shí)際內(nèi)存為RM(t)=CR1(t)×PM。然而,由于應(yīng)用程序的數(shù)據(jù)壓縮率是不依賴于OS而動(dòng)態(tài)變化的,未壓縮的數(shù)據(jù)可能會(huì)耗盡物理內(nèi)存,因此當(dāng)物理內(nèi)存接近耗盡時(shí),操作系統(tǒng)必須采取行動(dòng)來解決這個(gè)問題。
嵌入式系統(tǒng)中內(nèi)存壓縮技術(shù)達(dá)內(nèi)科技的小編就介紹到這里了,如果說你想要學(xué)習(xí)嵌入式技術(shù)的話,那么達(dá)內(nèi)科技?xì)g迎你來我們公司的嵌入式培訓(xùn)班進(jìn)行實(shí)地考察,也可以點(diǎn)擊我們文章下面的獲取試聽資格按鈕來獲取我們的嵌入式課程免費(fèi)試聽資格,在試聽中可以更加深入的了解我們達(dá)內(nèi)科技。