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

資源管理和安全系統(tǒng)的制作方法

文檔序號:6361542閱讀:162來源:國知局
專利名稱:資源管理和安全系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機系統(tǒng)領(lǐng)域,更具體地說,涉及解決計算機系統(tǒng)中的資源管理和安全性。
背景技術(shù)
多數(shù)通用計算機利用操作系統(tǒng)(“OS”)作為它們的應用與計算機硬件之間的接口。因此,OS通常管理計算機上執(zhí)行的數(shù)據(jù)處理應用程序,以及響應于數(shù)據(jù)應用程序而控制硬件資源。數(shù)據(jù)處理應用是處理數(shù)據(jù)的應用。用戶應用可以是在計算機用戶之一的支持下,直接處理數(shù)據(jù)的數(shù)據(jù)處理應用。系統(tǒng)應用可以是在同一系統(tǒng)或遠程系統(tǒng)上運行的一個或多個用戶或系統(tǒng)應用的支持下,處理數(shù)據(jù)的數(shù)據(jù)處理應用。系統(tǒng)應用通常實現(xiàn)為用戶級應用,它們以特殊權(quán)限運行并一般被稱為系統(tǒng)守護進程(daemon)。此外,可以控制OS其它部分的一部分OS —般稱為OS內(nèi)核(kernel)。OS內(nèi)核一般對應用地址空間和文件具有完全的訪問。

發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個實施例,用于解決計算機系統(tǒng)中的資源管理和安全性的系統(tǒng)可以包括在計算機處理器上執(zhí)行的操作系統(tǒng)內(nèi)核。用于解決計算機系統(tǒng)中的資源管理和安全性的系統(tǒng)可以包括在計算機處理器上執(zhí)行的操作系統(tǒng)內(nèi)核。所述系統(tǒng)還可以包括數(shù)據(jù)處理應用和被配置為在所述計算機處理器上執(zhí)行的中介器。所述中介器可以在所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間工作。所述中介器可以控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問,并且可以限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。所述用戶相關(guān)的應用狀態(tài)可以包括讀取自與系統(tǒng)相連的設備或系統(tǒng)外部設備的數(shù)據(jù),或者包括由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。所述操作系統(tǒng)內(nèi)核可以控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在所述操作系統(tǒng)內(nèi)核的級別處控制所述數(shù)據(jù)處理應用的各部分。所述操作系統(tǒng)內(nèi)核可以被修改為將其功能的一部分移交給所述中介器。所述系統(tǒng)還可以包括與所述計算機處理器通信的數(shù)據(jù)處理資源。
所述中介器對所述計算機處理器和所述數(shù)據(jù)處理資源的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。所述操作系統(tǒng)內(nèi)核對于用戶相關(guān)的應用狀態(tài)具有受限的訪問,因為所述中介器根據(jù)需要在所述用戶相關(guān)的應用狀態(tài)與所述操作系統(tǒng)內(nèi)核的數(shù)據(jù)結(jié)構(gòu)之間執(zhí)行傳輸以實現(xiàn)所述操作系統(tǒng)內(nèi)核的其余功能。所述中介器可以控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。所述數(shù)據(jù)處理資源可以包括計算機存儲器、通信網(wǎng)絡、輸入/輸出設備和數(shù)據(jù)處理設備,其中所述計算機存儲器存儲所述數(shù)據(jù)處理應用、所述中介器、所述操作系統(tǒng)內(nèi)核、一個或多個用戶級共享庫以及系統(tǒng)守護進程,并且所述中介器可以使用存儲器管理單元控制所述操作系統(tǒng)內(nèi)核、數(shù)據(jù)處理應用、用戶級共享庫和系統(tǒng)守護進程的存儲器訪問;并且所述中介器可以虛擬化所述輸入/輸出設備的選擇寄存器并可以使用輸入/輸出存儲器管理單元控制輸入/輸出設備的數(shù)據(jù)傳輸源和數(shù)據(jù)傳輸目的地。所述系統(tǒng)還可以包括實現(xiàn)為系統(tǒng)守護進程并在所述操作系統(tǒng)內(nèi)核之外運行的網(wǎng)際協(xié)議安全模塊,該安全模塊直接與所述數(shù)據(jù)處理應用通信而不與所述操作系統(tǒng)內(nèi)核通信。本發(fā)明的另一方面是一種用于解決計算機系統(tǒng)中的資源管理和安全性的方法。所述方法可以包括通過計算機處理器執(zhí)行中介器,以使所述中介器在操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間執(zhí)行。所述方法還可以包括通過所述中介器控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問。所述方法還可以包括限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。所述方法可以另外包括將所述用戶相關(guān)的應用狀態(tài)限于由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。所述方法還可以包括將所述用戶相關(guān)的應用狀態(tài)限于讀取自與所述系統(tǒng)相連的設備或所述系統(tǒng)外部設備,且由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。所述方法還可以包括通過所述操作系統(tǒng)內(nèi)核控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在所述操作系統(tǒng)內(nèi)核級別處控制所述數(shù)據(jù)處理應用的各部分。所述方法可以另外包括使所述中介器對所述計算機處理器和數(shù)據(jù)處理資源的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。所述方法還可以包括通過所述中介器控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。所述方法還可以包括提供在所述操作系統(tǒng)內(nèi)核之外運行的網(wǎng)際協(xié)議安全模塊,以便直接與所述數(shù)據(jù)處理應用通信而不與所述操作系統(tǒng)內(nèi)核通信。本發(fā)明的另一方面是與有形介質(zhì)耦合以解決數(shù)據(jù)處理系統(tǒng)中的資源管理和安全性的計算機可讀程序代碼。所述計算機可讀程序代碼可被配置為使所述程序通過計算機處理器執(zhí)行中介器以在操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間執(zhí)行。所述計算機可讀程序代碼還可以通過所述中介器控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問。所述計算機可讀程序代碼另外可以限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。在一個實施例中,所述系統(tǒng)可以包括在計算機處理器上執(zhí)行的操作系統(tǒng)內(nèi)核。所述系統(tǒng)還可以包括數(shù)據(jù)處理應用,以及被配置為在所述計算機處理器上執(zhí)行的中介器。所述中介器可以在所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間工作。所述中介器可以對控制所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問以及限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。所述用戶相關(guān)的應用狀態(tài)可以包括由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。此外,所述中介器對所述計算機處理器的訪問權(quán)限可以高于所述操作系統(tǒng)內(nèi)核。


圖1是根據(jù)本發(fā)明的用于解決計算機系統(tǒng)中的資源管理和安全性的系統(tǒng)的示意性框圖;圖2是示出根據(jù)本發(fā)明的方法方面的流程圖;圖3是示出根據(jù)圖2中的方法的方法方面的流程圖;圖4是示出根據(jù)圖2中的方法的方法方面的流程圖;圖5是示出根據(jù)圖2中的方法的方法方面的流程圖;圖6是示出根據(jù)圖2中的方法的方法方面的流程圖;圖7是示出根據(jù)圖2中的方法的方法方面的流程圖;圖8是根據(jù)本發(fā)明的OS內(nèi)核更改的示意性框圖;圖9是根據(jù)本發(fā)明的用戶級文件系統(tǒng)的示意性框圖。
具體實施例方式現(xiàn)在參考圖1,首先描述用于解決計算機系統(tǒng)中的資源管理和安全性的系統(tǒng)10。本領(lǐng)域的技術(shù)人員將理解,系統(tǒng)10是根據(jù)指令集存儲和操縱數(shù)據(jù)的可編程裝置。在一個實施例中,系統(tǒng)10包括通信網(wǎng)絡14,該網(wǎng)絡允許信號在系統(tǒng)10的任意位置上傳輸,在系統(tǒng)10的計算機處理器18與數(shù)據(jù)處理資源29之間和/或在系統(tǒng)10的數(shù)據(jù)處理資源29 (例如,計算機存儲器12、輸入/輸出設備26和其它數(shù)據(jù)處理設備27)之間傳輸。通信網(wǎng)絡14例如為有線和/或無線網(wǎng)絡。通信網(wǎng)絡14例如對于系統(tǒng)10是本地和/或全局的。根據(jù)一個實施例,系統(tǒng)10包括在計算機處理器18上執(zhí)行的操作系統(tǒng)內(nèi)核16。在一個實施例中,系統(tǒng)10包括數(shù)據(jù)處理應用20。在一個實施例中,系統(tǒng)包括被配置為在計算機處理器18上執(zhí)行的中介器24。在一個實施例中,中介器在操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間工作。在一個實施例中,中介器24控制對數(shù)據(jù)處理應用20的用戶相關(guān)的應用狀態(tài)的訪問,并且限制操作系統(tǒng)內(nèi)核16對用戶相關(guān)的應用狀態(tài)的訪問。在一個實施例中,中介器24通過以下方式限制操作系統(tǒng)的訪問⑴通過從操作系統(tǒng)內(nèi)核16接管對存儲器管理單元(MMU)的控制直接進行限制,以及(2)通過從修改后的操作系統(tǒng)和相關(guān)設備驅(qū)動器接管對I/O MMU或可以直接訪問系統(tǒng)存儲器的任何設備(無需由I/O MMU控制它們的訪問)的控制而間接進行限制。在一個實施例中,中介器24對MMU編程,以便通過中介器代碼驗證修改后的操作系統(tǒng)內(nèi)核16對應用存儲器的任何訪問嘗試或?qū)⑦@些嘗試重定向到中介器緩沖區(qū),然后由中介器轉(zhuǎn)發(fā)到應用。在一個實施例中,中介器24驗證內(nèi)核中包括的任何I/O設備26驅(qū)動器的任何嘗試,以便編程I/O MMU,同時在更高級別上重寫或測試不使用I/0MMU的設備的驅(qū)動器,以便可以將它們包括在中介器代碼庫中。在一個實施例中,用戶相關(guān)的應用狀態(tài)包括由數(shù)據(jù)處理應用20在其操作期間產(chǎn)生并且對于中介器24可見而對于操作系統(tǒng)內(nèi)核16不可見的數(shù)據(jù)。在一個實施例中,用戶相關(guān)的應用狀態(tài)包括讀取自與系統(tǒng)10相連的設備或系統(tǒng)10的外部設備,并且可使用I/O設備26 (例如,有線或無線網(wǎng)絡接口)訪問的數(shù)據(jù)。在一個實施例中,操作系統(tǒng)內(nèi)核16控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在操作系統(tǒng)內(nèi)核級別處控制數(shù)據(jù)處理應用20的各部分。在一個實施例中,操作系統(tǒng)內(nèi)核16被修改為將其功能的一部分移交給中介器124。在一個實施例中,系統(tǒng)10還包括與計算機處理器18通信的數(shù)據(jù)處理資源29。數(shù)據(jù)處理資源22包括系統(tǒng)10和/或其它任何計算機系統(tǒng)在輸入、輸出、存儲、操縱數(shù)據(jù),傳輸數(shù)據(jù)或執(zhí)行類似操作期間使用的任何資源。在一個實施例中,與操作系統(tǒng)內(nèi)核16相比,中介器24對計算機處理器18和數(shù)據(jù)處理資源22具有更高訪問權(quán)限。在一個實施例中,操作系統(tǒng)內(nèi)核16對用戶相關(guān)的應用狀態(tài)具有受限的訪問,因為中介器24根據(jù)需要在用戶相關(guān)的應用狀態(tài)與操作系統(tǒng)內(nèi)核的數(shù)據(jù)結(jié)構(gòu)之間執(zhí)行傳輸以實現(xiàn)操作系統(tǒng)內(nèi)核的其余功能。在一個實施例中,中介器24控制操作系統(tǒng)內(nèi)核16與數(shù)據(jù)處理應用20之間的系統(tǒng)調(diào)用和異常。在一個實施例中,數(shù)據(jù)處理資源22包括計算機存儲器12、通信網(wǎng)絡14、輸入/輸出設備26和數(shù)據(jù)處理設備27,例如密碼協(xié)處理器或溫度監(jiān)視傳感器,其中計算機存儲器12存儲數(shù)據(jù)處理應用20、中介器24、操作系統(tǒng)內(nèi)核16、用戶級共享庫22和系統(tǒng)守護進程28。在一個實施例中,中介器24使用處理器18的存儲器管理單元控制操作系統(tǒng)16、數(shù)據(jù)處理應用20、用戶級共享庫22和系統(tǒng)守護進程28對計算機存儲器12的訪問。在一個實施例中,中介器24虛擬化輸入/輸出設備26的選擇寄存器。在一個實施例中,中介器24使用計算機處理器18的輸入/輸出存儲器管理單元控制輸入/輸出設備26的數(shù)據(jù)傳輸源和數(shù)據(jù)傳輸目的地。在一個實施例中,系統(tǒng)10還包括實現(xiàn)為系統(tǒng)守護進程28并在操作系統(tǒng)內(nèi)核16以外運行的網(wǎng)際協(xié)議安全模塊,該安全模塊直接與數(shù)據(jù)處理應用20通信而不與操作系統(tǒng)內(nèi)核通信。本發(fā)明的另一方面是用于解決計算機系統(tǒng)中的資源管理和安全性的方法,現(xiàn)在參考圖2中的流程圖30描述此方法。此方法從方框32開始并且可以包括在方框34,通過計算機處理器執(zhí)行中介器以在操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間執(zhí)行。此方法還可以包括在方框36,通過中介器控制對數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問。此方法還可以包括在方框38,限制操作系統(tǒng)內(nèi)核對用戶相關(guān)的應用狀態(tài)的訪問。此方法在方框40結(jié)束。在現(xiàn)在參考圖3的流程圖42進行描述的另一方法實施例中,此方法從方框44開始。此方法可以包括圖2中的方框34、36和38處的步驟。此方法另外可以包括在方框46,將用戶相關(guān)的應用狀態(tài)限于由數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于中介器可見而對于操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。此方法另外可以包括在方框47,將用戶相關(guān)的應用狀態(tài)限于讀取自與系統(tǒng)10相連的設備或系統(tǒng)10的外部設備的數(shù)據(jù),所讀取的數(shù)據(jù)對于中介器可見,而對于操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。此方法在方框48結(jié)束。在現(xiàn)在參考圖4的流程圖50進行描述的另一方法實施例中,此方法從方框52開始。此方法可以包括圖2中的方框34、36和38處的步驟。此方法還可以包括在方框54,通過操作系統(tǒng)內(nèi)核控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在操作系統(tǒng)內(nèi)核級別處控制數(shù)據(jù)處理應用的各部分。此方法在方框56結(jié)束。在現(xiàn)在參考圖5的流程圖58進行描述的另一方法實施例中,此方法從方框60開始。此方法可以包括圖2中的方框34、36和38處的步驟。此方法還可以包括在方框62,使所述中介器對所述計算機處理器和數(shù)據(jù)處理資源的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。此方法在方框64結(jié)束。在現(xiàn)在參考圖6的流程圖66進行描述的另一方法實施例中,此方法從方框68開始。此方法可以包括圖2中的方框34、36和38處的步驟。此方法還可以包括在方框70,通過所述中介器控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。所述方法在方框72結(jié)束。在現(xiàn)在參考圖7的流程圖74進行描述的另一方法實施例中,此方法從方框76開始。此方法可以包括圖2中的方框34、36和38處的步驟。此方法還可以包括在方框78,提供實現(xiàn)為系統(tǒng)守護進程并在操作系統(tǒng)內(nèi)核以外運行的網(wǎng)際協(xié)議安全模塊,以使其直接與所述數(shù)據(jù)處理應用通信而不與所述操作系統(tǒng)內(nèi)核通信。此方法在方框80結(jié)束。本發(fā)明的另一方面是與有形介質(zhì)耦合以解決圖8所示的數(shù)據(jù)處理系統(tǒng)中的資源管理和安全性的計算機可讀程序代碼。在一個實施例中,所述計算機可讀程序代碼被配置為使程序通過計算機處理器18執(zhí)行中介器24,從而使中介器24在操作系統(tǒng)內(nèi)核16與數(shù)據(jù)處理應用20之間執(zhí)行。在一個實施例中,所述計算機可讀程序代碼還通過中介器24控制對數(shù)據(jù)處理應用20的用戶相關(guān)的應用狀態(tài)的訪問。在一個實施例中,所述計算機可讀程序代碼限制操作系統(tǒng)內(nèi)核16對用戶相關(guān)的應用狀態(tài)的訪問。在一個實施例中,所述系統(tǒng)包括在計算機處理器18上執(zhí)行的操作系統(tǒng)內(nèi)核16。在一個實施例中,系統(tǒng)10還包括數(shù)據(jù)處理應用20,以及被配置為在計算機處理器18上執(zhí)行的中介器24。在一個實施例中,中介器24在操作系統(tǒng)內(nèi)核16與數(shù)據(jù)處理應用20之間工作。在一個實施例中,中介器24控制對數(shù)據(jù)處理應用20的用戶相關(guān)的應用狀態(tài)的訪問并限制操作系統(tǒng)內(nèi)核16對用戶相關(guān)的應用狀態(tài)的訪問。在一個實施例中,用戶相關(guān)的應用狀態(tài)包括由數(shù)據(jù)處理應用20在其操作期間產(chǎn)生并且對于中介器24可見而對于操作系統(tǒng)內(nèi)核16不可見的數(shù)據(jù)。在一個實施例中,用戶相關(guān)的應用狀態(tài)包括讀取自與系統(tǒng)10相連的設備或系統(tǒng)10的外部設備并且對于中介器24可見而對于操作系統(tǒng)內(nèi)核16不可見的數(shù)據(jù)。在一個實施例中,與操作系統(tǒng)內(nèi)核16相比,中介器24對計算機處理器18具有更高訪問權(quán)限。在一個實施例中,受中介器24保護的用戶狀態(tài)被分為⑴應用在其執(zhí)行期間生成的狀態(tài),以及⑵讀入應用地址空間的狀態(tài),基本上為應用代碼、其變量的初始值及其全部輸入。綜上所述,系統(tǒng)10例如解決了計算機系統(tǒng)中的資源管理和安全性。例如,商用操作系統(tǒng)(“OS”)龐大復雜。到目前為止,根據(jù)全面的規(guī)范集證明這些操作系統(tǒng)正確的嘗試均告失敗。此外,在過去的幾年中,這些系統(tǒng)的全部/多數(shù)都受到網(wǎng)絡發(fā)起攻擊的威脅。此外,沒有一種現(xiàn)有的計算機和OS架構(gòu)公開將操作系統(tǒng)的資源保護與資源管理功能分開。更具體地說,不存在這樣一種現(xiàn)有架構(gòu)公開其中對操作系統(tǒng)的威脅僅導致拒絕應用20訪問它們需要訪問且通常有權(quán)訪問的計算機數(shù)據(jù)處理資源29和計算機處理器18,并且例如不會損失應用20的任何數(shù)據(jù)或不會威脅應用代碼和數(shù)據(jù)的安全。
在一個實施例中,系統(tǒng)10可以利用(I)對現(xiàn)有商用OS的內(nèi)核16以及對現(xiàn)有處理器/芯片組18架構(gòu)的最少更改,(2)添加可證明正確的小型可信系統(tǒng)軟件組件24,以及
(3)對系統(tǒng)軟件的其余部分以及對應用20的最少更改,該系統(tǒng)例如優(yōu)選地被限于修改系統(tǒng)庫,所述系統(tǒng)庫用于將應用與內(nèi)核及新增的可信系統(tǒng)軟件組件通過接口連接。在一個實施例中,內(nèi)核代碼是商用或?qū)W習操作系統(tǒng)中的OS內(nèi)核的一部分。它以超級用戶權(quán)限運行并為底層計算機系統(tǒng)10上運行的所有(用戶和系統(tǒng))應用提供支持。超級用戶模式是權(quán)限最大的級別,其中軟件在典型的計算機系統(tǒng)上運行,所述計算機系統(tǒng)不對虛擬化進行硬件支持或禁用此支持功能。在權(quán)限最大的模式下運行的軟件可以訪問系統(tǒng)10的所有硬件資源。在系統(tǒng)10中,中介器24代碼以權(quán)限最大的級別運行,修改后的內(nèi)核代碼在權(quán)限稍小的模式下運行。這意味著中介器24代碼可以訪問所有硬件資源,修改后的內(nèi)核16可訪問的硬件資源少于中介器(同樣少于原始內(nèi)核在未修改/原始計算機系統(tǒng)中訪問的硬件資源),應用在權(quán)限比修改后的內(nèi)核代碼更小的模式下運行。本領(lǐng)域中的最新工作基于完全不同的硬件架構(gòu),此架構(gòu)要求對現(xiàn)有操作系統(tǒng)及應用實現(xiàn)進行大量更改,或者需要虛擬機監(jiān)視器來封裝未修改的內(nèi)核及更改最少的應用。這兩種方法嚴重依賴于密碼學,呈現(xiàn)出嚴重的性能退化,并且不能完全保護本地文件系統(tǒng)中的數(shù)據(jù)。較舊的方法要求全新的操作系統(tǒng)實現(xiàn)且從未在大型安裝上成功測試。參考圖8,在所提出架構(gòu)的一個實施例中,修改后的操作系統(tǒng)內(nèi)核16無法訪問它所運行的任何應用20的狀態(tài)(地址空間加寄存器),并且其對本地文件系統(tǒng)的訪問被限于其真正需要訪問的文件(例如,當前的Linux內(nèi)核只需訪問/sbin/init、/etc/init、/bin/sh或/bin/init應用文件之一便可正確啟動)。在一個實施例中,應用20與內(nèi)核16之間的接口(包括系統(tǒng)調(diào)用和異常)被以高于內(nèi)核的權(quán)限級別運行的小型軟件層介入。這個被稱為中介器34的可信軟件組件使用存儲器管理單元(“MMU”)限制內(nèi)核訪問本地應用20的地址空間,它被設計為減少內(nèi)核16代碼更改的數(shù)量。在一個實施例中,文件系統(tǒng)實現(xiàn)大部分被從只能訪問小部分根文件系統(tǒng)(例如,/sbin/init程序)的內(nèi)核16中刪除。本地塊設備的文件系統(tǒng)在用戶級共享庫中實現(xiàn),其中常駐內(nèi)核的塊設備驅(qū)動器控制設備,但是中介器24通過使用(可能地)增強型輸入/輸出存儲器管理單元(“ I0MMU”)并通過虛擬化相連的塊設備控制器的選擇寄存器來控制這些設備的數(shù)據(jù)傳輸源和傳輸目的地。在一個實施例中,架構(gòu)阻止內(nèi)核16訪問處理器18寄存器中存儲的應用20狀態(tài),即使在處理執(zhí)行應用20代碼期間發(fā)生的中斷時也是如此。與之對照,現(xiàn)有架構(gòu)在處理中斷時將處理器狀態(tài)保存在內(nèi)核地址空間內(nèi),這允許受到威脅的內(nèi)核訪問處理器寄存器中存儲的應用狀態(tài)并在從中斷返回時加載這些寄存器中的污染值。在一個實施例中,將網(wǎng)際協(xié)議安全28 (“IPsec”)實現(xiàn)從內(nèi)核16移交給專用用戶級系統(tǒng)應用(守護進程),該進程使用共享存儲器22直接與本地應用20通信而無需內(nèi)核介入。在一個實施例中,使用IPsec的應用20將針對網(wǎng)絡堆棧的較高層使用庫實現(xiàn)。在一個實施例中,原始網(wǎng)絡堆棧保留在內(nèi)核16內(nèi),因為希望應用20例如針對它們的多數(shù)敏感網(wǎng)絡通信使用安全套接字層(“SSL”)。在一個實施例中,系統(tǒng)100架構(gòu)不使用加密來阻止應用20數(shù)據(jù)例如被OS內(nèi)核16或其它(系統(tǒng)或非系統(tǒng))應用20訪問。例如,系統(tǒng)10并非旨在提高內(nèi)核16對攻擊的抵抗力,而是旨在阻止攻擊者在控制內(nèi)核之后訪問應用20數(shù)據(jù),因為中介器24不能受到威脅。在一個實施例中,系統(tǒng)10要求對現(xiàn)有內(nèi)核16和系統(tǒng)軟件20進行適度更改,并對現(xiàn)有處理器架構(gòu)進行略微擴展以實現(xiàn)此目標。在一個實施例中,每個軟件或硬件機制都是相關(guān)但獨立的公開的主題,所述軟件或硬件機制包括但不限于額外的權(quán)限級別(可以快速、安全地控制到較低/內(nèi)核級的傳輸)和根據(jù)塊或超級塊訪問權(quán)限監(jiān)管來自相連的塊設備的訪問或?qū)ο噙B的塊設備的訪問、硬件中的安全中斷狀態(tài)保存和恢復、用戶級分布式文件系統(tǒng)實現(xiàn),以及增強型IOMMU架構(gòu),所有這些均可由系統(tǒng)10使用。在一個實施例中,中介器24為相對較小的軟件組件,它同時對內(nèi)核16和當前應用20地址空間具有訪問權(quán)限,它介入系統(tǒng)調(diào)用的參數(shù)和結(jié)果傳遞。在一個實施例中,包括應用返回地址的應用20寄存器保存在中介器24的本地存儲器中。在一個實施例中,中介器24代碼準備系統(tǒng)調(diào)用代碼的內(nèi)核16地址空間中的堆棧表項并將處理器18切換到內(nèi)核,即較低的權(quán)限級別以開始執(zhí)行系統(tǒng)調(diào)用代碼。在一個實施例中,為了安全地將控制移交給較低的權(quán)限代碼并返回,處理器18架構(gòu)可能必須通過確保系統(tǒng)調(diào)用如其語義指定的那樣最終返回中介器24的機制進行增強。更具體地說,fork O /clone O和abort()/exit()系統(tǒng)調(diào)用可能需要中介器24設置兩個返回路徑或不設置任何返回路徑,而系統(tǒng)調(diào)用的其余部分通常只需要一個返回路徑。在一個實施例中,中介器24也會介入異常處理。在一個實施例中,中介器24負責虛擬化本地存儲器,檢查(和修改)OS內(nèi)核16維護的進程表。在最新(x86)處理器架構(gòu)上的備選實現(xiàn)中,中介器24可以利用它們的增強型MMU,這些MMU為了有效虛擬化而設計(AMD的嵌套頁表和Intel的擴展頁表)。此方法可以減少為了阻止應用20狀態(tài)被受到威脅的內(nèi)核訪問而要求的OS內(nèi)核16更改,但是啟用硬件的虛擬機監(jiān)視器(“VMM”)可能不能(有效地)托管最終形成的系統(tǒng)10。在現(xiàn)有OS內(nèi)核中,當處理器在執(zhí)行應用代碼期間中斷時,即,當處于用戶模式時,應用寄存器保存在內(nèi)核地址空間內(nèi)。受到威脅的內(nèi)核可以訪問這些值或使用污染的寄存器值(程序計數(shù)器和堆棧指針)恢復中斷的應用,所述污染的寄存器值被設計為朝著向攻擊者透露更多狀態(tài)的方向修改應用行為。系統(tǒng)10架構(gòu)包括若干備選方案,包括但不限于運行中介器24地址空間內(nèi)的中斷處理機的下半部分,或者修改處理器18以(I)分別在發(fā)生中斷之后和恢復應用20之前自動加密和解密寄存器,或者(2)在處理中斷時使用內(nèi)核16不能訪問的存儲單元存儲應用狀態(tài)(保存之后,還必須清除寄存器)。在一個實施例中,如果需要調(diào)試支持,則在最高優(yōu)先級上執(zhí)行的指令能夠讀取和修改已保存的寄存器的內(nèi)容。在一個實施例中,當不需要調(diào)試支持時,可以禁用此能力。在一個實施例中,為了阻止OS內(nèi)核16訪問應用20數(shù)據(jù),所支持的本地文件系統(tǒng)的實現(xiàn)從內(nèi)核移交給用戶級共享庫。在一個實施例中,數(shù)據(jù)塊(來自本地盤或支持文件系統(tǒng)的其它塊設備)是直接訪問到應用地址空間或從應用地址空間訪問的直接存儲器。在一個實施例中,常駐內(nèi)核16的設備驅(qū)動器編程傳輸,但是中介器24通過虛擬化IOMMU和塊設備控制器的選擇寄存器來控制每次傳輸?shù)脑春湍康牡亍榱藢崿F(xiàn)此目的,以及為了阻止通過交換設備發(fā)生信息泄露,中介器24在每個相連的塊設備的塊或超級塊級別處維護訪問權(quán)限列表。在一個實施例中,在系統(tǒng)10啟動之間,此信息存儲在外部并且信息的完整性使用保護中介器24和內(nèi)核16代碼的同一機制進行保護,也可能借助專用防篡改硬件。在一個實施例中,不借助內(nèi)核16介入,直接與應用20通信的應用級組件處理不能指定清晰所有權(quán)的磁盤塊,例如包含共享元數(shù)據(jù)的塊,所述共享元數(shù)據(jù)指由多個用戶擁有的數(shù)據(jù)塊。同一組件例如實施文件鎖定服務。在一個實施例中,內(nèi)核16保留對網(wǎng)絡堆棧的所有權(quán),因為應用20可使用SSL進行安全通信。在一個實施例中,內(nèi)核IPsec28實現(xiàn)可被移出內(nèi)核16 (在單獨的應用中或在中介器24代碼庫和地址空間內(nèi))。在一個實施例中,優(yōu)選地使用基于應用20的實現(xiàn),其中中介器24介入IPsec28用戶級實現(xiàn)與密碼加速器設備(如果有)之間。在一個實施例中,中介器24包括串行驅(qū)動器和最小內(nèi)核16監(jiān)視/調(diào)試功能。即使添加這些內(nèi)容之后,中介器的較小大小也使它更適合形式化驗證。 在一個實施例中,當系統(tǒng)10初始化時,由弓丨導加載器將中介器24復制到主存儲器中并在主存儲器中啟動。在一個實施例中,中介器24負責初始化修改后的OS內(nèi)核16。在系統(tǒng)關(guān)閉時,中介器24例如在內(nèi)核16之后被關(guān)閉。需要指出,OS內(nèi)核對應用地址空間和文件具有完全訪問權(quán)限。因此,損壞的內(nèi)核將所有應用狀態(tài)(內(nèi)部數(shù)據(jù)結(jié)構(gòu)和文件)暴露給攻擊者?,F(xiàn)有的工作嘗試阻止內(nèi)核運行未授權(quán)的代碼或嘗試對內(nèi)核地址空間中運行的模塊實施安全屬性。與之對照,在一個實施例中,系統(tǒng)10使用中介器24,中介器24是一個系統(tǒng)軟件組件,旨在與修改后的OS內(nèi)核16 —起工作以限制修改后的OS內(nèi)核16對本地應用20的地址空間以及與計算機系統(tǒng)相連的存儲設備22的訪問。在一個實施例中,中介器24的架構(gòu)要求對現(xiàn)有內(nèi)核16架構(gòu)進行適度更改,所述更改專注于應用/內(nèi)核接口和虛擬存儲器管理。在一個實施例中,在啟用中介器24的OS內(nèi)核16上運行的應用20仍會受到拒絕服務攻擊。在此方面,中介器24補充現(xiàn)有的工作來增強底層OS內(nèi)核16的可靠性。在一個實施例中,中介器24是相對較小的系統(tǒng)軟件組件,它以高于OS內(nèi)核16的權(quán)限運行,并且介入內(nèi)核與應用20之間的合法交互并限制其它所有內(nèi)核對應用數(shù)據(jù)的訪問(根據(jù)設計,已阻止應用訪問現(xiàn)有OS架構(gòu)中的敏感內(nèi)核數(shù)據(jù))。在一個實施例中,最大的中介器24組件通過在應用20與內(nèi)核16之間傳遞參數(shù)和結(jié)果(可以訪問這兩者的地址空間時)以及通過在內(nèi)核模式下取消當前應用的地址空間與內(nèi)核地址空間的映射來處理系統(tǒng)調(diào)用、異常和信號激活。在一個實施例中,MMU管理從內(nèi)核16移交給中介器24。在一個實施例中,中介器24中的MMU管理與虛擬機監(jiān)視器(“VMM”)中的等價功能共用特定元件,它還保護應用20免受惡意內(nèi)核的訪問。攻擊實例包括但不限于嘗試映射內(nèi)核16地址空間內(nèi)的應用頁、在應用20之間建立未被請求的共享存儲器區(qū)域、為了將一個應用的信息泄露給另一應用而擴展合法的共享存儲器區(qū)域、在不將新頁設置為零的情況下將它們分配給應用,可能作為一系列換入/換出操作的結(jié)果使用非法頁更改應用的合法頁幀等。在一個實施例中,為了防止此類攻擊,系統(tǒng)10將有關(guān)地址空間更改的應用20的系統(tǒng)調(diào)用和異常(例如,寫時復制)與應用空間地址的更改以及MMU管理緊密地進行關(guān)聯(lián)。
在一個實施例中,其它中介器24組件通過實施塊級訪問權(quán)限來虛擬化本地連接的存儲設備并阻止中斷處理機(在內(nèi)核16地址空間內(nèi)運行)訪問處理器18寄存器中存儲的應用狀態(tài)(當處理器在用戶模式下中斷時)。在一個實施例中,系統(tǒng)10與用戶級文件系統(tǒng)(在相關(guān)公開中進行描述)進行協(xié)作以安全地啟動新進程。中介器24包括至少一個用于可信I/O設備26的簡單驅(qū)動器,例如用于加載和啟動、重新啟動和監(jiān)視內(nèi)核16活動和完整性的串行接口與基本基元(primitive)。在一個實施例中,中介器24以高于運行OS內(nèi)核16所用的優(yōu)先級利用處理器18執(zhí)行模式。例如,需要一個額外的模式來增強只有兩個執(zhí)行模式的處理器架構(gòu),以便運行中介器24。對于具有兩個以上模式,但是針對其在最高優(yōu)先級模式中配置內(nèi)核16的處理器(例如,Intel的x86系列或AMD)而言,內(nèi)核或者被修改為在較低級別上運行(比如說I而非0),或者中介器24利用例如x86處理器系列中新成員的虛擬化能力(類似地,在非x86處理器上,中介器24可以利用針對有效虛擬化設計的硬件能力)。后一種方法防止最終形成的系統(tǒng)(修改后的內(nèi)核16+中介器24系統(tǒng)軟件)被現(xiàn)有VMM之一托管,所述VMM被設計為例如利用添加到處理器的虛擬化支持。在一個實施例中,中介器24通過捕獲應用20系統(tǒng)調(diào)用、異常和信號處理來隔離應用20的地址空間與內(nèi)核16,其中僅對現(xiàn)有內(nèi)核進行少量更改。例如,在發(fā)生這些事件時,中介器24處理MMU以將應用20或內(nèi)核16限于它們自己的地址空間。根據(jù)事件的性質(zhì)一例如系統(tǒng)10調(diào)用、系統(tǒng)調(diào)用返回、異常調(diào)用或返回、信號調(diào)用等,與修改后的內(nèi)核16協(xié)作的中介器24例如在所涉及的兩個地址空間之間執(zhí)行參數(shù)和結(jié)果傳遞。在一個實施例中,內(nèi)核16被修改為將MMU處理轉(zhuǎn)移到中介器24。在一個實施例中,如果處理器18架構(gòu)提供額外的(即,未被內(nèi)核16使用)可用于確保地址空間隔離的MMU功能,則中介器24可以利用此功能,這將減少內(nèi)核更改量,但是也會阻止其它系統(tǒng)10組件(例如VMM)使用此額外的MMU功能。在一個實施例中,為了減小內(nèi)核16的更改程度,中介器24可以管理常駐應用20的對象/緩沖區(qū)的代理對象/緩沖區(qū)并相應地根據(jù)系統(tǒng)10調(diào)用修改指針。為了限制額外系統(tǒng)10調(diào)用開銷,中介器24例如可以包括實現(xiàn)一些簡短和常用的系統(tǒng)調(diào)用。在系統(tǒng)10調(diào)用或異常調(diào)用時將控制從中介器24轉(zhuǎn)移給內(nèi)核16的操作向內(nèi)核隱藏了任何對于完成調(diào)用不必要的應用相關(guān)信息(例如,應用20中調(diào)用系統(tǒng)調(diào)用或觸發(fā)異常的位置)。在一個實施例中,中介器24管理所有本地塊設備以阻止內(nèi)核16訪問本地文件系統(tǒng)(多個)中存儲的應用20數(shù)據(jù)。在一個實施例中,只有設備驅(qū)動器中在功能上處理數(shù)據(jù)傳輸?shù)牟糠直仨殢某qv內(nèi)核16的驅(qū)動器轉(zhuǎn)移到中介器24 ;設備測試、初始化和關(guān)閉仍可由常駐內(nèi)核的代碼完成。為此,中介器24控制例如所有用于配置/啟動數(shù)據(jù)傳輸?shù)脑O備寄存器。中介器24維護每個塊設備的訪問權(quán)限(R/W)映射以幫助例如數(shù)據(jù)訪問和程序啟動/執(zhí)行。在一個備選實施例中,將IOMMU管理(如果存在)從內(nèi)核16轉(zhuǎn)移到中介器24,而設備管理(設備驅(qū)動器,可能經(jīng)過略微修改)保留在內(nèi)核中。在一個實施例中,中介器24和內(nèi)核16協(xié)作以實現(xiàn)用戶級DMA,S卩,直接從磁盤塊到選定的(釘扎的)應用20頁。在一個實施例中,受保護的用戶級DMA支持架構(gòu)的庫/用戶級文件系統(tǒng)組件,所述架構(gòu)是單獨但相關(guān)的公開的主題。在一個實施例中,中介器24防止當處理器18在用戶模式下執(zhí)行中斷時處理器18狀態(tài)中捕獲的應用20信息釋放到內(nèi)核16,其方式為:處理最低級別的中斷處理(調(diào)用和返回),即處理中斷服務例程(“ISR”)的下半部分,并且僅在將此信息保存在中介器地址空間內(nèi)并清除寄存器之后才將控制轉(zhuǎn)移給內(nèi)核。在備選實施例中,修改后的處理器18架構(gòu)(所述架構(gòu)是單獨但相關(guān)的公開的主題)可以提供相同的保護,并且?guī)缀鯖]有任何負面性能影響??傊薪槠?4隔離例如應用20、網(wǎng)絡堆棧加驅(qū)動器,以及文件系統(tǒng)。即使當文件系統(tǒng)具有小型應用級系統(tǒng)組件(守護進程)時也是如此,中介器24阻止此守護進程執(zhí)行任何網(wǎng)絡相關(guān)系統(tǒng)10調(diào)用,更具體地說,阻止其執(zhí)行任何例如會通過可能損壞的內(nèi)核16,直接或間接地將文件系統(tǒng)相關(guān)信息泄露給遠程機器的系統(tǒng)調(diào)用。本領(lǐng)域的技術(shù)人員將認識到,本發(fā)明的各方面可以體現(xiàn)為系統(tǒng)、方法或計算機程序產(chǎn)品。因此,本發(fā)明的各方面可以具體實現(xiàn)為以下形式,即,可以是完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等)、或者本文一般稱為“電路”、“模塊”或“系統(tǒng)”的軟件部分與硬件部分的組合。此外,本發(fā)明的各方面可以采取體現(xiàn)在一個或多個計算機可讀介質(zhì)(在介質(zhì)中包含計算機可讀程序代碼)中的計算機程序產(chǎn)品的形式??梢圆捎靡粋€或多個計算機可讀介質(zhì)的任意組合。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)。計算機可讀存儲介質(zhì)例如可以是一但不限于一電、磁、光、電磁、紅外線、或半導體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導線的電連接、便攜式計算機磁盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、可擦除可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文檔的上下文中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。計算機可讀信號介質(zhì)可以包括其中包含計算機可讀程序代碼(例如,在基帶中或作為載波的一部分)的傳播數(shù)據(jù)信號。此類傳播信號可以采取各種形式中的任一種,包括但不限于電磁、光或其中任意適合的組合。計算機可讀信號介質(zhì)可以是任何不屬于計算機可讀存儲介質(zhì)并且能夠傳送、傳播或傳輸由指令執(zhí)行系統(tǒng)、裝置或設備使用或與指令執(zhí)行系統(tǒng)、裝置或設備結(jié)合的程序的計算機可讀介質(zhì)??梢允褂萌魏芜m當?shù)慕橘|(zhì)(包括但不限于無線、線纜、光纜、RF等或上述任意適合的組合)來傳輸包含在計算機可讀介質(zhì)中的程序代碼。用于執(zhí)行本發(fā)明的各方面的操作的計算機程序代碼可以使用包含一種或多種編程語言的任意組合來編寫,所述編程語言包括諸如Java、Smalltalk、C++之類的面向?qū)ο蟮木幊陶Z言以及諸如“C”編程語言或類似的編程語言之類的常規(guī)過程編程語言。所述程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為獨立的軟件包、部分地在用戶計算機上并部分地在遠程計算機上執(zhí)行,或者完全地在遠程計算機或服務器上執(zhí)行。在后者的情況中,所述遠程計算機可以通過包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)的任何類型網(wǎng)絡與用戶的計算機相連,或者可以與外部計算機進行連接(例如,使用因特網(wǎng)服務提供商通過因特網(wǎng)連接)。下面將參考根據(jù)本發(fā)明的實施例的方法、裝置(系統(tǒng))和計算機程序產(chǎn)品的流程圖和/或方塊圖對本發(fā)明的各方面進行描述。將理解,所述流程圖和/或方塊圖的每個方塊以及所述流程圖和/或方塊圖中的方塊的組合可以由計算機程序指令來實現(xiàn)。這些計算機程序指令可以被提供給通用計算機、專用計算機或其他可編程數(shù)據(jù)處理裝置的處理器以產(chǎn)生機器,以便通過所述計算機或其他可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的所述指令產(chǎn)生用于實現(xiàn)在一個或多個流程圖和/或方塊圖方塊中指定的功能/操作的裝置。也可以將這些計算機程序指令存儲在能使得計算機、其它可編程數(shù)據(jù)處理裝置、或其它設備以特定方式工作的計算機可讀介質(zhì)中,這樣,存儲在計算機可讀介質(zhì)中的指令就產(chǎn)生出一個包括實現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的指令裝置的制造品O也可以將計算機程序指令加載到計算機、其它可編程數(shù)據(jù)處理裝置、或其它設備上,使得在計算機、其它可編程數(shù)據(jù)處理裝置或其它設備上執(zhí)行一系列操作步驟,以產(chǎn)生計算機實現(xiàn)的過程,從而使得在計算機或其它可編程裝置上執(zhí)行的指令能夠提供實現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的過程。附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。盡管描述了本發(fā)明的優(yōu)選實施例,但是將理解,本領(lǐng)域的技術(shù)人員現(xiàn)在和將來都可以做出落入下面權(quán)利要求的范圍內(nèi)的各種改進和增強。這些權(quán)利要求應被理解為對先前描述的發(fā)明維持適當?shù)谋Wo。
權(quán)利要求
1.一種系統(tǒng),包括: 操作系統(tǒng)內(nèi)核,其被配置為在計算機處理器上執(zhí)行;以及 中介器,其被配置為在所述計算機處理器上執(zhí)行并在所述操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間工作,所述中介器用于控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問以及用于限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。
2.根據(jù)權(quán)利要求1的系統(tǒng),其中所述用戶相關(guān)的應用狀態(tài)包括由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。
3.根據(jù)權(quán)利要求1的系統(tǒng),其中所述操作系統(tǒng)內(nèi)核控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在所述操作系統(tǒng)內(nèi)核的級別處控制所述數(shù)據(jù)處理應用的各部分。
4.根據(jù)權(quán)利要求1的系統(tǒng),其中所述操作系統(tǒng)內(nèi)核已被修改以將其功能的一部分移交給所述中介器;并且還包括與所述計算機處理器通信的數(shù)據(jù)處理資源。
5.根據(jù)權(quán)利要求4的系統(tǒng),其中所述中介器對所述計算機處理器和所述數(shù)據(jù)處理資源的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。
6.根據(jù)權(quán)利要求4的系統(tǒng),其中所述操作系統(tǒng)內(nèi)核對于用戶相關(guān)的應用狀態(tài)具有受限的訪問,因為所述中介器根據(jù)需要在所述用戶相關(guān)的應用狀態(tài)與所述操作系統(tǒng)內(nèi)核的數(shù)據(jù)結(jié)構(gòu)之間執(zhí)行傳輸以實現(xiàn)所述操作系統(tǒng)內(nèi)核的其余功能。
7.根據(jù)權(quán)利要求1的系統(tǒng),其中所述中介器被配置為控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。
8.根據(jù)權(quán)利要求7的系統(tǒng),包括: 與所述計算機處理器通信的 數(shù)據(jù)處理資源;以及 其中所述數(shù)據(jù)處理資源包括計算機存儲器、通信網(wǎng)絡、輸入/輸出設備和數(shù)據(jù)處理設備,其中所述計算機存儲器被配置為存儲所述數(shù)據(jù)處理應用、中介器、操作系統(tǒng)內(nèi)核、用戶級共享庫以及系統(tǒng)守護進程;并且其中所述中介器被配置為使用存儲器管理單元控制所述操作系統(tǒng)內(nèi)核、所述數(shù)據(jù)處理應用、所述用戶級共享庫和所述系統(tǒng)守護進程的存儲器訪問權(quán)限;并且其中所述中介器被配置為虛擬化輸入/輸出設備的選擇寄存器并使用輸入/輸出存儲器管理單元來控制輸入/輸出設備的數(shù)據(jù)傳輸源和數(shù)據(jù)傳輸目的地。
9.根據(jù)權(quán)利要求1的系統(tǒng),還包括在所述操作系統(tǒng)內(nèi)核之外的網(wǎng)際協(xié)議安全模塊,其被配置為作為系統(tǒng)守護進程運行,以便直接與所述數(shù)據(jù)處理應用通信而不與所述操作系統(tǒng)內(nèi)核通信。
10.一種方法,包括: 將中介器配置為在操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間執(zhí)行; 通過所述中介器控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問;以及 限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。
11.根據(jù)權(quán)利要求10的方法,還包括將所述用戶相關(guān)的應用狀態(tài)配置為限于由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。
12.根據(jù)權(quán)利要求10的方法,還包括配置所述操作系統(tǒng)內(nèi)核以控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在所述操作系統(tǒng)內(nèi)核的級別處控制所述數(shù)據(jù)處理應用的各部分。
13.根據(jù)權(quán)利要求10的方法,還包括配置所述中介器,以便所述中介器對所述計算機處理器和數(shù)據(jù)處理資源的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。
14.根據(jù)權(quán)利要求10的方法,還包括配置所述中介器以控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。
15.根據(jù)權(quán)利要求10的方法,還包括配置在所述操作系統(tǒng)內(nèi)核之外的網(wǎng)際協(xié)議安全模塊,以便直接與所述數(shù)據(jù)處理應用通信而不與所述操作系統(tǒng)內(nèi)核通信。
16.一種包含在計算機可讀存儲介質(zhì)中的計算機程序產(chǎn)品,包括: 與所述計算機可讀存儲介質(zhì)耦合的計算機可讀程序代碼,其用于解決數(shù)據(jù)處理系統(tǒng)中的資源管理和安全性,所述計算機可讀程序代碼被配置為使所述程序執(zhí)行以下操作: 通過計算機處理器執(zhí)行中介器以便在操作系統(tǒng)內(nèi)核與數(shù)據(jù)處理應用之間執(zhí)行; 通過所述中介器控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問;以及 限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問。
17.根據(jù)權(quán)利要求16的計算機程序產(chǎn)品,還包括被配置為執(zhí)行以下操作的程序代碼:將所述用戶相關(guān)的應用狀態(tài)限于由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù)。
18.根據(jù)權(quán)利要求16的計算機程序產(chǎn)品,還包括被配置為執(zhí)行以下操作的程序代碼:通過所述操作系統(tǒng)內(nèi)核控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在所述操作系統(tǒng)內(nèi)核的級別處控制所述數(shù)據(jù)處理應用的各部分。
19.根據(jù)權(quán)利要求16的計算機程序產(chǎn)品,還包括被配置為執(zhí)行以下操作的程序代碼:使所述中介器對所述計算機處理器和數(shù)據(jù)處理資源的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。
20.根據(jù)權(quán)利要求16的計算機程序產(chǎn)品,還包括被配置為執(zhí)行以下操作的程序代碼:通過所述中介器控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。
21.根據(jù)權(quán)利要求16的計算機程序產(chǎn)品,還包括被配置為執(zhí)行以下操作的程序代碼:提供在所述操作系統(tǒng)內(nèi)核之外的網(wǎng)際協(xié)議安全模塊,以便直接與所述數(shù)據(jù)處理應用通信而不與所述操作系統(tǒng)內(nèi)核通信。
22.—種系統(tǒng),包括: 操作系統(tǒng)內(nèi)核,其被配置為在計算機處理器上執(zhí)行; 數(shù)據(jù)處理應用;以及 中介器,其被配置為在所述計算機處理器上執(zhí)行并在所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間工作,所述中介器被配置為控制對所述數(shù)據(jù)處理應用的用戶相關(guān)的應用狀態(tài)的訪問以及限制所述操作系統(tǒng)內(nèi)核對所述用戶相關(guān)的應用狀態(tài)的訪問,所述用戶相關(guān)的應用狀態(tài)數(shù)據(jù)包括由所述數(shù)據(jù)處理應用在其操作期間產(chǎn)生并且對于所述中介器可見而對于所述操作系統(tǒng)內(nèi)核不可見的數(shù)據(jù),并且所述中介器對所述計算機處理器的訪問權(quán)限高于所述操作系統(tǒng)內(nèi)核。
23.根據(jù)權(quán)利要求22的系統(tǒng),其中所述操作系統(tǒng)內(nèi)核被配置為控制系統(tǒng)相關(guān)的應用狀態(tài),所述系統(tǒng)相關(guān)的應用狀態(tài)用于在所述操作系統(tǒng)內(nèi)核的級別處控制所述數(shù)據(jù)處理應用的各部分。
24.根據(jù)權(quán)利要求22的系統(tǒng),其中所述操作系統(tǒng)內(nèi)核對于用戶相關(guān)的應用狀態(tài)具有受限的訪問,因為所述中介器根據(jù)需要在所述用戶相關(guān)的應用狀態(tài)與所述操作系統(tǒng)內(nèi)核的數(shù)據(jù)結(jié)構(gòu)之間執(zhí)行傳輸以實現(xiàn)所述操作系統(tǒng)內(nèi)核的其余功能。
25.根據(jù)權(quán)利要求 22的系統(tǒng),其中所述中介器被配置為控制所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間的系統(tǒng)調(diào)用和異常。
全文摘要
一種用于解決計算機系統(tǒng)中的資源管理和安全性的系統(tǒng)可以包括在計算機處理器上執(zhí)行的操作系統(tǒng)內(nèi)核。所述系統(tǒng)還可以包括數(shù)據(jù)處理應用和被配置為在所述計算機處理器上執(zhí)行的中介器。所述中介器可以在所述操作系統(tǒng)內(nèi)核與所述數(shù)據(jù)處理應用之間工作。所述中介器可以控制對所述數(shù)據(jù)處理應用的用戶生成的狀態(tài)數(shù)據(jù)的訪問,并且可以限制所述操作系統(tǒng)內(nèi)核對所述用戶生成的狀態(tài)數(shù)據(jù)的訪問。
文檔編號G06F3/00GK103080871SQ201180041646
公開日2013年5月1日 申請日期2011年8月18日 優(yōu)先權(quán)日2010年8月31日
發(fā)明者M·C·羅蘇 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
蒲城县| 神木县| 新余市| 吉水县| 山丹县| 临颍县| 栾川县| 民县| 通州市| 黄大仙区| 山东省| 融水| 吉水县| 白玉县| 和政县| 金秀| 贵南县| 黑水县| 城固县| 道孚县| 犍为县| 镇江市| 石景山区| 嘉定区| 凉城县| 岢岚县| 鄂温| 东源县| 武安市| 宜良县| 正蓝旗| 曲周县| 伽师县| 得荣县| 长沙市| 内黄县| 施甸县| 高台县| 龙泉市| 永顺县| 彰化县|