[發(fā)明專利]一種計算機中斷投遞的方法及裝置在審
| 申請?zhí)枺?/td> | 202011551987.8 | 申請日: | 2020-12-24 |
| 公開(公告)號: | CN112559136A | 公開(公告)日: | 2021-03-26 |
| 發(fā)明(設計)人: | 程茂 | 申請(專利權)人: | 科東(廣州)軟件科技有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455;G06F9/48 |
| 代理公司: | 北京華夏正合知識產(chǎn)權代理事務所(普通合伙) 11017 | 代理人: | 韓登營 |
| 地址: | 510530 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 計算機 中斷 投遞 方法 裝置 | ||
本發(fā)明提供了一種計算機中斷投遞的方法,計算機微內(nèi)核收到中斷時把根據(jù)所述中斷轉換的虛擬中斷投遞給相應的目的虛擬機,包括,所述虛擬中斷為虛擬時鐘中斷時,投遞給各虛擬機;所述虛擬中斷為虛擬外部中斷時,基于虛擬中斷編號按照配置的靜態(tài)投遞表投遞給相應的虛擬機;所述虛擬中斷為虛擬服務中斷時,投遞給服務目標對應的虛擬機;所述虛擬中斷為虛擬異常中斷時,根據(jù)設定的異常處理規(guī)則投遞給相應的虛擬機。本發(fā)明還相應提供了上述方法對應的裝置。本發(fā)明的所述計算機中斷投遞方法及裝置,提高計算機處理中斷的效率,且可適配運行于計算機上不同虛擬機的中斷處理機制。
技術領域
本申請涉及計算機操作系統(tǒng)領域,特別是涉及一種計算機中斷投遞的方法及裝置。
背景技術
中斷是指計算機運行過程中出現(xiàn)某些情況需主機立即干預時,計算機自動停止正在運行的程序并轉入處理新情況的程序,處理完畢后又返回原被暫停的程序繼續(xù)運行。計算機采用中斷系統(tǒng)的好處很多,比如,處理各種監(jiān)測和控制裝置隨機地向處理機發(fā)出請求、處理多任務間通信、與慢速外設協(xié)調(diào)運行等。
在Linux系統(tǒng)運行虛擬機發(fā)生外部中斷時,需要Linux下的驅動程序先處理相應的外部中斷,再將對應內(nèi)容傳遞到虛擬機,數(shù)據(jù)傳遞時間長,效率低。另一方面,計算機各虛擬機內(nèi)對外部中斷的處理方式不同,Linux下的驅動程序需要適配不同的虛擬機,外部中斷的產(chǎn)生和處理對于各用戶態(tài)的虛擬機不透明,無法跨系統(tǒng)遷移,程序適配工作量大。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種計算機中斷投遞的方法及裝置,采用硬件透傳方法,計算機微內(nèi)核系統(tǒng)本身不進行任何外設操作,根據(jù)用戶預先配置好的投遞規(guī)則進行虛擬中斷投遞,再將計算機處理器交由對應虛擬機進行相應中斷響應和處理,減少Linux下的驅動程序處理外部中斷后數(shù)據(jù)傳遞時間。本發(fā)明通過計算機微內(nèi)核的中斷投遞實現(xiàn)虛擬機間中斷隔離,外部中斷對于虛擬機透明,從而實現(xiàn)用戶態(tài)虛擬機在不同平臺下處理中斷的一致性。
第一方面,提供一種計算機中斷投遞的方法,其包括,計算機微內(nèi)核收到中斷時,暫停當前運行在相同處理器核上的第一虛擬機的所運行的任務,保存該任務的上下文;計算機微內(nèi)核把根據(jù)所述中斷轉換的虛擬中斷投遞給相應的目的虛擬機。
由上,計算微內(nèi)核不處理中斷,把中斷投遞給目的虛擬機處理。基于上述方法,對比現(xiàn)有技術的Linux驅動程序處理中斷,減少了Linux下的驅動程序處理外部中斷后數(shù)據(jù)傳遞時間。同時,通過計算機微內(nèi)核的中斷投遞實現(xiàn)虛擬機間中斷隔離,外部中斷對于虛擬機透明,從而實現(xiàn)用戶態(tài)虛擬槽在不同平臺下一致性。
根據(jù)第一方面,在所述一種計算機中斷投遞的方法的第一種可能的實現(xiàn)方式中,所述投遞給相應的目的虛擬機包括以下之一,所述虛擬中斷為虛擬時鐘中斷時,投遞給各虛擬機;所述虛擬中斷為虛擬外部中斷時,基于虛擬中斷編號按照配置的靜態(tài)投遞表投遞給相應的虛擬機;所述虛擬中斷為虛擬服務中斷時,投遞給服務目標對應的虛擬機;所述虛擬中斷為虛擬異常中斷時,根據(jù)設定的異常處理規(guī)則投遞給相應的虛擬機;其中,所述靜態(tài)投遞表基于每個虛擬外部中斷的編號把每個虛擬外部中斷指向對應的目的虛擬機。
由上,基于上述方法把虛擬中斷投遞給對應的目的虛擬機,實現(xiàn)了中斷的產(chǎn)生對目的虛擬機是透明的,保證目的虛擬機的中斷處理程序可以適配不同平臺。基于上述靜態(tài)投遞表把虛擬外部中斷投遞給對應的目的虛擬機,減少了在計算機微內(nèi)核處理中斷后再把處理數(shù)據(jù)傳遞給目的虛擬機的時間,提高了中斷處理的效率。
根據(jù)第一方面,在所述一種計算機中斷投遞的方法的第二種可能的實現(xiàn)方式中,所述虛擬中斷未能投遞給相應的目的虛擬機時,基于第一虛擬機的所述任務的上下文恢復第一虛擬機的任務的運行。
由上,未能投遞給相應的目的虛擬機是計算機所禁止的中斷,不需要投遞。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于科東(廣州)軟件科技有限公司,未經(jīng)科東(廣州)軟件科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011551987.8/2.html,轉載請聲明來源鉆瓜專利網(wǎng)。





