計算機通訊系統(tǒng)的制作方法
【專利摘要】本實用新型提供了一種計算機通訊系統(tǒng),包括用戶空間驅(qū)動裝置、內(nèi)核態(tài)驅(qū)動裝置以及外圍設(shè)備,所述系統(tǒng)還包括與外圍設(shè)備的連接的控制卡,所述控制卡包括一個或者多個寄存器。本實用新型提供的計算機通訊系統(tǒng),應(yīng)用程序訪問用戶空間通過所述控制卡獲取的硬件資源,實現(xiàn)了與外圍設(shè)備之間的交互,操作系統(tǒng)不需要從用戶態(tài)切換至內(nèi)核態(tài),避免了系統(tǒng)資源的消耗以及對系統(tǒng)性能的不良影響;同時,控制歸一化為寄存器讀寫,屏蔽底層復(fù)雜接口的差異性。
【專利說明】計算機通訊系統(tǒng)
【【技術(shù)領(lǐng)域】】
[0001]本實用新型涉及計算機通訊領(lǐng)域,尤其是涉及一種計算機通訊系統(tǒng)。
【【背景技術(shù)】】
[0002]目前,應(yīng)用程序在訪問硬件時,系統(tǒng)需要切換到操作系統(tǒng)內(nèi)核態(tài),訪問結(jié)束之后將數(shù)據(jù)返回給應(yīng)用程序,再從內(nèi)核態(tài)切換到用戶態(tài);另一方面,現(xiàn)有技術(shù)中執(zhí)行中斷請求的過程,系統(tǒng)必須從用戶態(tài)切換到內(nèi)核態(tài)去執(zhí)行中斷請求。操作系統(tǒng)切換需要消耗系統(tǒng)資源,且頻繁操作將會影響系統(tǒng)的性能。
【實用新型內(nèi)容】
[0003]為了解決現(xiàn)有技術(shù)中操作系統(tǒng)切換需要消耗系統(tǒng)資源,且頻繁操作將會影響系統(tǒng)性能的問題,本實用新型提供了一種計算機通訊系統(tǒng)。
[0004]一種計算機通訊系統(tǒng),所述系統(tǒng)包括用戶空間驅(qū)動裝置、內(nèi)核態(tài)驅(qū)動裝置以及外圍設(shè)備,所述系統(tǒng)還包括與外圍設(shè)備的連接的控制卡;所述內(nèi)核態(tài)驅(qū)動裝置在完成外圍設(shè)備初始化之后通過所述寄存器即可獲取外圍設(shè)備資源,所述用戶空間驅(qū)動裝置通過內(nèi)核態(tài)驅(qū)動裝置獲取外圍設(shè)備資源;應(yīng)用程序通過所述用戶空間驅(qū)動裝置提供的接口直接訪問其內(nèi)部的外圍設(shè)備資源,從而完成應(yīng)用程序訪問外圍設(shè)備的過程。
[0005]優(yōu)選地,所述控制卡包括一個寄存器,所述控制卡通過映射將寄存器與外圍設(shè)備對應(yīng),使所述寄存器獲取外圍設(shè)備資源,應(yīng)用程序通過所述寄存器實現(xiàn)訪問所述外圍設(shè)備的過程。
[0006]優(yōu)選地,所述寄存器為大容量寄存器,所述寄存器對應(yīng)多個外圍設(shè)備,通過復(fù)用所述寄存器,使其與多個外圍設(shè)`備通訊。
[0007]優(yōu)選地,所述控制卡包括多個寄存器,所述控制卡通過映射將寄存器與外圍設(shè)備對應(yīng),使所述寄存器獲取外圍設(shè)備資源,應(yīng)用程序通過所述寄存器實現(xiàn)訪問所述外圍設(shè)備的過程。
[0008]優(yōu)選地,所述每個寄存器對應(yīng)一個外圍設(shè)備,并通過映射獲取所述外圍設(shè)備資源。
[0009]優(yōu)選地,至少有一個所述寄存器對應(yīng)多個外圍設(shè)備,通過復(fù)用所述對應(yīng)多個外圍設(shè)備的寄存器,使其與所述多個外圍設(shè)備通訊。
[0010]優(yōu)選地,所述控制卡包括狀態(tài)寄存器,通過查詢所述狀態(tài)寄存器,判斷應(yīng)用程序?qū)懭氲闹噶钍欠駡?zhí)行完畢。
[0011]優(yōu)選地,所述控制卡包括中斷寄存器,應(yīng)用程序可以通過查詢所述中斷寄存器判斷是否產(chǎn)生中斷,從而模擬中斷功能。
[0012]本實用新型提供的計算機通訊系統(tǒng),應(yīng)用程序訪問用戶空間通過所述控制卡獲取的硬件資源,實現(xiàn)了與外圍設(shè)備之間的交互,操作系統(tǒng)不需要從用戶態(tài)切換至內(nèi)核態(tài),避免了系統(tǒng)資源的消耗以及對系統(tǒng)性能的不良影響;同時,控制歸一化為寄存器讀寫,屏蔽底層復(fù)雜接口的差異性。【【專利附圖】
【附圖說明】】
[0013]圖1現(xiàn)有技術(shù)中應(yīng)用程序訪問設(shè)備的示意圖;
[0014]圖2為本實用新型提供的計算機通訊系統(tǒng)的結(jié)構(gòu)示意;
[0015]圖3為本實用新型另一個實施例中控制卡的結(jié)構(gòu)示意圖。
【【具體實施方式】】
[0016]為使本實用新型的上述目的、特征和優(yōu)點能夠更為明顯易懂,下面結(jié)合附圖和實施例對本實用新型的【具體實施方式】做詳細的說明。
[0017]在下面的描述中闡述了很多具體細節(jié)以便于充分理解本實用新型,但是本實用新型還可以采用其他不同于在此描述的方式來實施,因此本實用新型不受下面公開的具體實施例的限制。
[0018]如圖1所示,現(xiàn)有技術(shù)中應(yīng)用程序在訪問硬件時,系統(tǒng)需要切換到操作系統(tǒng)內(nèi)核態(tài),訪問結(jié)束之后將數(shù)據(jù)返回給應(yīng)用程序,再從內(nèi)核態(tài)切換到用戶態(tài);另一方面,現(xiàn)有技術(shù)中執(zhí)行中斷請求的過程,系統(tǒng)必須從用戶態(tài)切換到內(nèi)核態(tài)去執(zhí)行中斷請求。
[0019]為了解決操作系統(tǒng)切換需要消耗系統(tǒng)資源,且頻繁操作將會影響系統(tǒng)的性能的問題,本實用新型提供了一種計算機通訊系統(tǒng)。
[0020]如圖2所示,一種計算機通訊系統(tǒng),所述系統(tǒng)包括用戶空間驅(qū)動裝置10、內(nèi)核態(tài)驅(qū)動裝置20以及外圍設(shè)備30,所述系統(tǒng)還包括與外`圍設(shè)備的連接的控制卡40。
[0021 ] 所述內(nèi)核態(tài)驅(qū)動裝置20在完成外圍設(shè)備30初始化之后通過所述寄存器即可獲取外圍設(shè)備資源,所述用戶空間驅(qū)動裝置10通過內(nèi)核態(tài)驅(qū)動裝置20獲取外圍設(shè)備資源;應(yīng)用程序通過所述用戶空間驅(qū)動裝置10提供的接口直接訪問其內(nèi)部的外圍設(shè)備資源,從而完成應(yīng)用程序訪問外圍設(shè)備的過程。
[0022]具體地,控制卡必須在內(nèi)部將連接至控制卡的各種外圍設(shè)備的控制映射成獨立的寄存器或者多個外圍設(shè)備復(fù)用一個寄存器,而通過命令字實現(xiàn)控制不同的外圍設(shè)備;內(nèi)核驅(qū)動必須將硬件中開放的各種資源(主要是寄存器)獲取并提供一種方式(技術(shù)層面,和操作系統(tǒng)有關(guān)),使得用空間驅(qū)動可以獲得并映射至用戶空間;用戶空間驅(qū)動能夠獲得內(nèi)核驅(qū)動中獲得的硬件資源,并將其映射至本地,同時提供接口訪問映射的寄存器;應(yīng)用程序通過調(diào)用用戶空間開放的接口,按照與控制卡協(xié)商好的控制指令設(shè)置寄存器,控制卡在接收到指令后執(zhí)行指令,實現(xiàn)了控制外圍設(shè)備的目的。
[0023]在一個實施例中,所述控制卡40包括多個寄存器,所述寄存器通過映射獲取外圍設(shè)備資源(所述控制卡通過映射將寄存器與外圍設(shè)備對應(yīng)),應(yīng)用程序通過所述寄存器實現(xiàn)了訪問所述外圍設(shè)備的過程。如圖2所示,用戶空間驅(qū)動裝置中的虛線部分可以看成是從控制卡寄存器中映射過來的硬件資源,應(yīng)用程序?qū)嶋H上是在用戶驅(qū)動中完成了對外圍硬件設(shè)備的訪問過程。此時,一個寄存器可以對應(yīng)一個外圍設(shè)備連,并通過映射獲取所述外圍設(shè)備資源;或者至少一個寄存器對應(yīng)多個外圍設(shè)備,通過復(fù)用所述與多個外圍設(shè)備對應(yīng)的寄存器,使其與所述多個外圍設(shè)備通訊。
[0024]如圖3所示,在另一個實施例中,所述控制卡40包括一個寄存器,所述寄存器通過映射獲取外圍設(shè)備資源,應(yīng)用程序通過所述寄存器實現(xiàn)訪問所述外圍設(shè)備的過程。比如,所述寄存器為大容量的64位寄存器,所述寄存器對應(yīng)多個外圍設(shè)備,通過復(fù)用所述寄存器,使其與外圍設(shè)備通訊,即分出寄存器的部分位數(shù)對應(yīng)不同的外圍設(shè)備,通過命令字控制所述寄存器,當應(yīng)用程序需要訪問某個外圍設(shè)備通訊時,寄存器與這個外圍設(shè)備建立通訊。
[0025]所述控制卡40包括狀態(tài)寄存器,通過查詢所述狀態(tài)寄存器,判斷應(yīng)用程序?qū)懭氲闹噶钍欠駡?zhí)行完畢。狀態(tài)寄存器主要是防止之前的指令還沒有執(zhí)行完畢,又寫入了下一條指令,導(dǎo)致控制指令錯亂。
[0026]所述控制卡40還包括中斷寄存器,應(yīng)用程序可以通過查詢中斷寄存器判斷是否廣生中斷,從而I旲擬中斷功能。
[0027]下面詳細描述應(yīng)用程序訪問外圍設(shè)備的過程以及計算機通訊系統(tǒng)執(zhí)行中斷請求的方法。
[0028]應(yīng)用程序訪問外圍設(shè)備的過程:al)應(yīng)用程序訪問某個外圍設(shè)備,首先是將指令寫入所述對所述外圍設(shè)備對應(yīng)的寄存器;a2)所述外圍設(shè)備執(zhí)行所述指令;a3)通過所述狀態(tài)寄存器判斷所述指令執(zhí)行是否結(jié)束,若否,則繼續(xù)等待執(zhí)行完畢。
[0029]計算機通訊系統(tǒng)執(zhí)行中斷請求的過程:bl)應(yīng)用程序通過所述用戶空間驅(qū)動內(nèi)的外圍設(shè)備資源開始訪問外圍設(shè)備山2)當應(yīng)用程序查詢到中斷狀態(tài)寄存器值發(fā)生變化時,產(chǎn)生中斷請求,應(yīng)用程序執(zhí)行中斷處理;b3)判斷應(yīng)用程序是否已經(jīng)退出,若否,返回步驟b2),若是,結(jié)束訪問。
[0030]本實用新型提供的計算機通訊系統(tǒng),應(yīng)用程序訪問用戶空間通過控制卡獲取的硬件資源,實現(xiàn)了與外圍設(shè)備之間的交互,操作系統(tǒng)不需要從用戶態(tài)切換至內(nèi)核態(tài),避免了系統(tǒng)資源的消耗以及對系統(tǒng)性能的不良影響;同時,控制歸一化為寄存器讀寫,屏蔽底層復(fù)雜接口的差異性。
[0031]雖然本實用新型已以較佳實施例揭示如上,然其并非用以限定本實用新型,任何本領(lǐng)域技術(shù)人員,在不脫離本實用新型的精神和范圍內(nèi),當可作些許的修改和完善,因此本實用新型的保護范圍當以權(quán)利要求書所界定的為準。
【權(quán)利要求】
1.一種計算機通訊系統(tǒng),所述系統(tǒng)包括用戶空間驅(qū)動裝置、內(nèi)核態(tài)驅(qū)動裝置以及外圍設(shè)備,其特征在于,所述系統(tǒng)還包括與外圍設(shè)備連接的控制卡,所述內(nèi)核態(tài)驅(qū)動裝置在完成外圍設(shè)備初始化之后通過所述控制卡即可獲取外圍設(shè)備資源,所述用戶空間驅(qū)動裝置通過內(nèi)核態(tài)驅(qū)動裝置獲取外圍設(shè)備資源;應(yīng)用程序通過所述用戶空間驅(qū)動裝置提供的接口直接訪問其內(nèi)部的外圍設(shè)備資源,從而完成應(yīng)用程序訪問外圍設(shè)備的過程。
2.如權(quán)利要求1所述的計算機通訊系統(tǒng),其特征在于,所述控制卡包括一個寄存器,所述控制卡通過映射將寄存器與外圍設(shè)備對應(yīng),使所述寄存器獲取外圍設(shè)備資源,應(yīng)用程序通過所述寄存器實現(xiàn)訪問所述外圍設(shè)備的過程。
3.如權(quán)利要求2所述的計算機通訊系統(tǒng),其特征在于,所述寄存器為大容量寄存器,所述寄存器對應(yīng)多個外圍設(shè)備,通過復(fù)用所述寄存器,使其與多個外圍設(shè)備通訊。
4.如權(quán)利要求1所述的計算機通訊系統(tǒng),其特征在于,所述控制卡包括多個寄存器,所述控制卡通過映射將寄存器與外圍設(shè)備對應(yīng),使所述寄存器獲取外圍設(shè)備資源,應(yīng)用程序通過所述寄存器實現(xiàn)了訪問所述外圍設(shè)備的過程。
5.如權(quán)利要求4所述的計算機通訊系統(tǒng),其特征在于,所述每個寄存器對應(yīng)一個外圍設(shè)備,并通過映射獲取所述外圍設(shè)備資源。
6.如權(quán)利要求4所述的計算機通訊系統(tǒng),其特征在于,至少有一個寄存器對應(yīng)多個外圍設(shè)備,通過復(fù)用所述對應(yīng)多個外圍設(shè)備的寄存器,使其與所述多個外圍設(shè)備通訊。
7.如權(quán)利要求1所述的計算機通訊系統(tǒng),其特征在于,所述控制卡包括狀態(tài)寄存器,通過查詢所述狀態(tài)寄存器,判斷應(yīng)用程序?qū)懭氲闹噶钍欠駡?zhí)行完畢。
8.如權(quán)利要求1所述的計算機通訊系統(tǒng),其特征在于,所述控制卡包括中斷寄存器,應(yīng)用程序可以通過查詢所述中斷寄存器判斷是否產(chǎn)生中斷,從而模擬中斷功能。
【文檔編號】G06F9/50GK203386202SQ201320377700
【公開日】2014年1月8日 申請日期:2013年6月27日 優(yōu)先權(quán)日:2013年6月27日
【發(fā)明者】曾群 申請人:上海聯(lián)影醫(yī)療科技有限公司