亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

可復(fù)用通用計(jì)算機(jī)人機(jī)交互設(shè)備的可信計(jì)算裝置的制造方法_3

文檔序號:9888072閱讀:來源:國知局
的事件;Linux內(nèi)網(wǎng)絡(luò)收發(fā)重定向服務(wù)與可信計(jì)算輔助軟件配合,為可信計(jì)算附件提供虛擬網(wǎng)卡服務(wù);視頻輸出切換模塊用來控制視頻輸出選擇開關(guān)。
[0066]在Linux內(nèi)核中設(shè)置可被視頻輸出切換模塊、USB鍵盤驅(qū)動(dòng)、USB鼠標(biāo)驅(qū)動(dòng)訪問的共享變量working_status,其中working_status的值域?yàn)閧可信1態(tài),普通1態(tài)}。當(dāng)working_status為可信1態(tài)時(shí),連接到USB-1Nl、USB_IN2的USB鍵盤、鼠標(biāo)的輸入將被可信計(jì)算附件自身使用,而不會(huì)通過USB-HOST接口轉(zhuǎn)發(fā)給通用計(jì)算機(jī),VGA顯示設(shè)備的輸入來自于可信計(jì)算附件內(nèi)部的顯示適配器;當(dāng)working_status為普通1態(tài)時(shí),可信計(jì)算附件把來自USB-1Nl和USB-1N2的USB鍵盤、鼠標(biāo)輸入通過USB-HOST接口轉(zhuǎn)發(fā)給通用計(jì)算機(jī),VGA顯示設(shè)備的輸入來自于通用計(jì)算機(jī)。
[0067]可信計(jì)算附件預(yù)設(shè)特定的組合鍵作為1狀態(tài)的切換開關(guān),如定義當(dāng)Ctrl、Alt和FlO這三個(gè)鍵被按下時(shí),進(jìn)行working_status狀態(tài)的改變,從而引起輸入和輸出的切換。Linux內(nèi)鍵盤監(jiān)聽模塊在Linux的USB鍵盤驅(qū)動(dòng)中實(shí)現(xiàn)。下面以預(yù)定義的切換組合鍵為Ctrl+Alt+F10為例,來說明修改后的USB鍵盤驅(qū)動(dòng)當(dāng)接收到USB鍵盤事件時(shí),所執(zhí)行的主要流程。此時(shí)USB鍵盤驅(qū)動(dòng)中增加變量total_down、位圖down_keys和變量last_key,其中若down_keys的第O位為I,表示此時(shí)FlO鍵被按下;若down_keys的第I位為I,表示此時(shí)Alt鍵被按下;若down_keys的第2位為1,表示此時(shí)Ctrl鍵被按下;last_key和total_down的初始值均為O。
[0068]當(dāng)USB鍵盤驅(qū)動(dòng)獲知有鍵盤輸入時(shí),執(zhí)行包括如下步驟的流程:
[0069]KBDl獲得當(dāng)前鍵盤輸入的掃描碼kmap ;
[0070]KBD2若kmap與last_key不同,且kmap表示某個(gè)鍵被按下,則total_down 一 total_down+l ;
[0071]KBD3 last—key — kmap ;
[0072]KBD4若掃描碼kmap指示Ctrl、Alt、F10中某個(gè)鍵被按下,則將down—keys位圖中相應(yīng)位置I ;
[0073]KBD5若掃描碼kmap指示Ctrl、Alt、FlO中某個(gè)鍵被釋放、且當(dāng)前total_down為
3、且down_keys為0x7,則轉(zhuǎn)到步驟KBD6,否則轉(zhuǎn)到步驟KBD14 ;
[0074]KBD6 將 down_keys 位圖清零,將 total_down 清零;
[0075]KBD7若working_status值為普通1態(tài),則執(zhí)行步驟KBD8,否則轉(zhuǎn)到步驟KBDll ;
[0076]KBD8操作USB鍵盤模塊,使其通過USB-HOST接口向通用計(jì)算機(jī)發(fā)送Ctrl+Alt+F10組合鍵釋放事件;
[0077]KBD9將working_status改為可信1態(tài),調(diào)用視頻輸出切換模塊,進(jìn)行視頻輸出切換;
[0078]KBDlO處理結(jié)束;
[0079]KBDll向當(dāng)前操作系統(tǒng)上層提交Ctrl+Alt+F10組合鍵釋放事件;
[0080]KBD12將working_status改為普通1態(tài),調(diào)用視頻輸出切換模塊,進(jìn)行視頻輸出切換;
[0081]KBD13處理結(jié)束;
[0082]KBD14若掃描碼指不某個(gè)鍵被釋放,則total_down — total_down_l ;
[0083]KBD15若掃描碼指示指示Ctrl、Alt、F10中某個(gè)鍵被釋放,則將down_keys位圖中的相應(yīng)位清零;
[0084]KBD16若當(dāng)前working_status為普通1態(tài),則操作USB鍵盤模塊,使其通過USB-HOST接口向通用計(jì)算機(jī)發(fā)送kmap對應(yīng)的鍵盤事件,否則向當(dāng)前操作系統(tǒng)上層提交kmap對應(yīng)的鍵盤事件。
[0085]對USB鼠標(biāo)驅(qū)動(dòng)的修改主要為:當(dāng)working_status為普通1態(tài)時(shí),鼠標(biāo)驅(qū)動(dòng)利用USB鼠標(biāo)模塊,將收到的鼠標(biāo)事件轉(zhuǎn)換成USB報(bào)文,通過USB-HOST接口,發(fā)送給通用計(jì)算機(jī)。
[0086]Linux內(nèi)網(wǎng)絡(luò)收發(fā)重定向服務(wù)通過Linux內(nèi)置的TUN/TAP機(jī)制和應(yīng)用層報(bào)文轉(zhuǎn)發(fā)服務(wù)完成,其中TUN/ΤΑΡ機(jī)制用于給可信應(yīng)用提供虛擬網(wǎng)絡(luò)接口,而應(yīng)用層報(bào)文轉(zhuǎn)發(fā)服務(wù)作為一個(gè)傳輸中介,將可信應(yīng)用發(fā)送到虛擬網(wǎng)絡(luò)接口的報(bào)文轉(zhuǎn)交給運(yùn)行于通用計(jì)算機(jī)上的可信計(jì)算輔助軟件進(jìn)行網(wǎng)絡(luò)發(fā)送,并將可信計(jì)算輔助軟件接收到網(wǎng)絡(luò)報(bào)文轉(zhuǎn)交給虛擬網(wǎng)絡(luò)接口。當(dāng)應(yīng)用層報(bào)文轉(zhuǎn)發(fā)服務(wù)從TUN/TAP設(shè)備讀取到報(bào)文時(shí),執(zhí)行包括如下步驟的流程:
[0087]RTUNl操作USB串口模塊,使其向通用計(jì)算機(jī)輸出報(bào)文發(fā)送請求;
[0088]RTUN2操作USB串口模塊,使其向通用計(jì)算機(jī)輸出讀取到的網(wǎng)絡(luò)報(bào)文;
[0089]當(dāng)應(yīng)用層報(bào)文轉(zhuǎn)發(fā)服務(wù)發(fā)現(xiàn)通用計(jì)算機(jī)向USB串口模塊發(fā)送數(shù)據(jù)時(shí),執(zhí)行包括如下步驟的流程:
[0090]WTUNl從USB串口模塊讀取數(shù)據(jù),直至得到完整的網(wǎng)絡(luò)報(bào)文;
[0091]WTUN2將步驟WTUNl所得的網(wǎng)絡(luò)報(bào)文寫入TUN/TAP設(shè)備,以使得虛擬網(wǎng)絡(luò)接口接收到外部網(wǎng)絡(luò)輸入。
[0092]需要說明的是,當(dāng)USB串口模塊的數(shù)據(jù)速度影響對可信計(jì)算的性能造成較大影響時(shí),可以如“物理結(jié)構(gòu)”部分描述,采用USB存儲(chǔ)模塊來實(shí)現(xiàn)此數(shù)據(jù)傳輸過程。其方法為:在可信計(jì)算附件出廠前,將用作U盤的Flash存儲(chǔ)空間格式化為包含兩個(gè)分區(qū),如圖3所示,第二個(gè)分區(qū)位于Flash存儲(chǔ)器中,用于存儲(chǔ)可信應(yīng)用軟件包;第一個(gè)分區(qū)則對應(yīng)一片連續(xù)的主存區(qū)域,用于存儲(chǔ)通用計(jì)算機(jī)與可信計(jì)算附件之間需要頻繁交換的信息,下文稱此在內(nèi)存中的分區(qū)為交換分區(qū)。此時(shí)可以采用USB串口模塊來進(jìn)行事件通知,比如,可信計(jì)算附件的網(wǎng)絡(luò)收發(fā)重定向服務(wù)執(zhí)行包含如下步驟的流程,來請求可信計(jì)算輔助軟件進(jìn)行網(wǎng)絡(luò)報(bào)文發(fā)送:
[0093]DSENDl通過內(nèi)存訪問方式,在交換分區(qū)中寫入待發(fā)送的網(wǎng)絡(luò)報(bào)文;
[0094]DSEND2操作USB串口模塊,使其通過USB-HOST端口向通用計(jì)算機(jī)發(fā)送串口通知消息。
[0095]此時(shí),可信計(jì)算輔助軟件在啟動(dòng)時(shí),通過可信計(jì)算附件的USB存儲(chǔ)模塊,可以發(fā)現(xiàn)有一個(gè)U盤,進(jìn)一步,發(fā)現(xiàn)該U盤被分成了兩個(gè)分區(qū),并以裸設(shè)備的方式直接訪問這個(gè)U盤的第二個(gè)分區(qū)(即:交換分區(qū))。為了與DSENDl?DSEND2的流程向?qū)?yīng),在收到串口通知消息后,可信計(jì)算輔助軟件執(zhí)行包括如下步驟的流程獲得待發(fā)送的報(bào)文:
[0096]DRELAYI裸設(shè)備的方式讀取交換分區(qū)中的待發(fā)送報(bào)文;
[0097]DRELAY2從交換分區(qū)中清除掉步驟DRELAY1所獲取的待發(fā)送報(bào)文,以回收該存儲(chǔ)空間;
[0098]DRELAY3通過網(wǎng)絡(luò),發(fā)送步驟DRELAY1所獲取的待發(fā)送報(bào)文。
[0099]交換分區(qū)空間還可進(jìn)一步細(xì)分,方便可信計(jì)算輔助軟件將收到的網(wǎng)絡(luò)報(bào)文寫入交換分區(qū)??尚庞?jì)算輔助軟件通過向USB串口模塊對應(yīng)的通用計(jì)算機(jī)串口輸出“新報(bào)文到達(dá)”通告,來通知可信計(jì)算附件的網(wǎng)絡(luò)收發(fā)重定向服務(wù)將位于交換分區(qū)中的報(bào)文寫入TUN/TAP設(shè)備。
[0100]當(dāng)不擔(dān)心Flash存儲(chǔ)器的使用壽命時(shí),可以直接使用Flas
當(dāng)前第3頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1