擬操作系統(tǒng)。
[0247]Β19、如BI 7所述的裝置,所述虛擬機為VirtualBox虛擬機;所述虛擬IP地址獲取子單元具體用于,讀取所述VirtualBox虛擬機的客戶屬性,獲取所述虛擬操作系統(tǒng)的IP地址。
[0248]Β20、如Β17所述的裝置,所述虛擬連接建立子單元具體用于,在所述虛擬操作系統(tǒng)的指定端口,所述模擬控制程序與所述虛擬操作系統(tǒng)的vinput進程建立連接。
[0249]B21、如B15所述的裝置,還包括:
[0250]虛擬網(wǎng)絡(luò)配置單元,用于在所述宿主操作系統(tǒng)配置一個專門用來與所述虛擬操作系統(tǒng)通信的虛擬網(wǎng)絡(luò)連接,使得宿主操作系統(tǒng)和虛擬操作系統(tǒng)在所述虛擬網(wǎng)絡(luò)連接中連通。
[0251]B22、如B14所述的裝置,還包括:
[0252]應(yīng)用類型確定單元,用于獲取所述應(yīng)用的文件包信息,根據(jù)文件包信息確定應(yīng)用類型,并在所述宿主操作系統(tǒng)中建立該應(yīng)用類型與所述對應(yīng)關(guān)系的關(guān)聯(lián)。
[0253]B23、如B14所述的裝置,所述腳本預(yù)置單元具體用于:通過截取并記錄目標(biāo)窗口的鍵盤和/或鼠標(biāo)操作消息,得到所述鍵鼠錄制腳本;或者,通過全局鉤子獲取并記錄鍵盤和/或鼠標(biāo)操作消息,得到所述鍵鼠錄制腳本;或者,通過低級全局鉤子獲取輸入設(shè)備操作的描述信息;將所述描述信息合成為事件;計算相鄰兩個事件之間的時間間隔;對所述事件及所述時間間隔進行記錄,得到所述鍵鼠錄制腳本。
[0254]C24、一種虛擬操控的系統(tǒng),用于對運行在寄生于宿主操作系統(tǒng)的虛擬操作系統(tǒng)上的應(yīng)用進行控制,所述系統(tǒng)包括:
[0255]宿主操作系統(tǒng),用于建立與所述虛擬操作系統(tǒng)之間的通信連接,并針對所述應(yīng)用,預(yù)置鍵鼠錄制腳本;在所述虛擬操作系統(tǒng)上運行所述應(yīng)用時,當(dāng)接收到執(zhí)行所述鍵鼠錄制腳本的指令時,解析所述鍵鼠錄制腳本,得到控制命令;通過所述通信連接,向所述虛擬操作系統(tǒng)提供基于所述控制命令的輸入控制消息,
[0256]虛擬操作系統(tǒng),用于建立與所述宿主操作系統(tǒng)之間的通信連接,并在接收到宿主操作系統(tǒng)的輸入控制消息之后,對輸入控制消息進行處理。
[0257]C25、如C24所述的虛擬操控的系統(tǒng),所述宿主操作系統(tǒng)還用于,建立與所述虛擬操作系統(tǒng)的網(wǎng)絡(luò)連接,并通過模擬控制程序啟動所述虛擬操作系統(tǒng),以及,根據(jù)獲取的所述虛擬操作系統(tǒng)的IP地址,建立所述模擬控制程序與所述虛擬操作系統(tǒng)中的輸入服務(wù)進程之間的連接;并且,在確定出控制命令后,根據(jù)所述控制命令轉(zhuǎn)譯得到輸入控制消息,由所述模擬控制程序?qū)⑺鲚斎肟刂葡l(fā)送給所述虛擬輸入服務(wù)進程;
[0258]所述虛擬操作系統(tǒng)還用于,通過基礎(chǔ)進程加載預(yù)定義腳本,從而將所述虛擬操作系統(tǒng)的IP地址提供給所述宿主操作系統(tǒng),以及,通過所述基礎(chǔ)進程啟動虛擬輸入服務(wù)進程,以及,由所述虛擬輸入服務(wù)進程接收所述模擬控制程序發(fā)送來的輸入控制消息,并且,對所述虛擬輸入服務(wù)進程接收到的所述輸入控制消息進行解譯,得到所述虛擬操作系統(tǒng)可識別的輸入控制信號。
[0259]C26、如C25所述的虛擬操控的系統(tǒng),
[0260]所述虛擬操作系統(tǒng)運行在與所述宿主操作系統(tǒng)所在物理設(shè)備相獨立的另一個物理設(shè)備上;或者,
[0261]所述虛擬操作系統(tǒng)運行在虛擬機上,其中,所述虛擬機運行在所述宿主操作系統(tǒng)所在的物理設(shè)備上,或者,所述虛擬機運行在與所述宿主操作系統(tǒng)所在物理設(shè)備不同的另一個物理設(shè)備上。
[0262]C27、如C26所述的虛擬操控的系統(tǒng),所述虛擬機為VirtualBox虛擬機;所述宿主操作系統(tǒng)具體用于,通過模擬控制程序控制VirtualBox虛擬機,由VirtualBox虛擬機啟動所述虛擬操作系統(tǒng)。
[0263]C28、如C26所述的虛擬操控的系統(tǒng),所述虛擬機為VirtualBox虛擬機;所述虛擬操作系統(tǒng)通過init進程加載預(yù)定義腳本,運行VirtualBox虛擬機的客戶擴展組件,將所述虛擬操作系統(tǒng)的IP地址寫入VirtualBox虛擬機的客戶屬性;所述宿主操作系統(tǒng)讀取所述VirtualBox虛擬機的客戶屬性,獲取所述虛擬操作系統(tǒng)的IP地址。
[0264]C29、如C25所述的虛擬操控的系統(tǒng),所述虛擬操作系統(tǒng)通過init進程啟動vinput進程;在所述虛擬操作系統(tǒng)的指定端口,所述vinput進程建立與所述模擬控制程序的連接。
[0265]C30、如C25所述的虛擬操控的系統(tǒng),所述宿主操作系統(tǒng)具體用于,對所述控制命令以及控制參數(shù)進行轉(zhuǎn)譯,生成所述輸入控制消息。
[0266]C31、如C25所述的虛擬操控的系統(tǒng),所述虛擬操作系統(tǒng)具體用于,控制對所述虛擬輸入服務(wù)進程接收到的所述輸入控制消息進行解譯,得到控制命令;并對所述控制命令進行硬件抽象層HAL轉(zhuǎn)換;得到所述虛擬操作系統(tǒng)可識別的輸入控制信號。
[0267]C32、如C25所述的虛擬操控的系統(tǒng),所述宿主操作系統(tǒng)配置一個專門用來與所述虛擬操作系統(tǒng)通信的虛擬網(wǎng)絡(luò)連接,使得宿主操作系統(tǒng)和虛擬操作系統(tǒng)在所述虛擬網(wǎng)絡(luò)連接中連通。
[0268]C33、如C24-C32任一項所述的虛擬操控的系統(tǒng),所述宿主操作系統(tǒng)包括Windows操作系統(tǒng)、Mac操作系統(tǒng)或Linux操作系統(tǒng);所述虛擬操作系統(tǒng)包括Android操作系統(tǒng)。
[0269]C34、如C24所述的虛擬操控的系統(tǒng),所述宿主操作系統(tǒng)還用于,獲取所述應(yīng)用的文件包信息,根據(jù)文件包信息確定應(yīng)用類型,并在所述宿主操作系統(tǒng)中建立該應(yīng)用類型與所述對應(yīng)關(guān)系的關(guān)聯(lián)。
[0270]C35、如C34所述的虛擬操控的系統(tǒng),所述宿主操作系統(tǒng)具體用于:通過截取并記錄目標(biāo)窗口的鍵盤和/或鼠標(biāo)操作消息,得到所述鍵鼠錄制腳本;或者,通過全局鉤子獲取并記錄鍵盤和/或鼠標(biāo)操作消息,得到所述鍵鼠錄制腳本;或者,通過低級全局鉤子獲取輸入設(shè)備操作的描述信息;將所述描述信息合成為事件;計算相鄰兩個事件之間的時間間隔;對所述事件及所述時間間隔進行記錄,得到所述鍵鼠錄制腳本。
【主權(quán)項】
1.一種虛擬操控的方法,其特征在于,用于對運行在寄生于宿主操作系統(tǒng)的虛擬操作系統(tǒng)上的應(yīng)用進行控制,所述方法包括: 建立所述宿主操作系統(tǒng)與所述虛擬操作系統(tǒng)之間的通信連接; 針對所述應(yīng)用,在所述宿主操作系統(tǒng)中預(yù)置鍵鼠錄制腳本; 當(dāng)所述應(yīng)用在所述虛擬操作系統(tǒng)上運行且接收到執(zhí)行所述鍵鼠錄制腳本的指令時,所述宿主操作系統(tǒng)解析所述鍵鼠錄制腳本,得到控制命令; 通過所述通信連接,所述宿主操作系統(tǒng)向所述虛擬操作系統(tǒng)提供基于所述控制命令的輸入控制消息,由所述虛擬操作系統(tǒng)對輸入控制消息進行處理。2.如權(quán)利要求1所述的方法,其特征在于,所述建立所述宿主操作系統(tǒng)與所述虛擬操作系統(tǒng)之間的通信連接,包括: 通過所述宿主操作系統(tǒng)中的模擬控制程序啟動所述虛擬操作系統(tǒng); 所述虛擬操作系統(tǒng)通過基礎(chǔ)進程加載預(yù)定義腳本,從而將所述虛擬操作系統(tǒng)的IP地址提供給所述宿主操作系統(tǒng),以及,通過所述基礎(chǔ)進程啟動虛擬輸入服務(wù)進程; 所述宿主操作系統(tǒng)根據(jù)所述虛擬操作系統(tǒng)的IP地址,建立所述模擬控制程序與所述虛擬輸入服務(wù)進程之間的連接。3.如權(quán)利要求2所述的方法,其特征在于, 在所述宿主操作系統(tǒng)得到所述控制命令之后,還包括:所述宿主操作系統(tǒng)根據(jù)所述控制命令轉(zhuǎn)譯得到輸入控制消息,由所述模擬控制程序?qū)⑺鲚斎肟刂葡l(fā)送給所述虛擬輸入服務(wù)進程; 所述由所述虛擬操作系統(tǒng)對輸入控制消息進行處理包括:所述虛擬操作系統(tǒng)對所述輸入控制消息進行解譯,得到所述虛擬操作系統(tǒng)可識別的輸入控制信號。4.如權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述控制命令轉(zhuǎn)譯得到輸入控制消息,包括: 所述模擬控制程序?qū)λ隹刂泼钜约翱刂茀?shù)進行轉(zhuǎn)譯,生成所述輸入控制消息。5.如權(quán)利要求3所述的方法,其特征在于,所述虛擬輸入服務(wù)進程對所述輸入控制消息進行解譯,得到所述虛擬操作系統(tǒng)可識別的輸入控制信號,包括: 對所述虛擬輸入服務(wù)進程接收到的所述輸入控制消息進行解譯,得到所述控制命令; 對解譯得到的控制命令進行硬件抽象層HAL轉(zhuǎn)換,得到所述虛擬操作系統(tǒng)可識別的輸入控制信號。6.如權(quán)利要求2所述的方法,其特征在于, 所述虛擬操作系統(tǒng)運行在與所述宿主操作系統(tǒng)所在物理設(shè)備相獨立的另一個物理設(shè)備上;或者, 所述虛擬操作系統(tǒng)運行在虛擬機上,其中,所述虛擬機運行在所述宿主操作系統(tǒng)所在的物理設(shè)備上,或者,所述虛擬機運行在與所述宿主操作系統(tǒng)所在物理設(shè)備不同的另一個物理設(shè)備上。7.如權(quán)利要求6所述的方法,其特征在于,所述虛擬機為VirtualBox虛擬機; 所述通過所述宿主操作系統(tǒng)中的模擬控制程序啟動所述虛擬操作系統(tǒng),包括:通過所述宿主操作系統(tǒng)中的模擬控制程序控制VirtualBox虛擬機,由VirtualBox虛擬機啟動所述虛擬操作系統(tǒng)。8.如權(quán)利要求6所述的方法,其特征在于,所述虛擬機為VirtualBox虛擬機; 所述虛擬操作系統(tǒng)通過基礎(chǔ)進程加載預(yù)定義腳本,從而將所述虛擬操作系統(tǒng)的IP地址提供給所述宿主操作系統(tǒng),包括: 所述虛擬操作系統(tǒng)通過ini t進程加載預(yù)定義腳本,運行VirtualBox虛擬機的客戶擴展組件,將所述虛擬操作系統(tǒng)的IP地址寫入VirtualBox虛擬機的客戶屬性; 所述宿主操作系統(tǒng)讀取所述VirtualBox虛擬機的客戶屬性,獲取所述虛擬操作系統(tǒng)的IP地址。9.一種虛擬操控的裝置,其特征在于,用于對運行在寄生于宿主操作系統(tǒng)的虛擬操作系統(tǒng)上的應(yīng)用進行控制,所述裝置包括: 宿主虛擬通信單元,用于建立所述宿主操作系統(tǒng)與所述虛擬操作系統(tǒng)之間的通信連接; 腳本預(yù)置單元,用于針對所述應(yīng)用,在所述宿主操作系統(tǒng)中預(yù)置鍵鼠錄制腳本; 腳本解析單元,用于當(dāng)接收到執(zhí)行所述鍵鼠錄制腳本的指令時,,解析所述鍵鼠錄制腳本,得到控制命令; 控制命令處理單元,用于通過所述通信連接,由所述宿主操作系統(tǒng)向所述虛擬操作系統(tǒng)提供基于所述控制命令的輸入控制消息,以便所述虛擬操作系統(tǒng)對輸入控制消息進行處理。10.一種虛擬操控的系統(tǒng),其特征在于,用于對運行在寄生于宿主操作系統(tǒng)的虛擬操作系統(tǒng)上的應(yīng)用進行控制,所述系統(tǒng)包括: 宿主操作系統(tǒng),用于建立與所述虛擬操作系統(tǒng)之間的通信連接,并針對所述應(yīng)用,預(yù)置鍵鼠錄制腳本;在所述虛擬操作系統(tǒng)上運行所述應(yīng)用時,當(dāng)接收到執(zhí)行所述鍵鼠錄制腳本的指令時,解析所述鍵鼠錄制腳本,得到控制命令;通過所述通信連接,向所述虛擬操作系統(tǒng)提供基于所述控制命令的輸入控制消息, 虛擬操作系統(tǒng),用于建立與所述宿主操作系統(tǒng)之間的通信連接,并在接收到宿主操作系統(tǒng)的輸入控制消息之后,對輸入控制消息進行處理。
【專利摘要】本發(fā)明公開了一種虛擬操控的方法、裝置及系統(tǒng),其中的方法包括:建立宿主操作系統(tǒng)與虛擬操作系統(tǒng)之間的通信連接;針對應(yīng)用,在宿主操作系統(tǒng)中預(yù)置鍵鼠錄制腳本;當(dāng)應(yīng)用在虛擬操作系統(tǒng)上運行且接收到執(zhí)行鍵鼠錄制腳本的指令時,宿主操作系統(tǒng)解析鍵鼠錄制腳本,得到控制命令;通過通信連接,宿主操作系統(tǒng)向虛擬操作系統(tǒng)提供基于控制命令的輸入控制消息,由虛擬操作系統(tǒng)對輸入控制消息進行處理??梢姡景l(fā)明能夠針對特定應(yīng)用進行自動模擬預(yù)置腳本的操作,提升用戶感受。
【IPC分類】G06F9/455, G06F9/54
【公開號】CN105550046
【申請?zhí)枴緾N201510921207
【發(fā)明人】李林, 謝京輝, 王有存, 呂鵬, 郭曉龍
【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司
【公開日】2016年5月4日
【申請日】2015年12月11日