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