亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

頁(yè)表數(shù)據(jù)管理的制作方法

文檔序號(hào):9438898閱讀:695來(lái)源:國(guó)知局
頁(yè)表數(shù)據(jù)管理的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理系統(tǒng)領(lǐng)域。更具體而言,本發(fā)明涉及此類(lèi)數(shù)據(jù)處理系統(tǒng)內(nèi)的頁(yè)表數(shù)據(jù)的管理。
【背景技術(shù)】
[0002]提供具有用于管理存儲(chǔ)器的區(qū)域的頁(yè)表數(shù)據(jù)的數(shù)據(jù)處理系統(tǒng)為已知的。例如,此頁(yè)表數(shù)據(jù)可指定虛擬地址與物理地址之間的映射、對(duì)數(shù)據(jù)頁(yè)的存取許可以及數(shù)據(jù)頁(yè)的其他屬性(例如,是否可緩存數(shù)據(jù)頁(yè))。已知,在頁(yè)表數(shù)據(jù)內(nèi)包括已使用位(dirty bit)信息以指示自從數(shù)據(jù)頁(yè)例如從諸如硬盤(pán)驅(qū)動(dòng)之類(lèi)的非易失性存儲(chǔ)設(shè)備被復(fù)制到工作存儲(chǔ)器中以來(lái),該數(shù)據(jù)頁(yè)已經(jīng)被修改。已使用位信息是有用的,因?yàn)楫?dāng)數(shù)據(jù)頁(yè)被從工作存儲(chǔ)器移除且返回至非易失性存儲(chǔ)設(shè)備時(shí),如果該頁(yè)的已使用位指示它尚未經(jīng)修改,則不需要將數(shù)據(jù)頁(yè)復(fù)制回非易失性存儲(chǔ)設(shè)備。此外,當(dāng)希望頁(yè)入(自非易失性存儲(chǔ)設(shè)備復(fù)制到工作存儲(chǔ)器)新數(shù)據(jù)頁(yè)時(shí),此已使用位信息可用來(lái)識(shí)別待被頁(yè)出(自工作存儲(chǔ)器復(fù)制到非易失性存儲(chǔ)設(shè)備)的可能候選者。
[0003]管理此已使用位信息的一種方式是對(duì)存儲(chǔ)器管理單元硬件提供在對(duì)存儲(chǔ)器的頁(yè)內(nèi)的存儲(chǔ)器地址進(jìn)行第一次寫(xiě)入存取時(shí)更新與存儲(chǔ)器的頁(yè)相關(guān)聯(lián)的已使用位信息的能力。對(duì)頁(yè)表數(shù)據(jù)內(nèi)的已使用位信息的基于硬件的更新具有速度方面的優(yōu)勢(shì),但是它增加了硬件的復(fù)雜性。
[0004]用于存儲(chǔ)器地址空間內(nèi)的存儲(chǔ)器的頁(yè)的已使用狀態(tài)的管理的另一方法是使用基于軟件的管理。在此技術(shù)中,將被頁(yè)入的每一新頁(yè)標(biāo)記為只讀的。若試圖對(duì)此頁(yè)寫(xiě)入,則產(chǎn)生軟件異常。軟件異常處置程序然后可決定是否準(zhǔn)許對(duì)該頁(yè)進(jìn)行寫(xiě)入。若允許寫(xiě)入,則將頁(yè)的狀態(tài)改變?yōu)闇?zhǔn)許寫(xiě)入,且將頁(yè)標(biāo)記為已使用的。若不允許對(duì)頁(yè)寫(xiě)入,則以正常方式進(jìn)一步處理寫(xiě)入許可失敗異常。此基于軟件的管理技術(shù)用來(lái)捕獲對(duì)數(shù)據(jù)頁(yè)的第一次寫(xiě)入,且將該頁(yè)標(biāo)記為已使用的。此后,該頁(yè)被標(biāo)記為準(zhǔn)許寫(xiě)入而不產(chǎn)生異常,且因此不會(huì)放慢后來(lái)的寫(xiě)入操作。此方法的問(wèn)題在于產(chǎn)生觸發(fā)異常的寫(xiě)入的處理電路將正常情況下需要具有執(zhí)行軟件異常處置需求的能力。不具有自身處置異常處置代碼的執(zhí)行的能力的處理電路可觸發(fā)到不同處理電路的中斷,該不同處理電路隨后將代表該處理電路執(zhí)行異常處置。然而,此方法是較慢的。
[0005]現(xiàn)有技術(shù)的另一問(wèn)題在于不可能在共享相同頁(yè)表數(shù)據(jù)的系統(tǒng)(例如,共享虛擬存儲(chǔ)器系統(tǒng))內(nèi)將對(duì)已使用狀態(tài)的基于硬件的管理與對(duì)已使用狀態(tài)的基于軟件的管理混合。基于硬件的方法依賴(lài)于頁(yè)自一開(kāi)始即適當(dāng)?shù)貥?biāo)記為允許寫(xiě)入并且在對(duì)該頁(yè)的第一次寫(xiě)入之后即進(jìn)行對(duì)已使用狀態(tài)進(jìn)行基于硬件的更新。相反,基于軟件的方法依賴(lài)于頁(yè)在其最初經(jīng)置放于工作存儲(chǔ)器中時(shí)標(biāo)記為不準(zhǔn)許寫(xiě)入,并且此狀態(tài)用來(lái)觸發(fā)異常及將頁(yè)標(biāo)記為準(zhǔn)許寫(xiě)入的改變且在對(duì)該頁(yè)的第一次存取之后即設(shè)定已使用狀態(tài)。對(duì)頁(yè)表數(shù)據(jù)的使用因此在此兩種方法之間是不兼容的。

【發(fā)明內(nèi)容】

[0006]自一個(gè)方面來(lái)看,本發(fā)明提供一種用于處理數(shù)據(jù)的裝置,該裝置包括:
[0007]處理電路,被配置為管理頁(yè)表數(shù)據(jù),該頁(yè)表數(shù)據(jù)指定與存儲(chǔ)器地址空間內(nèi)的存儲(chǔ)器的頁(yè)相關(guān)聯(lián)的存取管理參數(shù);其中
[0008]對(duì)于存儲(chǔ)器的每一頁(yè),該存取管理參數(shù)包括:
[0009]寫(xiě)入許可標(biāo)志,指示是否準(zhǔn)許對(duì)該頁(yè)的寫(xiě)入存取;以及
[0010]已使用位修飾符標(biāo)志,若該寫(xiě)入許可標(biāo)志指示不準(zhǔn)許對(duì)該頁(yè)寫(xiě)入存取,則該已使用位修飾符標(biāo)志指示是否準(zhǔn)許寫(xiě)入許可標(biāo)志的動(dòng)作被推翻以準(zhǔn)許對(duì)該頁(yè)的寫(xiě)入存取且改變寫(xiě)入許可標(biāo)志以指示準(zhǔn)許對(duì)該頁(yè)的寫(xiě)入存取。
[0011]本技術(shù)認(rèn)識(shí)到需要能夠支持使用共享頁(yè)表數(shù)據(jù)內(nèi)的已使用狀態(tài)的基于軟件的管理及共享頁(yè)表數(shù)據(jù)內(nèi)的已使用狀態(tài)的基于硬件的管理兩者的異構(gòu)系統(tǒng)。為了同時(shí)支持這兩種方式,本技術(shù)增加了已使用位修飾符標(biāo)志,該已使用位修飾符標(biāo)志用來(lái)指示:如果寫(xiě)入許可標(biāo)志自身指示不準(zhǔn)許寫(xiě)入存取,則寫(xiě)入許可標(biāo)志的動(dòng)作可被推翻從而準(zhǔn)許寫(xiě)入存取,并且然后改變寫(xiě)入許可標(biāo)志以指示準(zhǔn)許該寫(xiě)入存取。已使用位修飾符標(biāo)志因此驗(yàn)證寫(xiě)入許可標(biāo)志的資格并指示寫(xiě)入許可是否真的不被準(zhǔn)許或者它是否不被準(zhǔn)許以用于捕獲對(duì)頁(yè)的第一次寫(xiě)入存取,從而準(zhǔn)許對(duì)頁(yè)的已使用狀態(tài)的基于軟件的管理的目的。
[0012]正常執(zhí)行頁(yè)的已使用狀態(tài)的基于硬件的管理的存儲(chǔ)器管理單元(即,硬件更新存儲(chǔ)器管理電路)需要修改來(lái)利用已使用位修飾符標(biāo)志。更具體而言,這樣的硬件更新存儲(chǔ)器管理電路被形成為:通過(guò)讀取與寫(xiě)入許可標(biāo)志相關(guān)聯(lián)的已使用位修飾符標(biāo)志來(lái)對(duì)頁(yè)(其中,寫(xiě)入許可標(biāo)志指示不準(zhǔn)許寫(xiě)入許可)的寫(xiě)入存取的生成進(jìn)行回應(yīng),并且如果已使用位修飾符標(biāo)志指示寫(xiě)入許可標(biāo)志的動(dòng)作可被推翻,則作為硬件控制的操作(即,不需要任何軟件執(zhí)行)來(lái)準(zhǔn)許執(zhí)行寫(xiě)入存取且改變寫(xiě)入許可標(biāo)志以指示寫(xiě)入存取被準(zhǔn)許。
[0013]為保護(hù)頁(yè)表數(shù)據(jù)的完整性,希望硬件更新存儲(chǔ)器管理單元被配置為作為原子操作來(lái)執(zhí)行包含已使用位修飾符及寫(xiě)入許可標(biāo)志的頁(yè)表數(shù)據(jù)的讀取及具有改變的寫(xiě)入許可標(biāo)志的頁(yè)表數(shù)據(jù)的寫(xiě)入(即,兩個(gè)動(dòng)作是一起完成的,從而使得任何代理不能夠在讀取和寫(xiě)入動(dòng)作之間修改頁(yè)表數(shù)據(jù))。此原子操作可例如通過(guò)使用讀-修改-寫(xiě)操作來(lái)更新包括寫(xiě)入許可標(biāo)志及已使用位修飾符標(biāo)志之頁(yè)表數(shù)據(jù)來(lái)施行。
[0014]將認(rèn)識(shí)到,與硬件更新存儲(chǔ)器管理電路相關(guān)聯(lián)的處理電路可采取各種不同形式。這些形式的處理電路的示例包括通用處理器,該通用處理器被配置為在軟件控制下執(zhí)行處理操作,且被配置為使用硬件更新管理電路來(lái)執(zhí)行硬件控制數(shù)據(jù)管理。其他示例包括圖形處理單元及/或直接存儲(chǔ)器訪問(wèn)單元,該圖形處理單元及/或該直接存儲(chǔ)器訪問(wèn)單元分別被配置為執(zhí)行硬件控制頁(yè)表數(shù)據(jù)管理。
[0015]其他實(shí)施例可代替硬件更新存儲(chǔ)器管理電路或與硬件更新存儲(chǔ)器管理電路組合地利用軟件更新存儲(chǔ)器管理電路的一個(gè)或多個(gè)實(shí)例。此軟件更新存儲(chǔ)器管理電路通過(guò)觸發(fā)軟件管理的異常處理來(lái)響應(yīng)對(duì)頁(yè)的寫(xiě)入存取,該頁(yè)具有指示不準(zhǔn)許寫(xiě)入存取的寫(xiě)入許可標(biāo)志,其中軟件管理的異常處理包括寫(xiě)入許可標(biāo)志的改變。此軟件管理的異常處理可讀取或可不讀取已使用位修飾符標(biāo)志,以便決定是否應(yīng)改變寫(xiě)入許可標(biāo)志,因?yàn)檐浖稍L問(wèn)能夠指示是否應(yīng)改變寫(xiě)入許可標(biāo)志的其他信息。然而,對(duì)已使用位修飾符標(biāo)志的讀取將是軟件更新管理電路決定是否應(yīng)改變寫(xiě)入許可標(biāo)志及是否準(zhǔn)許寫(xiě)入的快速方式。軟件更新存儲(chǔ)器管理電路可至少部分包括執(zhí)行軟件的通用處理器,該軟件管理關(guān)于修改寫(xiě)入許可標(biāo)志及由此捕獲頁(yè)的已使用狀態(tài)的頁(yè)表數(shù)據(jù)的更新。
[0016]在一些實(shí)施例中,管理頁(yè)表數(shù)據(jù)的處理電路可執(zhí)行操作系統(tǒng)程序,該操作系統(tǒng)程序包括根據(jù)以上所述技術(shù)管理寫(xiě)入許可標(biāo)志及已使用位修飾符標(biāo)志的能力。此處理電路可包括通用處理器,該通用處理器被配置為在軟件控制下執(zhí)行處理操作,其中這些處理操作包括軟件控制的頁(yè)表數(shù)據(jù)管理。
[0017]如先前所提及,本技術(shù)可用于包括硬件更新存儲(chǔ)器管理電路的一個(gè)或多個(gè)實(shí)例、軟件更新存儲(chǔ)器管理電路的一個(gè)或多個(gè)實(shí)例或這些實(shí)例的混合實(shí)例的系統(tǒng)內(nèi)。即使系統(tǒng)并非異構(gòu)的(即,系統(tǒng)包含硬件更新存儲(chǔ)器管理電路及軟件更新存儲(chǔ)器管理電路的混合),利用本技術(shù)亦存在優(yōu)點(diǎn),因?yàn)榫哂袉蝹€(gè)電路塊設(shè)計(jì)為適當(dāng)?shù)?,該電路塊可布署于各種不同的系統(tǒng)單芯片集成電路中,其中該電路塊可與希望與其共享虛擬存儲(chǔ)器地址空間且因此共享頁(yè)表數(shù)據(jù)的其
當(dāng)前第1頁(yè)1 2 3 4 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1