欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

支持用于預(yù)啟動和安全模式操作的安全可讀存儲區(qū)域的制作方法

文檔序號:6361945閱讀:179來源:國知局
專利名稱:支持用于預(yù)啟動和安全模式操作的安全可讀存儲區(qū)域的制作方法
支持用于預(yù)啟動和安全模式操作的安全可讀存儲區(qū)域
背景技術(shù)
隨著計算機(jī)平臺日益復(fù)雜,包括基本輸入/輸出系統(tǒng)(BIOS)和BIOS與操作系統(tǒng)(OS)的通信例程的軟件正成為攻擊的目標(biāo)。這些攻擊能將高級配置與電源接口(ACPI)和統(tǒng)一可擴(kuò)展固件接口(UEFI)運行時服務(wù)定為目標(biāo)。除了這些攻擊,BIOS系統(tǒng)管理模式(SMM)區(qū)域持續(xù)增長,但是BIOS所需的特征和隨后的存儲器占用(memory footprint)持續(xù)增長。在許多情況下,該占用以比頂級存儲段(TSEG)-僅在SMM中可見且可訪問的保留存儲區(qū)域更快的速度增長。當(dāng)前保護(hù)存儲器不受攻擊的唯一辦法是保持在SMM中共享存儲器,并且OS執(zhí)行系統(tǒng)管理中斷(SMI)以使得能夠進(jìn)入SMM。BIOS將看見SMI源并在其內(nèi)部受保護(hù)存儲器(被稱為系統(tǒng)管理隨機(jī)存取存儲器(SMRAM)或TSEG)上執(zhí)行一些動作。這具有若干體系結(jié)構(gòu)方案。首先,執(zhí)行SM具有開銷。在當(dāng)代平臺上,OS供應(yīng)商為處理單個SMI設(shè)置190微秒(μ s)的總時間預(yù)算。許多BIOS實施不能滿足該要求。因而,不可能在SMRAM中推送更多的特征和保護(hù)存儲器。第二,不是所有存儲在SMRAM內(nèi)的信息都需要保護(hù)不被讀取。有些臨界區(qū)需要保護(hù)不被讀取和寫入(RW),但是許多信息僅需要保護(hù)不被寫入或免受高速緩存攻擊。因此,當(dāng)前定義的TSEG被不適當(dāng)?shù)亟M織并且在體系結(jié)構(gòu)效率方面不可擴(kuò)展。另一保護(hù)方法是具有只讀、寫保護(hù)系統(tǒng)板閃速存儲器,但是該資源的大小受限,并且僅能通過重置或經(jīng)由基于SMM的代理保護(hù)進(jìn)行更新。


圖1為根據(jù)本發(fā)明的一個實施例的系統(tǒng)地址映射。圖2為根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。圖3為根據(jù)本發(fā)明的實施例的方法的流程圖。圖4為根據(jù)本發(fā)明的另一實施例的方法的流程圖。圖5為根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。圖6為根據(jù)本發(fā)明的另一實施例的系統(tǒng)的框圖。
具體實施例方式實施例使得系統(tǒng)軟件(更具體地為BIOS)能夠劃分可見主存儲器的一部分并將其標(biāo)記為只讀(R0)。然后保護(hù)該存儲區(qū)域不被寫入或高速緩存,除非通過體系結(jié)構(gòu)測量的代理(例如,安全環(huán)境下執(zhí)行的BIOS)。雖然本發(fā)明的范圍并不局限于此,但是處理器的邏輯、存儲控制器和/或芯片組可以用于提供存儲器保護(hù)??捎蒓S執(zhí)行并讀取受保護(hù)的存儲器,而不考慮受保護(hù)的存儲器已經(jīng)被修改。通過避免SMM開銷或者由RO閃存設(shè)備的基于只讀存儲器(ROM)的執(zhí)行,實施例能夠保護(hù)各種信息(例如,OS通信路徑的臨界BIOS部件),而不影響平臺性能。一些實施例被描述用于BIOS和OS的通信,但是不損失通用性地,可以將其它實施應(yīng)用于虛擬機(jī)監(jiān)視器(VMM)和虛擬機(jī)或者OS和驅(qū)動器的通信。另外,可以將該能力應(yīng)用于保護(hù)其它存儲器映射資源,其中考慮了完整性而未考慮機(jī)密性(即,能夠讀取任意代碼,但是僅有可信代理能夠修改代碼)。應(yīng)該注意的是,雖然在本文中以BIOS環(huán)境描述了特定實施例,但是除了 BIOS外在系統(tǒng)固件中還可以存在更普遍的實施。因此,實施例提供一部分系統(tǒng)存儲器作為只讀存儲器。在過去傳統(tǒng)的系統(tǒng)中,所謂的PC/AT系統(tǒng)具有位于地址映射的OxCOOOOp-OxFFFFF處的“ROM”,通過允許這些存儲單元由例如動態(tài)隨機(jī)存取存儲器(DRAM)的系統(tǒng)存儲器支持和使用芯片組內(nèi)或非內(nèi)核內(nèi)的存儲器屬性寄存器(MAR)或可編程屬性映射(PAM)來保護(hù)這些區(qū)域,PC/AT系統(tǒng)已經(jīng)仿真了芯片組支持。該硬件幫助用于PC/AT舊版本的“運行時BIOS”。隨著SMB10S、ACPI和統(tǒng)一 EFI (UEFI)運行時間的出現(xiàn),會存在來自平臺且享有芯片組/平臺中硬件資源保護(hù)的多列(swath)存儲內(nèi)容。對于這些更現(xiàn)代的固件數(shù)據(jù)表和代碼,可將例如原始設(shè)備制造商(OEM)SMM的安全執(zhí)行模式用作這些資源的基準(zhǔn)監(jiān)視器/防護(hù)裝置。因而可以將實施例用于提供健壯且安全的平臺體驗。另外,對于沒有SMM或者具有SMM安全性考慮的系統(tǒng),該能力在制造商系統(tǒng)板固件初始運行時在平臺重置時是可獲得的,其在運行任何第三方內(nèi)容(例如,可選ROM、OS加載程序、OS運行時間)之前被配置且鎖定。這是可應(yīng)用的,因為UEFI運行時間、SMB10S、ACPI的起源應(yīng)該是系統(tǒng)板制造商,且在運輸給系統(tǒng)前在工廠內(nèi)提供。SMM軟件邏輯的另一實施例可以是在CPU封裝內(nèi)的集成服務(wù)處理器。例如,芯片上的系統(tǒng)可以具有與主CPU內(nèi)核集成的加密協(xié)同處理器。這種輔助處理單元典型地被稱為“非內(nèi)核”的部分,以將其與主計算內(nèi)核區(qū)分開來。該協(xié)同處理器能產(chǎn)生與基于BIOS的SMM相同的流程。現(xiàn)在參照圖1,其示出了根據(jù)本發(fā)明的一個實施例的包括只讀段區(qū)域(RSEG)的系統(tǒng)地址映射。在不同的實施例中,RSEG可以是高端存儲器和低端存儲器的多個區(qū)域。如圖1所示,提供了系統(tǒng)地址映射100。通常,映射100提供系統(tǒng)內(nèi)的所有可用存儲器的地址空間。在各個實施例中,系統(tǒng)地址映射可存在于芯片組、存儲控制器、處理器(例如,非內(nèi)核邏輯)中或其它位置處。通常,存儲映射可以包括提供存儲器的軟件視點的地址空間110。從圖1的實施例可看出,地址空間能被分割為兼容性區(qū)域112、低端存儲區(qū)域114和高端存儲區(qū)域116。在圖1的例子中,兼容性區(qū)域112可以為I兆字節(jié)(MB),低端存儲區(qū)域114擴(kuò)展為4千兆字節(jié)(GB),而高端存儲區(qū)域116擴(kuò)展為16太字節(jié)(TB),但是本發(fā)明的范圍并不局限于此。該地址空間映射到系統(tǒng)內(nèi)的實際物理存儲器,其可存在于各個位置處,包括設(shè)備上存在的DRAM和存儲器、存儲器映射的輸入/輸出(麗10)等??煽闯?,兼容性區(qū)域120可以包括磁盤操作系統(tǒng)(DOS)范圍122、視頻圖像適配器(VGA)存儲器124以及PAM區(qū)域126。接下來,低端存儲區(qū)域114可以映射到系統(tǒng)存儲器的一部分,例如,DRAM低端存儲器131。接下來,可以提供根據(jù)本發(fā)明的實施例的RSEG區(qū)域133。在不同的實現(xiàn)中,可將該區(qū)域的量配置為大約IMB (用于空間受限系統(tǒng),如芯片上的深入集成系統(tǒng))到128MB (用于大企業(yè)服務(wù)器)之間。在該區(qū)域之上,可存在麗10低端區(qū)域134。然后可存在對應(yīng)于SMRAM的TSEG區(qū)域135。然后可以存在各種存儲器口徑(aperture),其可以提供到其它存儲單元的指針。這種存儲器口徑可以包括10高級可編程中斷控制器(APIC) 口徑136、可信平臺模塊(TPM)口徑137、局部APIC 口徑138以及BIOS 口徑139,其可以指向包括BIOS映像的閃速存儲器。依此,高端存儲區(qū)域116可以映射到存儲區(qū)域140,存儲區(qū)域140包括系統(tǒng)DRAM高端存儲區(qū)域142、高端RSEG區(qū)域144,以及諸如麗IO高端區(qū)域口徑145、保留口徑147和權(quán)限控制及狀態(tài)寄存器(CSR)的各種存儲器口徑。雖然結(jié)合例如圖1的實施例示出了該特定實現(xiàn),但是應(yīng)理解本發(fā)明的范圍不局限于此。圖2為根據(jù)本發(fā)明的一個實施例的保護(hù)RSEG的實現(xiàn)的邏輯視圖?,F(xiàn)在參照圖2,系統(tǒng)200可以包括中央處理單元(CPU)內(nèi)核210,其可經(jīng)過非內(nèi)核邏輯205和高速緩存邏輯215耦合到高速緩存代理220 (其在一個實施例中可以是最后一級高速緩存(LLC))和存儲控制器230。應(yīng)注意的是,在各種實現(xiàn)中,所有這些部件可以集成在單個半導(dǎo)體模具中,例如包括集成存儲控制器的多核處理器。然而,本發(fā)明的范圍并不局限于此。此外還可以看出的,存儲控制器230耦合到系統(tǒng)存儲器240,而系統(tǒng)存儲器240在示出的實施例中可以為經(jīng)由多個雙列直插式內(nèi)存模塊(DIMM)實施的動態(tài)隨機(jī)存取存儲器。如圖所示,至少某些DRAM可以包括RSEG區(qū)域245a和245b。關(guān)于內(nèi)核210,其能夠執(zhí)行RSEG區(qū)域,但是不能寫該范圍,除非正在執(zhí)行可信代理。在一定條件下,這可以通過將RSEG區(qū)域指定為可讀/可寫來實現(xiàn)。例如,BIOS SMM處理程序可以用于改變RSEG區(qū)域,但是其它實體不能。關(guān)于系統(tǒng)存儲器240,RSEG區(qū)域245因而能由BIOS配置為系統(tǒng)地址映射的節(jié)點部分劃分的范圍。如圖所示,所述區(qū)域可以通過物理或虛擬RAM設(shè)備的任意結(jié)合而擴(kuò)展。對于高速緩存代理220,其可以操作以防止對RSEG區(qū)域用于非SMM寫入訪問的范圍進(jìn)行高速緩存。這樣,可以避免高速緩存攻擊。此外,在其它實施例中,除了防止對RSEG區(qū)域用于非SMM寫入操作的高速緩存之外,對于非SMM讀取可以發(fā)生類似的高速緩存防止。在一個實施例中,可以提供以下寄存器。雖然所述寄存器的位置可以變化(并且在某些實施例中可以存在多個例示),但在一個實例中,寄存器可以作為處理器的非內(nèi)核邏輯205的地址解碼器邏輯204的一部分存在。出于討論的目的,假設(shè)寄存器還可以存在于每個高速緩存代理中。自然,寄存器可以位于其它位置,例如高速緩存邏輯、芯片組邏輯等。這些寄存器限定了 DRAM中的RSEG的區(qū)域,例如在低端存儲器和高端存儲器中。具體地,這些寄存器包括控制寄存器以限定受保護(hù)區(qū)域的邊界。RSEGHI_BASE高端4G區(qū)域[63:20]中RSEG區(qū)域的開始(例如,IMB遞增,最高有效位(MSB)可以低于63)RSEGHI_LIMIT 高端區(qū)域中RSEG區(qū)域的結(jié)束RSEGL0_BASE低端4G區(qū)域[32:20]中RSEG區(qū)域的開始(IMB遞增)RSEGL0_LIMIT低端區(qū)域中RSEG區(qū)域的結(jié)束RSEG_CTRLSTS包含允許位和狀態(tài)位在各種實現(xiàn)中,該控制寄存器或者其它這種寄存器還可以包括在運行第三方代碼前進(jìn)行設(shè)置的RSEG_L0CK_PERM鎖定位,從而例如上述寄存器的η元組的RSEG保護(hù)設(shè)定不能被隨后的包括SMM的任何代理所改變。應(yīng)該注意的是,如果已經(jīng)設(shè)置了 RSEG_L0CK_0NLY_SMM_ACCESSIBLE鎖定位,則該位可以忽略??梢栽谶\行第三方代碼之前設(shè)置RSEG_L0CK_ONLY_SMM_ACCESSIBLE鎖定位,從而例如上述寄存器的η元組的RSEG保護(hù)設(shè)定能夠由除了 SMM之外的隨后任意代理改變。再次,如果已經(jīng)設(shè)置了 RSEG_L0CK_PERM,則該位可以忽略。這些寄存器在鎖定之前對早期系統(tǒng)板固件代碼是可用的,而在鎖定之后僅對SMM代碼可用。
在RSEG中待保護(hù)信息的一個例子是UEFI運行時間服務(wù)。首先,在上電自檢(POST)期間,BIOS將會正常初始化存儲器。如在Platform Initialization Specification,Volumesl-5 (可從www.uef1.0rg處獲得)中限定的,BIOS實施例可以包括但不限于安全初始化(SEC)、預(yù)先EFI (PEI)以及執(zhí)行的驅(qū)動執(zhí)行環(huán)境(DXE)階段。接下來,BIOS將RSEG配置為存儲器中占據(jù)UEFI運行時間服務(wù)的區(qū)域,并將所述服務(wù)加載到該區(qū)域中。之后,BIOS將鎖定該存儲器范圍,例如,通過構(gòu)建邊界和控制寄存器。這具有迫使高速緩存代理阻塞/停止對RSEG區(qū)域的高速緩存的效果。應(yīng)該注意的是,BIOS SMM能隨后執(zhí)行以改變RSEG區(qū)域的大小,例如,通過更新邊界寄存器。平臺制造商已經(jīng)規(guī)定了運行到該點的所有的BIOS,因而所述BIOS是可信的。在構(gòu)建區(qū)域并設(shè)定適當(dāng)?shù)逆i定之后,BIOS啟動操作系統(tǒng)并運行其它第三方代碼,例如來自主總線適配器(HBA)的UEFI或者傳統(tǒng)的PC/AT BIOS選擇ROM。然后,由于UEFI運行時間服務(wù)現(xiàn)在為RO且是不可變的,所以UEFI運行時間服務(wù)的隨后使用被所有的平臺實體可信。在正常系統(tǒng)操作期間,當(dāng)發(fā)生RSEG違例時,捕獲請求(例如,通過高速緩存邏輯)并且設(shè)置RSEG_L0CK_0NLY_SMM_ACCESSIBLE,在RSEG控制寄存器中設(shè)置狀態(tài)位,并且生成SML.當(dāng)執(zhí)行SMM代碼時,清除狀態(tài)位并將用于捕獲請求的完成返回到內(nèi)核,這可以是例如CRAB_AB0RT的主設(shè)備中止的形式(例如,生成錯誤數(shù)據(jù)并將其發(fā)送回請求者)。對于具有RSEG_L0CK_PERM設(shè)置的系統(tǒng),將忽略對由TSEG覆蓋的區(qū)域的試圖寫入。如果高速緩存邏輯接收非SMM寫入或用于所有權(quán)的非SMM請求(請求高速緩存尋求處于排他(E)狀態(tài)的數(shù)據(jù)),則將捕獲請求并用信號發(fā)送消息以生成SMI。所述請求將被持有,直到SMM代碼清除RSEG控制寄存器內(nèi)的RSEG狀態(tài)指示器,然后退出SMM,允許高速緩存邏輯生成到內(nèi)核的CRAB_AB0RT。在各個實施例中,高速緩存邏輯將允許對處于共享(S)狀態(tài)(S狀態(tài)防止對高速緩存進(jìn)行寫入)的高速緩存進(jìn)行非高速緩存讀取和讀取請求。因此,通過允許僅以S狀態(tài)高速緩存區(qū)域而允許代碼以全速運行,但是仍防止寫入。應(yīng)該注意的是,可以允許SMM代碼高速緩存處于E狀態(tài)或修改(M)狀態(tài)的RSEG區(qū)域,但是此后在返回到正常執(zhí)行之前清除高速緩存。還應(yīng)注意的是,如果UMIT=〈BASE,或者如果沒有設(shè)置RSEG_CTRLSTS中的允許位,則上述寄存器沒有效果。為了提供全面保護(hù),可以允許SMM代碼改變這些寄存器的內(nèi)容(利用先前定義的機(jī)制)。為了增強(qiáng)性能,將來自輸入/輸出(10)設(shè)備的任何請求發(fā)送到高速緩存邏輯,此時所述邏輯能夠立即CRAB_AB0RT(由于來自10,所以沒有必要通過捕獲或用信號發(fā)送SMI來停止內(nèi)核)?,F(xiàn)在參考圖3,示出了根據(jù)本發(fā)明的實施例的方法的流程圖。更具體地,圖3示出了根據(jù)本發(fā)明的實施例的利用BIOS構(gòu)建RSEG區(qū)域的實現(xiàn)。如圖所示,方法300可以開始于經(jīng)由BIOS發(fā)生的系統(tǒng)的上電自檢(POST)操作(方框305)。在成功POST之后,BIOS可以配置系統(tǒng)的存儲器(方框310)。然后,控制進(jìn)行到方框320,在此處BIOS可以讀取芯片組容量以確認(rèn)是否將系統(tǒng)配置用于RSEG容量。也就是,可以將芯片組配置為提供包括一個或多個RSEG區(qū)域的地址空間(如圖1所示),如寄存器所指示的,例如,存在于指示該特殊配置的配置空間中。因此,根據(jù)本發(fā)明的實施例,BIOS可以分配和加載設(shè)備驅(qū)動器以激活RSEG操作。仍參考圖3,如果在菱形330處確定RSEG不被芯片組所支持,則控制進(jìn)行到方框340處,在其中可以通過BIOS執(zhí)行進(jìn)一步的系統(tǒng)配置而無需RSEG支持。否則,控制進(jìn)行到方框350處,在其中BIOS可以配置一個或多個RSEG區(qū)域來保護(hù)相關(guān)數(shù)據(jù)。雖然本發(fā)明的范圍并不受限于此,但是這種受保護(hù)的數(shù)據(jù)可以包括UEFI運行時間數(shù)據(jù)、UEFI運行時間代碼、例如ACPI表的ACPI數(shù)據(jù)、SMBIOS表、批量許可信息(例如OS激活碼)、平臺標(biāo)識符和證書(例如,WWW, trustedco即utinRRroup.0rR所描述的,用于支持可信平臺模塊的系統(tǒng)板的平臺制造商證書等)。在這種配置之后,所述配置可以包括構(gòu)建各種寄存器,例如如上所述包括基址寄存器、界限寄存器以及控制寄存器,BIOS可以將控制移交給OS啟動加載器并依此給OS(方框360)。然后在正常操作期間,BIOS和OS都可以訪問RSEG區(qū)域(至少以讀取的方式),以使用其中存儲的數(shù)據(jù)/代碼(方框370)。應(yīng)該注意的是,在系統(tǒng)操作期間,BIOS可以基于期望的操作特性來重新配置RSEG區(qū)域。為了實現(xiàn)可以包括RSEG區(qū)域的遷移、擴(kuò)展、調(diào)整大小、覆寫等的這種重新配置,如上關(guān)于控制寄存器鎖定位描述的,BIOS可以在SMM模式下設(shè)置鎖定以能夠更新RSEG區(qū)域。雖然在圖3的實施例中示出了該特定實現(xiàn),但是應(yīng)該理解的是,本發(fā)明的范圍并不局限于此?,F(xiàn)在參照圖4,示出根據(jù)本發(fā)明的另一實施例的方法的流程圖。如圖4所示,方法400可用于在系統(tǒng)操作期間處理RSEG區(qū)域的保護(hù)。如圖所示,可以用多種硬件(例如,包括高速緩存邏輯、芯片組邏輯等)實施方法400,方法400可以在接收用于RSEG區(qū)域的非SMM寫入請求時開始(方框410)。出于討論的目的,假設(shè)該請求是在與高速緩存(例如最后一級高速緩存)相關(guān)聯(lián)的邏輯中接收到的。因此,邏輯可以捕獲請求并設(shè)置狀態(tài)指示器,且用信號發(fā)送SMI (方框420)。例如,狀態(tài)指示器可以是RSEG控制寄存器,以指示非SMM實體已尋找對RSEG區(qū)域的寫入訪問。應(yīng)注意的是,如此處使用的,術(shù)語“非SMM”意圖指的是系統(tǒng)管理模式之外的所有代碼,包括OS和其它第三方代碼,但是不包括BIOS代碼。仍參考圖4,可以響應(yīng)SMI信號而進(jìn)入SMM模式(方框430)。例如,可以執(zhí)行給定SMM事件處理程序(handler)。在該處理程序執(zhí)行期間,該處理程序可以讀取RSEG控制寄存器,并且重置RSEG控制寄存器的狀態(tài)指示器。也可以執(zhí)行其它的SMM選項,例如但不限于閃存更新、電源管理、芯片組錯誤解決方案(work-around)、錯誤日志等。然后控制進(jìn)行到方框440,在此退出系統(tǒng)管理模式。因此,控制返回到正常系統(tǒng)操作,其中可以將中止完成返回到請求者(方框450)。例如,高速緩存邏輯可以生成并轉(zhuǎn)發(fā)作為完成消息的一部分的錯誤數(shù)據(jù),例如諸如CRAB_abort完成消息的中止完成消息。雖然在圖4的實施例中示出了該特定實現(xiàn),但是應(yīng)理解的是,本發(fā)明的范圍并不局限于此。應(yīng)注意的是,即使是不在高速緩存代理中,也可以遵循圖3和圖4的操作。例如,如果存儲控制器(MC)能夠捕獲請求、用信號發(fā)送SMI以及隨后終止所捕獲的請求,則可以在MC中實施所述操作。通過在系統(tǒng)的各種實體間分派這些責(zé)任,可以實現(xiàn)其它實施例。因此,在各個實施例中,BIOS和OS能夠創(chuàng)建用于讀取和執(zhí)行操作的主存儲器的RO段。另外,可將RSEG區(qū)域覆寫或調(diào)整大小以用于可靠性-可用性-可服務(wù)性(RAS)操作,例如存儲器容量增加、存儲器移除等??梢杂迷S多不同的系統(tǒng)類型實現(xiàn)實施例。一些這種系統(tǒng)可以是基于個人計算機(jī)(PO的系統(tǒng),例如臺式、膝上、筆記本、上網(wǎng)本或各種類型服務(wù)器系統(tǒng)。但是,實施例可以在其它系統(tǒng)中實現(xiàn),例如包括所謂智能手機(jī)的蜂窩式電話、個人數(shù)字助理、移動互聯(lián)網(wǎng)設(shè)備,或基于片上系統(tǒng)(SoC)的系統(tǒng)等?,F(xiàn)在參考圖5,示出了根據(jù)本發(fā)明的實施例的系統(tǒng)的框圖。如圖5所示,多處理器系統(tǒng)600是點對點互連系統(tǒng),包括經(jīng)由點對點互連650稱合的第一處理器670和第二處理器680。如圖5所示,處理器670和680中的每個可以是多內(nèi)核處理器,包括第一處理器內(nèi)核和第二處理器內(nèi)核(即,處理器內(nèi)核674a和674b以及處理器內(nèi)核684a和684b),但是在處理器中潛在地可以存在許多更多內(nèi)核。根據(jù)本發(fā)明的實施例,這些內(nèi)核可以包括邏輯以處理對系統(tǒng)存儲器的只讀區(qū)域的訪問許可。仍參照圖5,第一處理器670還包括存儲控制器中心(MCH) 672以及點對點(P_P)接口 676和678。類似地,第二處理器680包括MCH682以及P-P接口 686和688。如圖5所示,MCH672和682將處理器耦合到各個存儲器,即存儲器632和存儲器634,其可以是系統(tǒng)存儲器(例如DRAM)本地附加到各個處理器上的一部分,并且可以包括一個或多個只讀區(qū)域,在該只讀區(qū)域中的各種系統(tǒng)數(shù)據(jù)能夠由內(nèi)核、存儲控制器和芯片組690的組合所存儲和保護(hù)。第一處理器670和第二處理器680可以經(jīng)由P-P接口 652和654分別耦合到芯片組690。如圖5所示,芯片組690包括P-P接口 694和698。此外,芯片組690包括接口 692,該接口 692通過P-P互連639將芯片組690耦合到高性能圖形引擎638。接著,芯片組690可以經(jīng)由接口 696耦合到第一總線616。如圖5所示,各種輸入/輸出(I/O)設(shè)備614連同總線橋618耦合到第一總線616,其中總線橋618率禹合第一總線616和第二總線620。在一個實施例中,各種設(shè)備可以稱合到第二總線620,包括例如:鍵盤/鼠標(biāo)622、通信設(shè)備626和諸如包括代碼630的磁盤驅(qū)動或其它大容量存儲設(shè)備的數(shù)據(jù)儲存單元628。此外,音頻1/0624可以耦合到第二總線620。如上所述,實施例可以并入到包括例如蜂窩式電話的移動設(shè)備的其它類型的系統(tǒng)中?,F(xiàn)在參照圖6,示出了根據(jù)本發(fā)明的另一實施例的系統(tǒng)的框圖。如圖6所示,系統(tǒng)700可以是移動設(shè)備并可以包括各種部件。如圖6的高層視圖所示,應(yīng)用處理器710(可以是設(shè)備的中央處理單元)與包括儲存器715的各種部件進(jìn)行通信。在各個實施例中,儲存器715可以包括程序儲存部和數(shù)據(jù)儲存部,并能根據(jù)本發(fā)明的實施例映射以提供安全儲存。應(yīng)用處理器710還可以耦合到輸入/輸出系統(tǒng)720,在各個實施例中,輸入/輸出系統(tǒng)720可以包括顯示器和一個或多個輸入設(shè)備(例如當(dāng)執(zhí)行時自身可以出現(xiàn)在顯示器上的觸摸鍵盤)。應(yīng)用處理器710還可以耦合到基帶處理器730,其約束例如用于輸出的語音和數(shù)據(jù)通信的信號,以及約束呼入電話和其它信號。如圖所示,基帶處理器730耦合到收發(fā)器740,收發(fā)器740能激活接收和傳送能力。依此地,收發(fā)器740可以與天線750進(jìn)行通信,天線750可以是能夠經(jīng)由一個或多個通信協(xié)議傳送和接收語音和數(shù)據(jù)信號的任意類型的天線,所述通信協(xié)議例如是無線廣域網(wǎng)(例如,3G或4G網(wǎng)絡(luò))和/或無線局域網(wǎng)(例如,根據(jù)電氣和電子工程師協(xié)會802.11標(biāo)準(zhǔn)的BLUETOOTH 或所謂的W1-FI 網(wǎng)絡(luò))。如圖所示,系統(tǒng)700還可以包括具有可充電電池的可充電電源725以使得在移動環(huán)境下進(jìn)行操作。雖然以圖6的實施例示出了該特定實現(xiàn),但是本發(fā)明的范圍并不局限于此??梢杂么a實現(xiàn)實施例并將實施例存儲在儲存介質(zhì)上,所述儲存介質(zhì)上存儲有能用于對系統(tǒng)編程序以執(zhí)行指令的指令。儲存介質(zhì)可以包括但不限于任何類型的非瞬態(tài)儲存介質(zhì),例如磁盤,包括軟盤、光盤、固態(tài)驅(qū)動(SSD)、光盤只讀存儲器(CD-ROM)、可重寫光盤(CD-Rff)和磁光盤;半導(dǎo)體設(shè)備,例如只讀存儲器(ROM)、諸如動態(tài)隨機(jī)存取存儲器(DRAM)、靜態(tài)隨機(jī)存取存儲器(SRAM)的隨機(jī)存取存儲器(RAM)、可擦除可編程只讀存儲器(EPR0M)、閃存、電可擦除可編程只讀存儲器(EEPR0M)、磁卡或光卡,或者適用于存儲電子指令的任意其它類型的介質(zhì)。雖然已經(jīng)結(jié)合有限數(shù)量的實施例描述了本發(fā)明,但是本領(lǐng)域的技術(shù)人員將會意識到各種修改和變型。期望的是所附權(quán)利要求覆蓋落入本發(fā)明的真實精神和范圍內(nèi)的所有這種修改和變型。
權(quán)利要求
1.一種方法,包括: 確定系統(tǒng)的系統(tǒng)地址映射是否包括用于系統(tǒng)存儲器的只讀區(qū)域的支持; 如果包括,則配置所述只讀區(qū)域并在所述只讀區(qū)域內(nèi)存儲受保護(hù)的系統(tǒng)數(shù)據(jù),所述受保護(hù)的系統(tǒng)數(shù)據(jù)的至少一部分在系統(tǒng)管理模式(SMM)和非SMM下可讀取,而僅在SMM下可寫入;以及 在執(zhí)行所述非SMM下代碼期間,訪問在所述只讀區(qū)域內(nèi)的所述受保護(hù)的系統(tǒng)數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,還包括在系統(tǒng)操作期間使用基本輸入/輸出系統(tǒng)(BIOS)重新配置所述只讀區(qū)域。
3.根據(jù)權(quán)利要求1所述的方法,還包括將高級配置與電源接口(ACPI)數(shù)據(jù)作為所述受保護(hù)的系統(tǒng)數(shù)據(jù)的至少一部分存儲在所述只讀區(qū)域中。
4.根據(jù)權(quán)利要求1所述的方法,還包括在執(zhí)行非SMM代碼期間從所述系統(tǒng)的外圍設(shè)備接收對所述只讀區(qū)域中存儲單元的寫入請求,并且響應(yīng)于所述寫入請求而直接從高速緩存代理向所述外圍設(shè)備發(fā)送包括錯誤數(shù)據(jù)的完成消息。
5.根據(jù)權(quán)利要求1所述的方法,還包括在執(zhí)行非SMM代碼期間從所述系統(tǒng)的外圍設(shè)備接收對所述只讀區(qū)域中存儲單元的寫入請求,并且響應(yīng)于所述寫入請求而用信號發(fā)送系統(tǒng)管理中斷。
6.根據(jù)權(quán)利要求5所述的方法,還包括進(jìn)入所述SMM并在所述SMM下處理所述寫入請求。
7.根據(jù)權(quán)利要求6所述的方法,還包括向所述外圍設(shè)備返回中止完成,其中所述中止完成包括錯誤數(shù)據(jù)。
8.一種系統(tǒng),包括: 執(zhí)行指令的處理器; 耦合到所述處理器的芯片組,所述芯片組包括對應(yīng)于所述系統(tǒng)的地址空間的系統(tǒng)地址映射,所述系統(tǒng)地址映射將邏輯地址與物理地址相關(guān)聯(lián),其中所述系統(tǒng)地址映射包括邏輯地址到系統(tǒng)存儲器的至少一個只讀區(qū)域的映射,所述只讀區(qū)域在不可信模式下可讀取,而僅在可信模式下可寫入;以及 耦合到所述處理器的系統(tǒng)存儲器,其中所述系統(tǒng)存儲器包括動態(tài)隨機(jī)存取存儲器(DRAM)0
9.根據(jù)權(quán)利要求8所述的系統(tǒng),還包括耦合到所述系統(tǒng)存儲器的高速緩存代理,其中所述高速緩存代理存儲響應(yīng)于讀取請求來自所述只讀區(qū)域的信息。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),還包括耦合到所述高速緩存代理的邏輯,以確定是否允許將來自所述只讀區(qū)域的所述信息存儲到所述高速緩存代理。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述邏輯使得能夠響應(yīng)于所述讀取請求而進(jìn)行到所述高速緩存代理的存儲,并且防止響應(yīng)于在所述不可信模式下發(fā)起的寫入請求而將第二信息存儲到所述只讀區(qū)域。
12.根據(jù)權(quán)利要求10所述的系統(tǒng),其中,所述邏輯捕獲在所述不可信模式下發(fā)生的對所述只讀區(qū)域的寫入請求。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中,所述邏輯生成系統(tǒng)管理請求,以使得系統(tǒng)管理模式(SMM)處理程序響應(yīng)于所述寫入請求而執(zhí)行。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,所述邏輯將中止完成返回到所述寫入請求的請求者。
15.根據(jù)權(quán)利要求8所述的系統(tǒng),還包括一組寄存器,所述一組寄存器包括第一對寄存器和控制寄存器,所述第一對寄存器存儲關(guān)于所述系統(tǒng)存儲器內(nèi)所述只讀區(qū)域的存儲單元的信息,所述控制寄存器存儲識別是否配置所述只讀區(qū)域的允許指示器和指示未允許的代理試圖訪問所述只讀區(qū)域的狀態(tài)指示器。
16.根據(jù)權(quán)利要求15所述的系統(tǒng),其中所述未允許的代理包括尋求對所述只讀區(qū)域的寫入訪問的非系統(tǒng)管理模式(SMM)代碼。
17.—種包括包含指令的機(jī)器可訪問儲存介質(zhì)的物品,當(dāng)執(zhí)行所述指令時使得系統(tǒng)用于: 確定系統(tǒng)存儲器是否包括由系統(tǒng)固件配置的只讀區(qū)域; 如果包括,則在可信模式下存儲由所述系統(tǒng)固件寫入的受保護(hù)的系統(tǒng)數(shù)據(jù);以及 在執(zhí)行不可信模式下代碼期間,訪問在所述只讀區(qū)域內(nèi)的所述受保護(hù)的系統(tǒng)數(shù)據(jù)。
18.根據(jù)權(quán)利要求17所述的物品,還包括指令以在執(zhí)行不可信代碼期間從所述系統(tǒng)的外圍設(shè)備接收對所述只讀區(qū)域中存儲單元的寫入請求,并且響應(yīng)于所述寫入請求而用信號發(fā)送中斷以使得能夠進(jìn)入所述可信模式。
19.根據(jù)權(quán)利要求18所述的物品,還包括指令以將中止完成返回到所述外圍設(shè)備,其中所述中止完成包括錯誤數(shù)據(jù)。
20.根據(jù)權(quán)利要求17所述的物品,還包括指令以在所述不可信模式下將處于共享狀態(tài)的所述受保護(hù)的系統(tǒng)數(shù)據(jù)的至少第一部分高速緩存到所述系統(tǒng)的高速緩存存儲器中,并且在所述可信模式下將處于排 他狀態(tài)的所述受保護(hù)的系統(tǒng)數(shù)據(jù)的至少第二部分高速緩存到所述高速緩存存儲器中。
全文摘要
在一個實施例中,本發(fā)明包括一種方法,用于確定系統(tǒng)的地址映射是否包括對系統(tǒng)存儲器的只讀區(qū)域的支持;如果包括,則配置所述區(qū)域并在所述區(qū)域內(nèi)存儲受保護(hù)的數(shù)據(jù)。所述數(shù)據(jù)的至少一部分在可信模式和不可信模式下都可讀取,而在執(zhí)行不可信代碼期間能從只讀區(qū)域訪問。描述并要求保護(hù)其它實施例。
文檔編號G06F13/14GK103154913SQ201180047970
公開日2013年6月12日 申請日期2011年7月20日 優(yōu)先權(quán)日2010年8月6日
發(fā)明者R·C·斯旺森, V·J·齊默, E·R·韋哈格, M·布魯蘇 申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
龙门县| 都昌县| 腾冲县| 将乐县| 绥宁县| 峨山| 前郭尔| 普定县| 高青县| 辉县市| 裕民县| 遂川县| 永春县| 得荣县| 黎平县| 陕西省| 墨玉县| 淮安市| 镇安县| 讷河市| 商都县| 三台县| 松桃| 北票市| 北流市| 佛学| 广灵县| 永年县| 松江区| 乌拉特前旗| 莱州市| 庆元县| 车致| 荃湾区| 安岳县| 余姚市| 遂平县| 巴中市| 张家港市| 九寨沟县| 周至县|