国产精品2022不卡在线观看|青草国产福利视频免费观看|亚洲天堂日韩在线|日日摸夜夜添夜夜添97|亚洲伊人久久大香线蕉av|午夜性爽快免费视频播放

聯(lián)系我們

銷(xiāo)售直撥
     025-85550202;
     025-85550520;


master@csch.com.cn

技術(shù)咨詢(xún):
     025-85550520

duan@csch.com.cn

售后服務(wù)專(zhuān)線(xiàn):

     15251851604    

wu_yuyang@csch.com.cn

傳 真:025-85550303


深圳市中霍電子技術(shù)有限公司
地址:深圳市龍華新區龍華街道牛地埔村美滿(mǎn)圓小區
聯(lián)系人:顏安軍/副總
Mobile:18038070895
E-mail: szyanaj@csch.com.cn  
 

嵌入式存儲器系統的層次架構和管理

1 、存儲器系統的層次架構

計算機系統的存儲器被組織城一個(gè) 金字塔的層次結構。自上而下為:CPU 內部寄存器、芯片內部高速緩存(cache)、芯片外部高速緩存(SRAM、SDRAM、DRAM) 、主存儲器(FLASH、EEPROM)、外部存儲器(磁盤(pán)、光盤(pán)、CF 卡、SD 卡)和遠程二級存儲器(分布式文件系統 、WEB 服務(wù)器),6個(gè)層次的結構。上述設備從上而下,依次速度更慢、容量更大、訪(fǎng)問(wèn)頻率更小,造價(jià)更便宜。

2、高速緩存 (cache)

(1)工作原理 :主要利用了程序的 局部性特點(diǎn)。地址映象是指把主存地址空間映象到 cache 的地址空間。地址變換是指當程序或數據已經(jīng)裝入到 cache 后,在實(shí)際運行過(guò)程中,把主存地址如何編程 cache 空間的地址。

常用的地址映象和地址變換的方式有:

A、直接映象和變換:速度快,造價(jià)低,但有局限性,不能充分利用 cache 的好處。
B、組相聯(lián)地址映象和變換:速度稍慢但是命中率高。
C、全相聯(lián)地址映象和變換:可以任意映射。
D、常用的 cache 替換算法:輪轉法和隨機替換算法。

(2)高速緩存的分類(lèi):

A、統一 cache 和獨立的數據/指令 cache
B、寫(xiě)通 cache 和寫(xiě)回 cache
C、讀操作分配 cache 和寫(xiě)操作分配 cache

3 、存儲管理單元( MMU )

MMU 在 CPU 和物理內存之間進(jìn)行地址轉換,將地址從邏輯空間映射到物理空間,這個(gè)過(guò)程稱(chēng)為 內存映射。

MMU 主要完成下面的工作:

A. 虛擬存儲空間到物理空間的映射。
B. 存儲器訪(fǎng)問(wèn)權限的控制。
C. 設置虛擬存儲空間的緩沖特性。

嵌入式系統中常常采用 頁(yè)式存儲管理。為了管理這些頁(yè)引入了頁(yè)表的概念。頁(yè)表是位于內存中的表,它的每一行對應虛擬存儲空間的一個(gè)頁(yè),該行包含了該虛擬內存頁(yè)對應的物
理內存頁(yè)的地址、該頁(yè)的訪(fǎng)問(wèn)權限和該頁(yè)的緩沖特性等。從虛擬地址到物理地址的變換過(guò)程就是 查詢(xún)頁(yè)表的過(guò)程。由于頁(yè)表存儲在內存中的,整個(gè)查詢(xún)過(guò)程需要付出很大的代價(jià)。根據程序局部性的特點(diǎn),增加了一個(gè)小容量、高速度的存儲部件來(lái)存放當前訪(fǎng)問(wèn)需要的地址變換條目,這個(gè)存儲部件稱(chēng)為: 地址轉換后備緩沖器 (TLB)。

當 CPU 訪(fǎng)問(wèn)內存時(shí),首先在 TLB 中查找需要的地址變換條目,如果該條目不存在,CPU 再從內存中的頁(yè)表中查詢(xún),并把相應的結果添加到 TLB 中,更新它的內容。嵌入式系統中虛擬存儲空間到物理空間的映射以 內存塊為單位進(jìn)行。即虛擬存儲空間中一塊連續的存儲空間被映射到物理存儲空間中同樣大小的一塊連續存儲空間。在頁(yè)表和 TLB 中,每一個(gè)地址變換條目實(shí)際上記錄了一個(gè)虛擬存儲空間的內存塊的基地址與物理存儲空間相對應的一個(gè)內存塊的基地址之間的對應關(guān)系。在 MMU 中實(shí)現虛擬地址到物理地址的映射是通過(guò) 兩級頁(yè)表來(lái)實(shí)現的。禁止 MMU 時(shí),所有物理地址和虛擬地址相等,即使用 平板存儲模式。

4 、內存保護

操作系統通常利用 U MMU 來(lái)實(shí)現操作系統內核與應用程序之間的隔離,以及應用程序與應用程序之間的隔離。

內存保護包含兩個(gè)方面的內容:

A. 防止地址越界,每個(gè)應用程序都有自己獨立的地址空間。
B. 防止越權操作,每個(gè)應用程序都有自己的訪(fǎng)問(wèn)權限。

5 、實(shí)模式與保護模式

在嵌入式系統中,常見(jiàn)的存儲管理方案可以分為兩大類(lèi): 實(shí)模式和 保護模式。

(1)實(shí)模式:內存的平面使用模式。特點(diǎn)有:

A. 不劃分“系統空間”與“用戶(hù)空間”,無(wú)須進(jìn)行地址映射。
B. 操作系統與應用程序之間不再有物理的邊界。
C. 系統中的“任務(wù)”或“進(jìn)程”,實(shí)際上全是內核線(xiàn)程。

在實(shí)模式下, 內存布局可以分為5個(gè)段:

A. 代碼段:包含操作系統和應用程序的所有代碼。
B. 數據段:所有帶有初始值的全局變量。
C. BSS 段:所有未帶初始值的全局變量。
D. 堆空間:動(dòng)態(tài)分配的內存空間。
E. ??臻g:保存上下文以及函數調用時(shí)的局部變量和形參。

在實(shí)模式存儲管理方案下,主要的工作在于 堆空間的管理,即如何來(lái)管理空閑的堆空間、如何來(lái)分配內存、如何來(lái)回收內存等等。

(2)保護模式:處理器中必須有 U MMU 硬件并啟用。特點(diǎn)有:

A. 系統內核和用戶(hù)程序都有各自獨立的地址空間。
B. 每個(gè)應用程序只能訪(fǎng)問(wèn)自己的地址空間,不能去破壞操作系統和其他應用程序的代碼和數據。

6 、分區存儲管理

為了實(shí)現多道程序系統而采用的zui簡(jiǎn)單的內存管理?;舅悸罚喊颜麄€(gè)內存劃分為兩大區域,即系統區和用戶(hù)區,然后再把用戶(hù)區劃分為若干個(gè)分區,每個(gè)任務(wù)占有其中的一個(gè)分區。這樣,在內存當中就同時(shí)保留多個(gè)任務(wù),讓他們共享整個(gè)用戶(hù)區,從而實(shí)現多個(gè)任務(wù)的并發(fā)運行。

分區存儲管理又可以分為兩類(lèi): 固定分區和 可變分區。

(1)固定分區:各個(gè)用戶(hù)分區的個(gè)數、位置和大小一旦確定后,就固定不變,不能再修改。

優(yōu)點(diǎn):易于實(shí)現,系統開(kāi)銷(xiāo)較小。

缺點(diǎn):內存利用率不高,分區總數固定。

(2)可變分區:動(dòng)態(tài)創(chuàng )建,在裝入一個(gè)程序時(shí),系統將根據它的需求和內存空間的使用情況來(lái)決定是否分配。

優(yōu)點(diǎn):動(dòng)態(tài)變化,非常靈活。

缺點(diǎn):可能存在外碎片。

在實(shí)現可變存儲管理技術(shù)的時(shí)候,需要考慮三個(gè)方面的問(wèn)題:

A. 內存管理的數據結構
B. 內存的分配算法
C. 內存的回收算法

7 、地址映射

地址映射也叫地址重定位。邏輯地址和物理地址是完全不同的,不能用邏輯地址來(lái)直接訪(fǎng)問(wèn)內存單元。為了保證 CPU 在執行指令的時(shí)候,可以正確地訪(fǎng)問(wèn)內存單元,需要將用戶(hù)程序中的邏輯地址轉換為運行時(shí)由機器直接尋址的物理地址。這個(gè)過(guò)程稱(chēng)為: 地址映射。地址映射由存儲管理單元 MMU 來(lái)完成。

(1)地址映射主要有兩種方式:靜態(tài)地址映射和動(dòng)態(tài)地址映射。

A、靜態(tài)地址映射:當用戶(hù)程序被裝入內存時(shí),直接對指令代碼進(jìn)行修改,一次性地實(shí)現邏輯地址到物理地址的轉換。

B、動(dòng)態(tài)地址映射:當用戶(hù)程序被裝入內存時(shí),不對指令代碼做任何修改,而是在程序的運行過(guò)程中,當它需要訪(fǎng)問(wèn)內存單元的時(shí)候,再來(lái)進(jìn)行地址轉換。在具體實(shí)現時(shí),這項轉換工作一般是由硬件的地址映射機制來(lái)完成的。通常設置一個(gè) 基地址寄存器 ,或者叫重定位寄存器。當一個(gè)任務(wù)被調度運行時(shí),就把它所在分區的起始地址裝入到整個(gè)寄存器中。然后 ,在程序運行的過(guò)程中,當需要訪(fǎng)問(wèn)某個(gè)內存單元時(shí),硬件就會(huì )自動(dòng)地將其中的邏輯地址加上基地址寄存器中的內容,從而得到實(shí)際的物理地址,并且按照這個(gè)物理地址區執行。這個(gè)基地址寄存器位于 MMU 的內部,整個(gè)地址映射過(guò)程是自動(dòng)運行的。從理論上說(shuō),每訪(fǎng)問(wèn)一次內存都要進(jìn)行一次地址映射。

8 、頁(yè)式存儲管理(重點(diǎn))

(1)基本思路:把物理內存劃分為許多固定大小的內存塊,稱(chēng)為 物理頁(yè)面;把邏輯地址空間也劃分為大小相同的塊,稱(chēng)為 邏輯頁(yè)面。當一個(gè)用戶(hù)程序被裝入內存時(shí),不是以整個(gè)程序為單位,把它存放在一整塊連續的區域,而是以頁(yè)面為單位來(lái)進(jìn)行分配的。對于一個(gè)大小為 N 的頁(yè)面程序,需要有 N 個(gè)空閑的物理頁(yè)面來(lái)把它裝載。這些物理頁(yè)面不一定是要連續的。在頁(yè)式存儲管理中需要解決三個(gè)問(wèn)題:數據結構、內存分配與回收、地址映射。

數據結構有兩個(gè):頁(yè)表和物理頁(yè)面表。

A. 頁(yè)表:給出了任務(wù)邏輯頁(yè)面號和內存中物理頁(yè)面號之間的對應關(guān)系。
B. 物理頁(yè)面表:描述內存空間中,各個(gè)物理頁(yè)面的使用情況。

內存的分配過(guò)程:

A. 對于一個(gè)新來(lái)的任務(wù),計算它所需要的頁(yè)面數 N,然后查看位示圖,看是否還有 N 個(gè)空閑的物理頁(yè)面。
B. 如果有足夠的空閑物理頁(yè)面,就去申請一個(gè)頁(yè)表,其長(cháng)度為 N,并把頁(yè)表的起始地址填入到該任務(wù)的控制塊中。
C. 分配 N 個(gè)空閑的物理頁(yè)面,把他們的變換填到頁(yè)表中,建立邏輯頁(yè)面與物理頁(yè)面直接的對應關(guān)系。
D. 修改位示圖,對剛剛被占用的那些物理頁(yè)面進(jìn)行標記。

(2)地址映射的基本思路:

A. 邏輯地址分析:對邏輯地址,找到它所在的邏輯頁(yè)面,以及它在頁(yè)面內的偏移地址。
B. 頁(yè)表查找:根據邏輯頁(yè)面號,從頁(yè)表中找出它對應的物理頁(yè)面號。
C. 物理地址合成:根據物理頁(yè)面號和頁(yè)內偏移地址,zui終確定物理地址。
(3)邏輯地址分析:

頁(yè)面的大小都是2的整數次冪。對于給定的一個(gè)邏輯地址,可以直接把它的高位部分作為邏輯頁(yè)面號 ,把它的低位部分作為頁(yè)內偏移地址。例如,假設頁(yè)面的大小是4KB,即2的12次冪,邏輯地址為32為,那么在一個(gè)邏輯地址當中,zui低12位為頁(yè)內偏移地址,而剩下的20位就是邏輯頁(yè)面號。

計算方法:
邏輯頁(yè)面號=邏輯地址/頁(yè)面大小
頁(yè)內偏移量=邏輯地址%頁(yè)面大小

頁(yè)表查找:
頁(yè)表作為操作系統的一個(gè)數據結構,通常保存在內核的地址空間中。頁(yè)表基地址寄存器用來(lái)指向頁(yè)表的起始地址;頁(yè)表長(cháng)度寄存器用來(lái)指示頁(yè)表的大小,即對于當前任務(wù),它總共包含有多少個(gè)頁(yè)面。

物理地址合成:
假設物理頁(yè)面號為 f,頁(yè)內偏移地址為 offset,每個(gè)頁(yè)面大小為2n ,那么相應的物理地址為: f×2n+offset。

9 、虛擬存儲管理

(1)程序局部性原理: 時(shí)間局限性和 空間局限性。
(2)虛擬頁(yè)式存儲管理:在頁(yè)式管理的基礎上,增加了 請求調頁(yè)和 頁(yè)面置換的功能。

(3)基本思路 :當一個(gè)用戶(hù)程序需要調入內存去運行時(shí),不是將這個(gè)程序的所有頁(yè)面都裝入內存,而是只裝載部分的頁(yè)面,就可以啟動(dòng)這個(gè)程序運行。在運行過(guò)程中,如果發(fā)現要執行的指令或者訪(fǎng)問(wèn)的數據不在內存當中,就向系統發(fā)出缺頁(yè)中斷請求,然后系統在處理這個(gè)中斷請求時(shí),就會(huì )將保存在外存中的相應頁(yè)面調入內存,從而使該程序能繼續運行。在虛擬頁(yè)式存儲管理中,頁(yè)表包含:邏輯頁(yè)面號、物理頁(yè)面號、駐留位、保護位、修改位和訪(fǎng)問(wèn)位。

(4)常用的頁(yè)面置換算法:

A. zui 優(yōu)頁(yè)面置換算法:理想化算法。
B. zui近zui久未使用算法:鏈表法和棧方法。尋找長(cháng)時(shí)間沒(méi)有被訪(fǎng)問(wèn)的頁(yè)面。
C. zui不常用算法:每個(gè)頁(yè)面設置一個(gè)訪(fǎng)問(wèn)計數器。
D. 先進(jìn)先出算法:性能比較差。
E. 時(shí)鐘頁(yè)面置換算法:把頁(yè)面組成環(huán)形鏈表,類(lèi)似時(shí)鐘面。

一般來(lái)說(shuō),當一個(gè)任務(wù)剛剛啟動(dòng)的時(shí)候,它會(huì )不斷去訪(fǎng)問(wèn)一些新的頁(yè)面,然后逐步建立一個(gè)比較穩定的工作集。 工作集是指當前任務(wù)正在使用的邏輯頁(yè)面的集合。如果分配給一個(gè)任務(wù)的物理頁(yè)面數太少,不能包含整個(gè)的工作集,任務(wù)將會(huì )造成很多缺頁(yè)中斷,需要頻繁地進(jìn)行頁(yè)面置換,這種現象稱(chēng)為“ 抖動(dòng)”。 

Copyright@ 2003-2025  南京信瑞譜傳感技術(shù)有限公司版權所有     

熱門(mén)導航電壓傳感器  霍爾電流傳感器  互感器  高精度電流傳感器  直流漏電流傳感器  直流電流變送器  霍爾傳感器工作原理 傳感器資料下載

           

        在線(xiàn)購買(mǎi)-直達淘寶店

     具體購買(mǎi)產(chǎn)品請聯(lián)系淘寶客服

(淘寶店拍買(mǎi)請聯(lián)系淘寶在線(xiàn)服務(wù),告知型號或在線(xiàn)經(jīng)理的姓名即可)

国产精品2022不卡在线观看|青草国产福利视频免费观看|亚洲天堂日韩在线|日日摸夜夜添夜夜添97|亚洲伊人久久大香线蕉av|午夜性爽快免费视频播放