專利名稱:一種串行端口重定向的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及端口重定向技術(shù)領(lǐng)域,尤其涉及一種串行端口重定向的方法及系統(tǒng)。
技術(shù)背景
串行端口提供一種設(shè)備無關(guān)的計算機通信方式,支持的設(shè)備類型非常廣泛?,F(xiàn)有的桌面虛擬化協(xié)議都內(nèi)建了串行端口通道,為串行端口設(shè)備在桌面虛擬化環(huán)境中的使用提供支持。只要通過打開相關(guān)桌面協(xié)議的串口通道,就可以在虛擬桌面會話中自由地使用接入到終端上的串行端口設(shè)備。
但是,現(xiàn)有的串行端口設(shè)備存在以下問題
A、設(shè)備使用體驗不同于傳統(tǒng)桌面
現(xiàn)有的串行端口技術(shù)并不通過創(chuàng)建虛擬設(shè)備和相應(yīng)設(shè)備節(jié)點的方式來建立終端上串口到虛擬桌面的端到端的映射,而是通過在虛擬桌面中創(chuàng)建符合串口命名規(guī)則的管道文件。用戶無法通過察看設(shè)備節(jié)點來識別出相應(yīng)的端口,給設(shè)備的使用帶來了一層模糊性。
B、靈活性差、設(shè)備兼容性差
串行端口設(shè)備的驅(qū)動是需要綁定相應(yīng)的端口的,而現(xiàn)有的串行端口設(shè)備驅(qū)動只能安裝在終端,這不僅降低了靈活性,并且當(dāng)設(shè)備驅(qū)動不支持終端機上運行的平臺時,設(shè)備將無法使用。
C、缺少集中管理機制
現(xiàn)有的串行端口技術(shù)并不支持對終端機上的串口映射的集中管理。 發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種串行端口重定向的方法及系統(tǒng)。
本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的。
一種串行端口重定向的方法,包括步驟
a 終端串行端口重定向初始化操作;
b 虛擬串口控制器截取用戶對串口設(shè)備的I/O請求和操作,重定向到終端;
c 終端串口控制器處理接收到的重定向I/O請求和操作,并將處理結(jié)果返回給虛擬串口控制器;
d 虛擬串口控制器將終端返回的處理結(jié)果經(jīng)分析處理后,返回給操作系統(tǒng);操作系統(tǒng)根據(jù)虛擬串口控制器反饋的I/O處理結(jié)果最終反饋到用戶體驗層。
優(yōu)選的,步驟a之前還包括在虛擬桌面端啟動虛擬串口控制器及在終端上啟動終端串口控制器。
優(yōu)選的,步驟a所述初始化操作,具體包括
al 用戶開啟虛擬桌面會話登陸虛擬桌面;
a2 終端串口控制器讀入用戶配置并切換串口設(shè)備到映射模式;
a3 虛擬串口控制器掃描終端串口設(shè)備、創(chuàng)建虛擬串口及相應(yīng)的設(shè)備節(jié)點;
a4:開啟終端到虛擬桌面的端對端串行端口映射,虛擬桌面中用戶安裝設(shè)備驅(qū)動, 并綁定到對應(yīng)的虛擬化串口,完成端到端串口設(shè)備I/O服務(wù)的映射。
優(yōu)選的,步驟d之后還包括用戶結(jié)束虛擬桌面會話斷開虛擬桌面,虛擬串口控制器釋放虛擬串口并刪除設(shè)備節(jié)點,結(jié)束串行端口的映射。
一種串行端口重定向系統(tǒng),包括終端、網(wǎng)絡(luò)路由器/集線器及虛擬桌面,終端經(jīng)網(wǎng)絡(luò)路由器/集線器與虛擬桌面建立數(shù)據(jù)通信連接;
終端包括終端串口控制器,用于掃描、識別并且以文件的方式訪問終端上的串行端口,完成控制信息和數(shù)據(jù)信息的發(fā)送、接收和處理;
虛擬桌面包括虛擬串口控制器,用于創(chuàng)建創(chuàng)建虛擬串口和相應(yīng)的設(shè)備節(jié)點,建立終端到虛擬桌面的串行端口映射;截取應(yīng)用程序和用戶對串口設(shè)備的I/O請求和操作,并重定向到終端處理,將終端返回的結(jié)果進行分析和處理。
優(yōu)選的,還包括網(wǎng)關(guān)服務(wù)器,用于實現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā),提供廣域網(wǎng)接入操作。
優(yōu)選的,還包括配置服務(wù)器,用于集中管理用戶配置表單,增強對終端上串行端口映射的控制和管理。
本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點
a、提供傳統(tǒng)桌面上的設(shè)備使用體驗
在虛擬桌面、遠(yuǎn)程桌面中創(chuàng)建虛擬串口和設(shè)備節(jié)點,提供完全透明的設(shè)備使用體驗,用戶不會感覺到與傳統(tǒng)桌面上的差異。
b、增強設(shè)備兼容性和使用的靈活性
由于虛擬串口的存在,使得串口設(shè)備的驅(qū)動程序可以安裝在終端或者虛擬桌面端任意一端,增強了靈活性,而這使得當(dāng)驅(qū)動程序不支持終端平臺情況下,仍有其它的選擇余地,無形中就增強了設(shè)備的兼容能力。
C、加入端口映射的集中管理機制
使用配置服務(wù)器來托管針對用戶串口映射配置,使得管理方便、快捷。
圖1是本發(fā)明串行端口重定向系統(tǒng)原理框圖2是本發(fā)明串行端口重定向方法流程圖3是串行端口重定向初始化流程圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
請參閱圖1所示,本發(fā)明串行端口重定向系統(tǒng)原理框圖,包括終端、網(wǎng)絡(luò)路由器/ 集線器、網(wǎng)關(guān)服務(wù)器、虛擬桌面及配置服務(wù)器,終端經(jīng)網(wǎng)絡(luò)路由器/集線器通過網(wǎng)關(guān)服務(wù)器與虛擬桌面建立數(shù)據(jù)通信連接,虛擬桌面通過配置服務(wù)器經(jīng)網(wǎng)絡(luò)路由器/集線器與終端建立數(shù)據(jù)交互。
終端包括終端串口控制器,用于掃描、識別并且以文件的方式訪問終端上的串行端口,完成控制信息和數(shù)據(jù)信息的發(fā)送、接收和處理。
虛擬桌面包括應(yīng)用程序、用戶及虛擬串口控制器,虛擬桌面端通過虛擬串口控制器創(chuàng)建虛擬串口和相應(yīng)的設(shè)備節(jié)點,建立終端到虛擬桌面的串行端口映射;截取應(yīng)用程序和用戶對串口設(shè)備的I/O請求和操作,并重定向到終端處理,將終端返回的結(jié)果進行分析和處理。
網(wǎng)關(guān)服務(wù)器用于實現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā),提供廣域網(wǎng)接入能力,突破局域網(wǎng)限制。
配置服務(wù)器用于集中管理用戶配置表單,增強對終端上串行端口映射的控制和管理。
請參閱圖2所示,本發(fā)明串行端口重定向方法流程圖,包括
步驟201 在虛擬桌面端啟動虛擬串口控制器,用于創(chuàng)建虛擬串口及相應(yīng)的設(shè)備節(jié)點,建立和管理串行端口端到端的映射;
步驟202 終端上啟動終端串口控制器,響應(yīng)虛擬串口控制器的端口掃描和識別等請求以及虛擬串口重定向的設(shè)備I/O請求和操作;
步驟203 終端串行端口重定向初始化操作,具體,參閱圖3所示,包括
步驟301 用戶開啟虛擬桌面會話登陸虛擬桌面;
步驟302 終端串口控制器讀入用戶配置并切換串口設(shè)備到映射模式;
步驟303 虛擬串口控制器掃描終端串口設(shè)備、創(chuàng)建虛擬串口及相應(yīng)的設(shè)備節(jié)點;
步驟304:開啟終端到虛擬桌面的端對端串行端口映射,虛擬桌面中用戶安裝設(shè)備驅(qū)動,并綁定到對應(yīng)的虛擬化串口,完成端到端串口設(shè)備I/O服務(wù)的映射;
其中,串行端口重定向,指將串口映射到網(wǎng)絡(luò)中的其它計算機中使用,而不在本地使用;
步驟204 虛擬串口控制器截取用戶對串口設(shè)備的I/O請求和操作,重定向到終端;
步驟205 終端串口控制器處理接收到的重定向I/O請求和操作,并將處理結(jié)果返回給虛擬串口控制器;
步驟206 虛擬串口控制器將終端返回的處理結(jié)果經(jīng)分析處理后,返回給操作系統(tǒng);
步驟207 操作系統(tǒng)根據(jù)虛擬串口控制器反饋的I/O處理結(jié)果最終反饋到用戶體驗層;
步驟208 用戶結(jié)束虛擬桌面會話斷開虛擬桌面,虛擬串口控制器釋放虛擬串口并刪除設(shè)備節(jié)點,結(jié)束串行端口的映射。
其中,當(dāng)由于網(wǎng)絡(luò)異常引起串口映射被中斷的情況下,采用斷線重連以及I/O通道緩沖恢復(fù)等機制來從異常狀態(tài)中恢復(fù)設(shè)備I/O的映射,這種恢復(fù)機制是透明的,用戶幾乎感覺不到有異常發(fā)生,能夠很好的保持用戶體驗的連續(xù)性。
所述I/O通道緩沖恢復(fù),指采用斷線重連技術(shù)從網(wǎng)絡(luò)異常中恢復(fù)設(shè)備映射后,從之前緩沖的I/O請求中取出異常發(fā)生前最后為正常處理完成I/O請求并且重新處理。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種串行端口重定向的方法,其特征在于,包括步驟 a 終端串行端口重定向初始化操作;b 虛擬串口控制器截取用戶對串口設(shè)備的I/O請求和操作,重定向到終端; c 終端串口控制器處理接收到的重定向I/O請求和操作,并將處理結(jié)果返回給虛擬串口控制器;d 虛擬串口控制器將終端返回的處理結(jié)果經(jīng)分析處理后,返回給操作系統(tǒng);操作系統(tǒng)根據(jù)虛擬串口控制器反饋的I/O處理結(jié)果最終反饋到用戶體驗層。
2.如權(quán)利要求1所述的串行端口重定向的方法,其特征在于,步驟a之前還包括在虛擬桌面端啟動虛擬串口控制器及在終端上啟動終端串口控制器。
3.如權(quán)利要求2所述的串行端口重定向的方法,其特征在于,步驟a所述初始化操作, 具體包括al 用戶開啟虛擬桌面會話登陸虛擬桌面; a2 終端串口控制器讀入用戶配置并切換串口設(shè)備到映射模式; a3 虛擬串口控制器掃描終端串口設(shè)備、創(chuàng)建虛擬串口及相應(yīng)的設(shè)備節(jié)點; a4:開啟終端到虛擬桌面的端對端串行端口映射,虛擬桌面中用戶安裝設(shè)備驅(qū)動,并綁定到對應(yīng)的虛擬化串口,完成端到端串口設(shè)備I/O服務(wù)的映射。
4.如權(quán)利要求1所述的串行端口重定向的方法,其特征在于,步驟d之后還包括用戶結(jié)束虛擬桌面會話斷開虛擬桌面,虛擬串口控制器釋放虛擬串口并刪除設(shè)備節(jié)點,結(jié)束串行端口的映射。
5.一種串行端口重定向系統(tǒng),其特征在于,包括終端、網(wǎng)絡(luò)路由器/集線器及虛擬桌面,終端經(jīng)網(wǎng)絡(luò)路由器/集線器與虛擬桌面建立數(shù)據(jù)通信連接;終端包括終端串口控制器,用于掃描、識別并且以文件的方式訪問終端上的串行端口, 完成控制信息和數(shù)據(jù)信息的發(fā)送、接收和處理;虛擬桌面包括虛擬串口控制器,用于創(chuàng)建創(chuàng)建虛擬串口和相應(yīng)的設(shè)備節(jié)點,建立終端到虛擬桌面的串行端口映射;截取應(yīng)用程序和用戶對串口設(shè)備的I/O請求和操作,并重定向到終端處理,將終端返回的結(jié)果進行分析和處理。
6.如權(quán)利要求5所述的串行端口重定向系統(tǒng),其特征在于,還包括網(wǎng)關(guān)服務(wù)器,用于實現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā),提供廣域網(wǎng)接入操作。
7.如權(quán)利要求5所述的串行端口重定向系統(tǒng),其特征在于,還包括配置服務(wù)器,用于集中管理用戶配置表單,增強對終端上串行端口映射的控制和管理。
全文摘要
本發(fā)明提供了一種串行端口重定向的方法及系統(tǒng),該方法包括步驟a終端串行端口重定向初始化操作;b虛擬串口控制器截取用戶對串口設(shè)備的I/O請求和操作,重定向到終端;c終端串口控制器處理接收到的重定向I/O請求和操作,并將處理結(jié)果返回給虛擬串口控制器;d虛擬串口控制器將終端返回的處理結(jié)果經(jīng)分析處理后,返回給操作系統(tǒng);操作系統(tǒng)根據(jù)虛擬串口控制器反饋的I/O處理結(jié)果最終反饋到用戶體驗層。本發(fā)明提供傳統(tǒng)桌面上的設(shè)備使用體驗、兼容性好,且靈活方便。
文檔編號G06F13/12GK102508796SQ201110311398
公開日2012年6月20日 申請日期2011年10月14日 優(yōu)先權(quán)日2011年10月14日
發(fā)明者李寶宇, 馬成立 申請人:深圳市京華科訊科技有限公司