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

在可信模式與非可信模式之間互相切換的處理器的制作方法

文檔序號(hào):11177681閱讀:290來源:國知局
在可信模式與非可信模式之間互相切換的處理器的制造方法與工藝

本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種在可信模式與非可信模式之間互相切換的處理器。



背景技術(shù):

隨著信息化不斷發(fā)展,系統(tǒng)可信性變的越來越重要,傳統(tǒng)的基于軟件層面的可信性保護(hù)的安全度越來越低,因?yàn)楹诳涂梢栽竭^軟件保護(hù)直接攻擊操作系統(tǒng)進(jìn)而對敏感的軟硬件資源進(jìn)行竊取;因此,為了彌補(bǔ)軟件層面的可信性保護(hù)的不足,提出了一種可信構(gòu)架,所述可信構(gòu)架旨在為系統(tǒng)提供軟件之外的底層硬件保護(hù)機(jī)制。

所述可信構(gòu)架設(shè)計(jì)的具體思路是:在處理器的運(yùn)行模式中新增一種可信模式,并在系統(tǒng)中抽象出一個(gè)可信內(nèi)核,將處于可信模式的處理器、可信屬性的系統(tǒng)ip以及其他系統(tǒng)中敏感、重要的軟硬件資源劃分到可信內(nèi)核中;進(jìn)一步,通過硬件機(jī)制保證可信內(nèi)核中的資源只能被可信模式所訪問,從而實(shí)現(xiàn)可信內(nèi)核與非可信內(nèi)核的隔離,確??尚刨Y源的機(jī)密性以及完整性。

可信模式和非可信模式分別擁有獨(dú)立的寄存器,當(dāng)處理器在可信模式與非可信模式之間進(jìn)行切換時(shí),通過一個(gè)監(jiān)視模式對切換過程進(jìn)行監(jiān)控,這種機(jī)制為系統(tǒng)提供了軟件保護(hù)之外底層硬件保護(hù)機(jī)制,實(shí)現(xiàn)了可信模式與非可信模式之間的間接切換,但實(shí)現(xiàn)機(jī)制復(fù)雜,占用的硬件資源較多。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提供的在可信模式與非可信模式之間互相切換的處理器,能夠通過硬件實(shí)現(xiàn)可信模式與非可信模式隔離,實(shí)現(xiàn)機(jī)制簡單、資源占用少。

第一方面,本發(fā)明提供一種在可信模式與非可信模式之間互相切換的處理器,包括:切換控制模塊、可信內(nèi)核、非可信內(nèi)核,資源保護(hù)模塊,其中,

切換控制模塊,用于接收模式切換請求后,發(fā)送所述模式切換請求至所述可信內(nèi)核或所述非可信內(nèi)核,同時(shí)發(fā)送資源保存請求至所述資源保護(hù)模塊;當(dāng)切換完成時(shí),發(fā)送切換返回請求至所述非可信內(nèi)核或所述可信內(nèi)核,同時(shí)發(fā)送資源恢復(fù)請求至所述資源保護(hù)模塊;

可信內(nèi)核,與所述切換控制模塊相連,用于保存處理器中的可信資源以及公用資源,當(dāng)接收到模式切換請求后,對當(dāng)前現(xiàn)場進(jìn)行記錄并切換至所述非可信內(nèi)核,以及當(dāng)接收到切換返回請求后,根據(jù)切換發(fā)生時(shí)記錄的現(xiàn)場信息,切換返回至所述非可信內(nèi)核;

非可信內(nèi)核,與所述切換控制模塊相連,用于保存處理器中的非可信資源以及公用資源,當(dāng)接收到模式切換請求后,對當(dāng)前現(xiàn)場進(jìn)行記錄后切換至所述可信內(nèi)核,以及當(dāng)接收到切換返回請求后,根據(jù)切換發(fā)生時(shí)記錄的現(xiàn)場信息,切換返回所述可信內(nèi)核;

資源保護(hù)模塊,與所述切換控制模塊、所述可信內(nèi)核和所述非可信內(nèi)核相連,用于在接收到資源保存請求后,對接收到切換請求的可信內(nèi)核或非可信內(nèi)核的資源進(jìn)行壓棧保存,以及接收到資源恢復(fù)請求后,對所述可信內(nèi)核或非可信內(nèi)核的資源進(jìn)行彈棧恢復(fù)。

可選地,所述可信內(nèi)核可以訪問自身內(nèi)核所屬資源以及非可信內(nèi)核中的資源,所述非可信內(nèi)核只可以訪問自身內(nèi)核所屬資源。

可選地,所述模式切換請求為模式切換調(diào)用請求或跨模式中斷請求。

可選地,所述切換返回請求為模式切換調(diào)用返回或跨模式中斷返回??蛇x地,所述可信內(nèi)核與非可信內(nèi)核均擁有獨(dú)立的程序狀態(tài)寄存器,且所述程序狀態(tài)寄存器中設(shè)置有可信標(biāo)志位、起始模式標(biāo)志位、硬件壓棧標(biāo)志位或切換請求標(biāo)志位中的兩個(gè)或多個(gè),用于發(fā)生模式切換時(shí)對當(dāng)前現(xiàn)場進(jìn)行記錄,其中,

所述可信標(biāo)志位,用于表示處理器當(dāng)前所處的模式為可信模式或非可信模式;

所述起始模式標(biāo)志位,用于表示模式切換的起始模式為可信模式或非可信模式,以便處理器切換完成后,根據(jù)所述起始模式標(biāo)志位判定返回的模式;

所述硬件壓棧標(biāo)志位,用于表示模式切換時(shí)是否進(jìn)行了通用寄存器的壓棧,以便處理器切換完成后,根據(jù)所述硬件壓棧標(biāo)志位判定是否需要對通用寄存器進(jìn)行彈棧;

所述切換請求標(biāo)志位,用于表示觸發(fā)模式切換的請求為模式切換調(diào)用請求還是跨模式中斷請求,以便處理器切換完成后,根據(jù)所述切換請求標(biāo)志位判定切換請求的類型。

可選地,所述可信內(nèi)核的程序狀態(tài)寄存器中設(shè)置有可信標(biāo)志位、起始模式標(biāo)志位、硬件壓棧標(biāo)志位和切換請求標(biāo)志位。

可選地,所述非可信內(nèi)核的程序狀態(tài)寄存器中設(shè)置有可信標(biāo)志位和起始模式標(biāo)志位。

可選地,所述資源保護(hù)模塊還用于:

當(dāng)所述可信內(nèi)核接收到切換請求時(shí),對所述可信內(nèi)核的公用資源以及可信資源進(jìn)行壓棧保存,若切換請求為跨模式中斷請求,則進(jìn)一步對壓棧的公用資源進(jìn)行清零,在處理器切換完成后,返回起始模式時(shí)對保存的資源進(jìn)行彈?;謴?fù);

當(dāng)所述非可信內(nèi)核接收到切換請求時(shí),僅對所述非可信內(nèi)核的非可信資源進(jìn)行壓棧保存,在處理器切換完成后,返回起始模式時(shí)對保存的資源進(jìn)行彈棧恢復(fù)。

可選地,當(dāng)所述模式切換調(diào)用請求和所述跨模式中斷請求同時(shí)產(chǎn)生時(shí),跨模式中斷請求會(huì)被屏蔽。

本發(fā)明實(shí)施例提供的在可信模式與非可信模式之間互相切換的處理器,直接在可信模式和非可信模式之間切換,無需通過其他模式,且在切換過程中對切換現(xiàn)場進(jìn)行硬件保護(hù),實(shí)現(xiàn)可信模式與非可信模式隔離,實(shí)現(xiàn)機(jī)制簡單、資源占用少。

附圖說明

圖1為本發(fā)明一實(shí)施例在可信模式與非可信模式之間互相切換的處理器的結(jié)構(gòu)示意圖;

圖2為本發(fā)明處理器工作模式的示意圖;

圖3為本發(fā)明程序狀態(tài)寄存器的結(jié)構(gòu)示意圖;

圖4為本發(fā)明一實(shí)施例處理器處理切換請求的示意圖;

圖5為本發(fā)明又一實(shí)施例處理器處理切換請求的示意圖。

具體實(shí)施方式

為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

本發(fā)明提供一種在可信模式與非可信模式之間互相切換的處理器,如圖1所示,所述處理器包括切換控制模塊11、可信內(nèi)核12、非可信內(nèi)核13,資源保護(hù)模塊14,其中,

切換控制模塊11,用于接收模式切換請求后,發(fā)送所述模式切換請求至所述可信內(nèi)核12或所述非可信內(nèi)核13,同時(shí)發(fā)送保存指令至所述資源保護(hù)模塊14;當(dāng)切換完成時(shí),發(fā)送切換返回請求至所述非可信內(nèi)核或所述可信內(nèi)核,同時(shí)發(fā)送切換返回指令至所述資源保護(hù)模塊14;

可信內(nèi)核12,與所述切換控制模塊11相連,用于保存處理器處于可信模式下能夠訪問的資源,當(dāng)接收到模式切換請求后,對當(dāng)前現(xiàn)場進(jìn)行記錄后切換至所述非可信內(nèi)核13,以及當(dāng)接收到切換返回請求后,根據(jù)切換發(fā)生時(shí)記錄的現(xiàn)場信息,切換返回至所述非可信內(nèi)核13;

非可信內(nèi)核13,與所述切換控制模塊11相連,用于保存處理器處于非可信模式下能夠訪問的資源,當(dāng)接收到模式切換請求后,對當(dāng)前現(xiàn)場進(jìn)行記錄后切換至可信內(nèi)核12,以及當(dāng)接收到切換返回請求后,根據(jù)切換發(fā)生時(shí)記錄的現(xiàn)場信息,切換返回所述可信內(nèi)核12;

資源保護(hù)模塊14,與所述切換控制模塊11、所述可信內(nèi)核12和所述非可信內(nèi)核13相連,用于接收到保存指令后,對接收到切換請求的可信內(nèi)核12或非可信內(nèi)核13的資源進(jìn)行壓棧保存,以及接收到資源恢復(fù)請求后,對所述可信內(nèi)核12或非可信內(nèi)核13的資源進(jìn)行彈棧。

本發(fā)明實(shí)施例提供的在可信模式與非可信模式之間互相切換的處理器,直接在可信模式和非可信模式之間切換,無需通過其他模式,且在切換過程中對切換現(xiàn)場進(jìn)行硬件保護(hù),實(shí)現(xiàn)可信模式與非可信模式隔離,實(shí)現(xiàn)機(jī)制簡單、資源占用少。

可選地,如圖2所示,所述處理器可工作在可信模式和非可信模式。可信模式有兩種模式:可信態(tài)超級(jí)用戶模式、可信態(tài)普通用戶模式;非可信模式有兩種模式:非可信態(tài)超級(jí)用戶模式、非可信態(tài)普通用戶模式。

若處理器工作于可信模式下,則能對可信資源以及非可信資源進(jìn)行訪問管理;若處理器工作于非可信模式下,則只能對非可信資源進(jìn)行訪問管理。所述處理器能在可信模式與非可信模式之間直接進(jìn)行切換,無需經(jīng)過除該可信模式與非可信模式之外的其他模式,切換過程中由硬件對起始模式和目標(biāo)模式的資源進(jìn)行管理。

可選地,所述可信內(nèi)核12可以訪問自身內(nèi)核所屬資源以及非可信內(nèi)核中的資源,所述非可信內(nèi)核13只可以訪問自身內(nèi)核所屬資源。

可選地,所述模式切換請求為模式切換調(diào)用請求或跨模式中斷請求。

可選地,所述切換返回請求為模式切換調(diào)用返回或跨模式中斷返回。

可選地,如圖3所示,所述可信內(nèi)核12與非可信內(nèi)核13均擁有獨(dú)立的程序狀態(tài)寄存器,且所述程序狀態(tài)寄存器中設(shè)置有可信標(biāo)志位15、起始模式標(biāo)志位16、硬件壓棧標(biāo)志位17或切換請求標(biāo)志位18中的兩個(gè)或多個(gè),用于發(fā)生模式切換時(shí)對當(dāng)前現(xiàn)場進(jìn)行記錄,其中,

所述可信標(biāo)志位15,用于表示處理器當(dāng)前所處的模式為可信模式或非可信模式;

所述起始模式標(biāo)志位16,用于表示模式切換的起始模式為可信模式或非可信模式,以便處理器切換完成后,根據(jù)所述起始模式標(biāo)志位判定返回的模式;

所述硬件壓棧標(biāo)志位17,用于表示模式切換時(shí)是否進(jìn)行了通用寄存器的壓棧,以便處理器切換完成后,根據(jù)所述硬件壓棧標(biāo)志位判定是否需要對通用寄存器進(jìn)行彈棧;

所述切換請求標(biāo)志位18,用于表示觸發(fā)模式切換的請求為模式切換調(diào)用請求還是跨模式中斷請求,以便處理器切換完成后,根據(jù)所述切換請求標(biāo)志位確定觸發(fā)類型。

所述可信內(nèi)核12的程序狀態(tài)寄存器中設(shè)置有可信標(biāo)志位15、起始模式標(biāo)志位16、硬件壓棧標(biāo)志位17和切換請求標(biāo)志位18。

可選地,所述非可信內(nèi)核的程序狀態(tài)寄存器中設(shè)置有可信標(biāo)志位15和起始模式標(biāo)志位16。

可選地,所述資源保護(hù)模塊14還用于:

當(dāng)所述可信內(nèi)核12接收到切換請求時(shí),對所述可信內(nèi)核12的公用資源以及可信資源進(jìn)行壓棧保存,若切換請求為跨模式中斷請求,則進(jìn)一步對壓棧的公用資源進(jìn)行清零,在處理器切換完成后,返回起始模式時(shí)對保存的資源進(jìn)行彈棧恢復(fù);

當(dāng)所述非可信內(nèi)核13接收到切換請求時(shí),僅對所述非可信內(nèi)核13的非可信資源進(jìn)行壓棧保存,在處理器切換完成后,返回起始模式時(shí)對保存的資源進(jìn)行彈?;謴?fù)。

可選地,當(dāng)所述模式切換調(diào)用請求和所述跨模式中斷請求同時(shí)產(chǎn)生時(shí),跨模式中斷請求會(huì)被屏蔽。

可選地,如圖4所示,處理器處于可信模式下,在①處接收到模式切換調(diào)用并向非可信模式切換時(shí),資源保護(hù)模塊14首先對可信內(nèi)核12中的程序狀態(tài)寄存器和程序計(jì)數(shù)器進(jìn)行壓棧保存。在對可信內(nèi)核12的資源進(jìn)行壓棧保存之后,硬件設(shè)置可信模式程序狀態(tài)寄存器中硬件壓棧標(biāo)志位17的值,來記錄可信模式?jīng)]有發(fā)生通用寄存器的硬件壓棧,硬件設(shè)置非可信模式程序狀態(tài)寄存器中起始模式標(biāo)志位16的值,來記錄后續(xù)非可信模式調(diào)用返回時(shí)需要返回到可信模式。然后如步驟②所示,處理器直接切換到非可信內(nèi)核13。

③處,所述處理器在非可信模式進(jìn)行模式調(diào)用處理時(shí),發(fā)生模式切換調(diào)用,即發(fā)生模式切換的嵌套,此時(shí)資源保護(hù)模塊14首先對非可信內(nèi)核13的程序狀態(tài)寄存器和程序計(jì)數(shù)器進(jìn)行壓棧保存。在對非可信模式資源進(jìn)行壓棧保存之后,硬件設(shè)置可信模式程序狀態(tài)寄存器中切換請求標(biāo)志位18的值,來記錄非可信內(nèi)核13到可信內(nèi)核12的切換是通過模式切換調(diào)用實(shí)現(xiàn)的,硬件設(shè)置可信模式程序狀態(tài)寄存器中起始模式標(biāo)志位16的值,來記錄后續(xù)可信模式調(diào)用返回時(shí)需要返回到非可信內(nèi)核。

然后如步驟④所示處理器直接切換到可信內(nèi)核12,并在可信內(nèi)核12中完成模式切換調(diào)用的具體工作。⑥處可信模式調(diào)用返回時(shí),可信模式程序狀態(tài)寄存器中的可信標(biāo)志位15表示當(dāng)前處于可信模式;起始模式標(biāo)志位16表示之前從非可信模式切換到可信模式;因此可以判斷此時(shí)可信模式需要切換返回到非可信模式。同時(shí)可信程序狀態(tài)寄存器中的切換請求標(biāo)志位18表示之前是通過模式切換調(diào)用切換到可信模式,因此可以判定此時(shí)為模式切換調(diào)用的返回。切換返回非可信模式后,通過資源保護(hù)模塊14硬件彈?;謴?fù)非可信內(nèi)核程序狀態(tài)寄存器和程序計(jì)數(shù)器的值,回到非可信內(nèi)核原有的現(xiàn)場,并如步驟⑦所示繼續(xù)進(jìn)行非可信模式的模式調(diào)用處理。

⑧處非可信模式調(diào)用返回時(shí),非可信模式程序狀態(tài)寄存器中的可信標(biāo)志位15表示當(dāng)前處于非可信模式;起始模式標(biāo)志位16表示之前從可信模式切換到非可信模式;因此可以判斷此時(shí)非可信模式需要切換返回到可信模式。同時(shí)可信模式程序狀態(tài)寄存器中的硬件壓棧標(biāo)志位17表示之前切換過程中沒有發(fā)生通用寄存器壓棧,因此返回可信模式后不需要進(jìn)行通用寄存器的彈棧,隨后再通過資源保護(hù)模塊14硬件彈棧恢復(fù)可信模式程序狀態(tài)寄存器和程序計(jì)數(shù)器的值,回到可信模式原有的現(xiàn)場。

可選地,如圖5所示,所述處理器處于可信模式并在①處接到了觸發(fā)模式切換的非可信中斷請求,在通過跨模式中斷進(jìn)行可信模式到非可信模式的切換時(shí),資源保護(hù)模塊14首先對可信內(nèi)核的程序狀態(tài)寄存器、程序計(jì)數(shù)器進(jìn)行壓棧保存,并對通用寄存器進(jìn)行硬件壓棧和清零。隨后在可信內(nèi)核12中通過硬件設(shè)置可信模式程序狀態(tài)寄存器中的硬件壓棧標(biāo)志位17,來記錄可信模式發(fā)生了通用寄存器的硬件壓棧。然后如步驟②所示,處理器直接切換到非可信內(nèi)核13,并備份非可信模式的程序狀態(tài)寄存器到異常保留程序狀態(tài)寄存器中。硬件設(shè)置非可信模式程序狀態(tài)寄存器中起始模式標(biāo)志位16的值,來記錄后續(xù)非可信內(nèi)核13調(diào)用返回時(shí)需要返回到可信內(nèi)核12。

③處,所述處理器在非可信模式進(jìn)行中斷請求處理時(shí),接到觸發(fā)模式切換的可信中斷請求,資源保護(hù)模塊首先在非可信模式通過硬件對非可信內(nèi)核的程序狀態(tài)寄存器和程序計(jì)數(shù)器進(jìn)行壓棧保存。然后如步驟④所示,處理器直接進(jìn)入可信模式。⑤處,處理器首先備份可信內(nèi)核12的程序狀態(tài)寄存器到異常保留程序狀態(tài)寄存器中,硬件設(shè)置可信模式程序狀態(tài)寄存器中起始模式標(biāo)志位15的值,來記錄后續(xù)可信模式調(diào)用返回時(shí)需要返回到非可信內(nèi)核13,硬件設(shè)置可信模式程序狀態(tài)寄存器中切換請求標(biāo)志位18的值,來記錄非可信模式到可信模式的切換是通過跨模式中斷實(shí)現(xiàn)的,然后在可信模式進(jìn)行中斷請求處理。⑥處可信模式中斷處理返回時(shí),可信模式程序狀態(tài)寄存器中的可信標(biāo)志位15表示當(dāng)前處于可信模式;起始模式標(biāo)志位16表示之前從非可信模式切換到可信模式;因此可以判斷此時(shí)可信模式需要切換返回到非可信模式。同時(shí)可信模式程序狀態(tài)寄存器中的切換請求標(biāo)志位18表示之前通過中斷方式切換到可信模式,因此可以判定此時(shí)為可信中斷的切換返回,再通過資源保護(hù)模塊14硬件彈?;謴?fù)非可信模式程序狀態(tài)寄存器和程序計(jì)數(shù)器的值,回到起非可信內(nèi)核原有的現(xiàn)場,并如步驟⑦所示繼續(xù)進(jìn)行非可信內(nèi)核的中斷請求處理。⑧處非可信中斷返回時(shí),非可信模式程序狀態(tài)寄存器中的可信標(biāo)志位15表示當(dāng)前處于非可信模式;起始模式標(biāo)志位16表示之前從可信模式切換到非可信模式;因此可以判斷此時(shí)非可信模式需要切換返回可信模式。同時(shí)可信模式程序狀態(tài)寄存器中的硬件壓棧標(biāo)志位17表示之前切換過程中發(fā)生了通用寄存器硬件壓棧,因此返回可信模式后需要進(jìn)行通用寄存器的彈棧,再通過資源保護(hù)模塊14硬件彈棧恢復(fù)可信內(nèi)核的程序狀態(tài)寄存器、程序計(jì)數(shù)器和通用寄存器的值,回到可信內(nèi)核12原有的現(xiàn)場。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指定相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(read-onlymemory,rom)或隨機(jī)存儲(chǔ)記憶體(randomaccessmemory,ram)等。

以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
普兰县| 长乐市| 上犹县| 南川市| 图木舒克市| 绥棱县| 天峻县| 稷山县| 峨眉山市| 福鼎市| 台湾省| 东阿县| 随州市| 黑水县| 阳朔县| 静宁县| 南乐县| 藁城市| 封开县| 张家口市| 铜川市| 黄山市| 岱山县| 滨州市| 绥滨县| 巴南区| 会泽县| 浑源县| 博野县| 卢龙县| 伊宁市| 高碑店市| 德钦县| 湖南省| 玉屏| 卫辉市| 疏附县| 宁波市| 庆元县| 湖口县| 新平|