输入信号仿真转让专利

申请号 : CN201580056345.1

文献号 : CN107077311B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : C·W·小凯斯P·L·戴维森N·J·菲什M·C·希尔斯代尔A·W·勒克莱尔R·P·威廉姆斯

申请人 : 微软技术许可有限责任公司

摘要 :

由主计算机接收到的输入信号被仿真到客计算机。例如,输入重定向组件被连接在主计算机和客计算机之间。主计算机可被通信地连接到输入设备(例如,触摸显示器、键盘等)。然而,客计算机可不被通信地连接到输入设备,并由此可能不知晓来自输入设备的输入信号。相应地,输入重定向组件可从主计算机接收关于来自输入设备的输入信号的消息。该输入重定向组件可仿真输入设备(例如,连接到客计算机,就好像输入重定向组件是输入设备),并可将仿真输入信号的经仿真的输入信号提供给客计算机(例如,被主计算机接收到的输入信号可被用于控制客计算机)。

权利要求 :

1.一种用于将经仿真的输入信号提供给客计算机的系统,包括:输入重定向组件,包括:

通过第一通信信道被耦合到主计算机的第一控制器组件,所述第一控制器组件通过第二通信信道被耦合到第二控制器组件,所述主计算机被耦合到输入设备,所述第一控制器组件被配置为:在所述第一通信信道上接收来自所述主计算机的消息,所述消息指示由所述主计算机从所述输入设备接收到的输入信号要被转发到客计算机,所述客计算机不被耦合到所述输入设备;

在所述第二通信信道上将所述消息中继到所述第二控制器组件;以及所述第二控制器组件通过第三通信信道被耦合到所述客计算机,所述第二控制器组件被配置为:基于由所述第一控制器组件中继到所述第二控制器组件的所述消息来生成经仿真的输入信号,所述经仿真的输入信号被格式化为显得像源自在所述第三通信信道上被耦合到所述客计算机的经仿真的输入设备的输入信号;以及在所述第三通信信道上将所述经仿真的输入信号提供给所述客计算机。

2.如权利要求1所述的系统,其特征在于,所述输入设备不能被所述客计算机标识。

3.如权利要求1所述的系统,其特征在于,所述输入设备包括以下中的至少一者:触控笔、触摸设备、相机、触摸显示器、眼睛跟踪设备、键盘或鼠标。

4.如权利要求1所述的系统,其特征在于,所述主计算机或所述客计算机中的至少一者包括以下中的至少一者:触摸显示器内的嵌入式计算机、视频游戏控制台、平板、膝上型计算机、可穿戴设备、移动设备、个人计算机或自助服务终端。

5.如权利要求1所述的系统,其特征在于,所述客计算机与所述主计算机相关联地通过视频通信信道被耦合到显示器。

6.如权利要求1所述的系统,其特征在于,所述第二控制器组件被配置成:将所述经仿真的输入信号生成为显得源自包括通用串行总线人类接口设备或无线通信设备中的至少一者在内的设备的经仿真的信号;

将所述经仿真的输入信号提供给被主控在所述客计算机上的与所述设备相对应的设备驱动器。

7.如权利要求1所述的系统,其特征在于,所述第二控制器组件被配置成:标识所述输入设备的设备类型;以及

作为对所述设备类型的仿真连接到所述客计算机以显得像所述经仿真的输入设备。

8.如权利要求1所述的系统,其特征在于,包括:与所述主计算机相关联的视频投影组件,被配置为:接收来自所述客计算机的视频信号;

定义用于与所述主计算机相关联的显示的客显示区域;

针对所述客显示区域来格式化所述视频信号以创建客界面;以及通过所述显示来显示所述客界面。

9.如权利要求8所述的系统,其特征在于,所述输入重定向组件被配置成:将所述输入信号标识为与所述客界面相关联的输入。

10.如权利要求8所述的系统,其特征在于,所述视频投影组件被配置成在显示器上与所述客界面的显示同时地显示与所述主计算机相关联的主界面,并且所述输入重定向组件被配置成将所述输入信号分辨为与所述客界面而非与所述主界面相关联。

11.一种用于将经仿真的输入信号提供给客计算机的方法,包括:建立耦合主计算机和输入重定向组件的第一控制器组件的第一通信信道,所述主计算机被耦合到输入设备;

建立耦合所述输入重定向组件的第一控制器组件和所述输入重定向组件的第二控制器组件的第二通信信道;

建立耦合所述输入重定向组件的第二控制器组件和客计算机的第三通信信道;

在所述第一通信信道上接收来自所述主计算机的消息,所述消息指示由所述主计算机从所述输入设备接收到的输入信号要被转发到所述客计算机,所述客计算机不被耦合到所述输入设备;

在所述第二通信信道上将所述消息中继到所述第二控制器组件;以及基于由所述第一控制器组件中继到所述第二控制器组件的所述消息来生成经仿真的输入信号,所述经仿真的输入信号被格式化为显得像源自在所述第三通信信道上被耦合到所述客计算机的经仿真的输入设备的输入信号;以及在所述第三通信信道上将所述经仿真的输入信号提供给所述客计算机。

12.如权利要求11所述的方法,其特征在于,包括:接收来自与所述主计算机相关联的应用的经虚拟化的输入信号,所述经虚拟化的输入信号对应于被所述应用仿真的经虚拟化的输入设备;以及在所述第二通信信道上将第二消息发送到所述输入重定向组件,所述第二消息指令所述输入重定向组件对所述客计算机将所述经虚拟化的输入设备仿真为经仿真的经虚拟化的输入设备,并在所述第三通信信道上将经仿真的经虚拟化的输入信号作为对所述经虚拟化的输入信号的仿真提供给所述客计算机。

13.如权利要求11所述的方法,其特征在于,包括:接收来自所述客计算机的视频信号;

定义用于与所述主计算机相关联的显示的客显示区域;

针对所述客显示区域来格式化所述视频信号以创建客界面;以及通过所述显示来显示所述客界面。

14.如权利要求13所述的方法,其特征在于,包括:在所述显示上与所述客界面的所述显示同时地显示与所述主计算机相关联的主界面;

以及

将所述输入信号分辨为与所述客界面而非与所述主界面相关联。

15.如权利要求11所述的方法,其特征在于,所述输入设备不能被所述客计算机标识。

16.如权利要求11所述的方法,其特征在于,包括:将所述经仿真的输入信号生成为显得源自通用串行总线人类接口设备的经仿真的信号;以及将所述经仿真的输入信号提供给被主控在所述客计算机上的与所述通用串行总线人类接口设备相对应的设备驱动器。

17.如权利要求11所述的方法,其特征在于,包括:标识所述输入设备的设备类型;以及

作为对所述设备类型的仿真连接到所述客计算机以显得像所述经仿真的输入设备。

18.一种包括指令的计算机可读介质,所述指令在被执行时执行一种用于将经仿真的输入信号提供给客计算机的方法,包括:建立与耦合到输入重定向组件的主计算机的第一通信信道;

在所述输入重定向组件与客计算机之间建立第二通信信道;

在所述第一通信信道上接收来自所述主计算机的消息,所述消息指示由所述主计算机从耦合到所述主计算机的输入设备接收到的输入信号要被转发到所述客计算机,所述客计算机不被耦合到所述输入设备;

基于所述消息生成经仿真的输入信号,所述经仿真的输入信号被格式化为看上去像源自耦合到所述客计算机的经仿真的输入设备的输入信号;以及将所述经仿真的输入信号在所述第二通信信道上提供给所述客计算机。

19.如权利要求18所述的计算机可读介质,其特征在于,包括:标识所述输入设备的设备类型;以及

作为对所述设备类型的仿真连接到所述客计算机以显得像所述经仿真的输入设备。

20.如权利要求18所述的计算机可读介质,其特征在于,所述第一通信信道或所述第二通信信道中的至少一者包括双向通信信道。

说明书 :

输入信号仿真

背景技术

[0001] 许多用户可与各种类型的计算设备,诸如膝上型计算机、平板、个人计算机、移动电话、自助服务终端、视频游戏系统等,进行交互。在一示例中,用户可使用移动电话来通过地图界面获得通往目的地的驾驶方向。在另一示例中,用户可使用商店的自助服务终端来通过商店用户界面打印优惠券并查找库存。
[0002] 概述
[0003] 提供本概述以便以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键因素或必要特征,也不旨在用于限定所要求保护的主题的范围。
[0004] 本文提供用于将经仿真的输入信号提供给客计算机的一种或多种系统和/或技术。在一将经仿真的输入信号提供给客计算机的示例中,输入重定向组件包括第一控制器组件和第二控制器组件。第一控制器组件通过第一通信信道被耦合到主计算机。第一控制器组件通过第二通信信道被耦合到第二控制器组件。主计算机被耦合到输入设备。第一控制器组件被配置成在第一通信信道上接收来自主计算机的消息。该消息指示被主计算机接收到的来自输入设备的输入信号要被转发到客计算机,其中客计算机不被耦合到输入设备。第一控制器组件被配置成在第二通信信道上将该消息中继到第二控制器组件。第二控制器组件通过第三通信信道被耦合到客计算机。第二控制器组件被配置成基于被第一控制器组件中继到第二控制器组件的消息来生成经仿真的输入信号。经仿真的输入信号被格式化为显得像源自通过第三通信信道被耦合到客计算机的经仿真的输入设备的输入信号。经仿真的输入信号在第三通信信道上被提供给客计算机。
[0005] 在一将经仿真的输入信号提供给客计算机的示例中,建立与耦合到主计算机的输入设备的第一通信信道。经由第一通信信道接收到来自输入设备的输入信号。建立与输入重定向组件的第二通信信道。一消息在第二通信信道上被发送到输入重定向组件。该消息指令输入重定向组件对于客计算机而言将输入设备仿真为经仿真的输入设备。该消息指令输入重定向组件在输入重定向组件与客计算机之间的第三通信信道上将经仿真的输入信号作为对输入信号的仿真提供给客计算机。
[0006] 在一将经仿真的输入信号提供给客计算机的示例中,建立与耦合到输入重定向组件的主计算机的第一通信信道。在输入重定向组件与客计算机之间建立第二通信信道。在第一通信信道上接收到来自主计算机的消息。该消息指示被主计算机接收到的来自耦合到主计算机的输入设备的输入信号要被转发到客计算机。客计算机不被耦合到输入设备。基于该消息来生成经仿真的输入信号。经仿真的输入信号被格式化为显得像源自被耦合到客计算机的经仿真的输入设备的输入信号。经仿真的输入信号在第二通信信道上被提供给客计算机。
[0007] 为了实现上述内容和相关目的,以下描述和附图阐述了某些说明性方面和实现。这些方面和实现仅指示可以使用一个或多个方面的各种方式中的一些。结合附图阅读以下详细描述,则本公开的其他方面、优点、以及新颖特征将变得显而易见。
[0008] 附图简述
[0009] 图1是示出用于将经仿真的输入信号提供给客计算机的示例性方法的流程图。
[0010] 图2是示出用于将经仿真的输入信号提供给客计算机的示例性方法的流程图。
[0011] 图3是示出用于将经仿真的输入信号提供给客计算机的示例性系统的组件框图。
[0012] 图4A是示出用于基于与客显示区域相关联的输入信号将经仿真的输入信号提供给客计算机的示例性系统的组件框图。
[0013] 图4B是示出用于将经仿真的输入信号提供给客计算机的示例性系统的组件框图,其中输入信号被确定为与主显示区域而非客显示区域相关联。
[0014] 图4C是示出用于基于与客显示区域相关联的输入信号将经仿真的输入信号提供给客计算机的示例性系统的组件框图。
[0015] 图5是示出用于将经仿真的输入信号提供给客计算机的示例性系统的组件框图。
[0016] 图6是示例性计算机可读介质的图示,其中可包括被配置成实现此处所阐述的原理中的一个或多个的处理器可执行指令。
[0017] 图7示出其中可实现本文中所阐述的措施中的一个或多个的示例性计算环境。
[0018] 详细描述
[0019] 现在参考附图来描述所要求保护的主题,所有附图中一般使用相同的附图标记来指代相同的元素。在以下描述中,为解释起见,阐明了众多具体细节以提供对所要求保护的主题的理解。但是显而易见的是,没有这些具体细节也可实践所要求保护的主题。在其他实例中,以框图形式示出了各个结构和设备以便于描述所要求保护的主题。
[0020] 本文提供用于将经仿真的输入信号提供给客计算机的一种或多种技术和/或系统。用户可能希望将客计算机连接到主计算机,使得主计算机的输入设备可被用于操作客计算机。相应地,如本文中提供的,输入重定向组件可被配置成从主计算机接收关于从被耦合到主计算机但不被耦合到客计算机的输入设备(例如,触摸显示器)接收的输入信号的消息(例如,客计算机可通过视频连接被连接到触摸显示器,但不通过会允许客计算机从触摸显示器接收输入信号的连接被连接到触摸显示器)。输入重定向组件可被配置成基于该输入信号来生成经仿真的输入信号,并将经仿真的输入信号提供给客计算机(例如,经仿真的输入信号可被格式化为对于客计算机显得就好像它源自连接到客计算机的输入设备)。在一示例中,输入重定向组件可与主计算机结合,并由此可减轻客计算机存储器和/或处理器的利用,以及对客计算机上定制软件的需求。在另一示例中,输入重定向组件可与主计算机和/或客计算机分开(例如,输入重定向组件可通过第一连接(诸如第一通用串行总线(USB)连接或其他连接类型(诸如第一无线通信连接))被连接到主计算机,并可通过第二连接(诸如第二USB连接或其他连接类型(诸如第二无线通信连接))被连接到客计算机)。
[0021] 用于向客计算机提供经仿真的输入信号的一实施例被图1的示例性方法100示出。在102,该方法开始。在104,可建立与耦合到主计算机的输入设备的第一通信信道。在一示例中,输入设备可包括触控笔、触摸设备、触摸显示器、键盘、鼠标、相机和/或任何其他类型的输入设备。主计算机可通过各种类型的连接被耦合到输入设备,各种类型的连接诸如有线连接、无线连接、USB连接、互连结构(例如,触摸显示器可通过铜线、金属迹线和/或其他连接结构被硬连线到嵌入式主计算机)等等。在一示例中,第一通信信道可包括双向通信信道。
[0022] 在一示例中,主计算机可在显示器(诸如触摸显示器)上显示主界面(例如,主计算机的桌面环境)。主计算机可定义用于显示客计算机的客界面的客显示区域(例如,客计算机可通过视频连接被连接到主计算机和/或触摸显示器)。客显示器区域和主显示区域可被同时显示(例如,客显示区域和/或主显示区域可被主计算机调整大小、移动和/或修改)。被客计算机接收到的视频信号可针对客显示区域被格式化以创建用于通过触摸显示器显示的客界面。通过这种方式,主计算机可通过主界面来显示来自主计算机的视频输出,并且通过客界面来显示来自客计算机的视频输出。因为与触摸显示器的交互和/或来自其他连接到主计算机的输入设备(例如,鼠标、触控笔等)的输入信号可能不被返回提供给客计算机,所以仿真的输入信号可被提供给客计算机。
[0023] 在106,可经由第一通信信道接收来自输入设备的输入信号。例如,输入信号可对应于触摸显示器上的触摸姿势。在一示例中,输入信号可被分辨为与客界面(例如,客计算机的客操作系统的显示)相关联而不与主计算机的主界面相关联。在108,可建立与输入重定向组件的第二通信信道。例如,主计算机可通过第二通信信道(例如,有线连接、无线连接、USB连接、互连结构等)被连接到输入重定向组件的第一控制器组件。在一示例中,第二通信信道可包括双向通信信道。在一示例中,第一控制器组件可包括被配置成与主计算机通信的首主机固件。在一示例中,第一控制器组件可(例如,通过串行外围接口(SPI)连接)被连接到输入重定向组件的第二控制器组件。第二控制器组件可包括被配置成经由输入重定向组件与客计算机之间的第三通信信道与客计算机进行通信的客固件。在一示例中,第三通信信道可包括双向通信信道。
[0024] 在110,消息可经由第二通信信道被(诸如被主计算机)发送到输入重定向组件。该消息可指令输入重定向组件对于客计算机而言将输入设备仿真为经仿真的输入设备。在一示例中,客固件可被配置成与客计算机“握手”和连接,(在假的印象下)就好像第二控制器组件是输入设备(诸如触摸显示器)那样。例如,输入设备的设备类型被标识(例如,触摸显示器设备类型)。第二控制器组件可作为对该设备类型的仿真来连接到客计算机,以对于客计算机显得像经仿真的输入设备(例如,对客计算机显得像通过第三通信信道连接到客计算机的触摸显示器)。该消息可指令输入重定向组件在第三通信信道上将经仿真的输入信号作为对输入信号的仿真来提供给客计算机。例如,第二控制器组件可将经仿真的输入信号生成为显得源自USB人类接口设备(HID)或其他类型的输入设备(例如,通过HSB HID连接来连接到客计算机的触摸显示器、无线通信设备、有线通信设备等)的经仿真的信号。第二控制器组件(诸如客固件)可将经仿真的输入信号提供给被主控在客计算机上的设备驱动器(例如,USB HID设备驱动器)。通过这种方式,经仿真的信号(例如,对于触摸显示器上的触摸姿势的仿真)可被提供给客计算机。
[0025] 在提供对经虚拟化的输入信号的仿真的示例中,可从与主计算机相关联的应用中接收经虚拟化的输入信号。经虚拟化的输入信号可对应于由该应用仿真的经虚拟化的输入设备。例如,该应用(诸如脚本)可将一系列键击生成为经虚拟化的输入信号。第二消息可在第二通信信道上被发送到输入重定向组件。第二消息可指令输入重定向组件(例如,第二控制器组件)针对客计算机将经虚拟化的输入设备仿真为经仿真的经虚拟化的输入设备。例如,第二控制器组件的客固件可被配置成与客计算机“握手”和连接,(在假的印象下)就好像第二控制器组件是键盘那样。第二消息可指令输入重定向组件将经仿真的经虚拟化的输入信号作为对经虚拟化的输入信号的仿真在第三通信信道上提供给客计算机(例如,该一系列键击可被第二控制组件提供给客计算机,就好像第二控制器组件是从用户接收到该一系列键击的键盘那样)。通过这种方式,对经虚拟化的输入信号的仿真可被提供给客计算机。
[0026] 在其中第一通信信道、第二通信信道和/或第三通信信道是双向通信信道的示例中,客计算机可通过输入重定向组件和主计算机将命令发送(例如,发送回)到输入设备。例如,用户可点击连接到主计算机的键盘输入设备上的Caps Lock(大写锁定)键,其可针对客计算机被仿真。客计算机可将命令发送回键盘输入设备以开启或关闭Caps Lock LED(大写锁定发光二极管)。在112,该方法结束。
[0027] 用于向客计算机提供经仿真的输入信号的一实施例被图2的示例性方法200示出。在202,该方法开始。在204,可建立与耦合到输入重定向组件的主计算机的第一通信信道(例如,输入重定向组件的第一控制器组件可在第一连接(诸如第一USB HID连接)上建立第一通信信道)。在206,可在输入重定向组件和客计算机之间建立第二通信信道(例如,输入重定向组件的第二控制器组件可在第二连接(诸如第二USB HID连接)上建立第二通信信道)。在一示例中,第一控制器组件可诸如通过SPI连接被连接到第二控制器组件。
[0028] 在208,可在第一通信信道上接收到来自主计算机的消息(例如,第一控制器组件的首主机固件可接收该消息)。该消息可指示被主计算机接收到的来自耦合到主计算机的输入设备的输入信号要被转发到客计算机。例如,该消息可指示主计算机接收到来自连接到主计算机的鼠标的鼠标点击。客计算机可不被耦合到输入设备(例如,鼠标可不被连接到客计算机)。
[0029] 在210,可基于该消息来生成经仿真的输入信号。经仿真的输入信号可被格式化为显得像源自耦合到客计算机的经仿真的输入设备的输入信号(例如,第二控制器组件的客固件可将其自己作为鼠标呈现给客计算机)。在一示例中,输入设备的设备类型可被标识(例如,鼠标设备类型),并且第二控制器组件可作为对该设备类型的仿真以显得像经仿真的输入设备来连接。在一示例中,经仿真的输入信号可被生成为显得源自USB HID设备或连接到客计算机的其他类型的设备的经仿真的信号。在212,经仿真的输入信号在第二通信信道上被提供给客计算机。例如,经仿真的输入信号可被提供给被主控在客计算机上的设备驱动器(例如,USB HID设备驱动器)。通过这种方式,输入重定向组件可将经仿真的输入信号提供给客计算机。在214,该方法结束。
[0030] 图3示出用于将经仿真的输入信号提供给客计算机330的系统300的一示例。系统300包括输入重定向组件316。输入重定向组件316包括经由第一通信信道318耦合到主计算机314的第一控制器组件320。主计算机314可包括嵌入式计算机(例如,触摸显示器内)、视频游戏控制台、平板、膝上型计算机、移动设备、可穿戴设备(例如,眼镜、手表等)、个人计算机、自助服务终端等。第一控制器组件320可通过第二通信信道322被耦合到输入重定向组件316的第二控制器组件324。主计算机314可通过通信信道312被耦合到输入设备,诸如鼠标302、键盘304、相机306、触摸设备308、触控笔、存储设备(例如,USB闪存驱动器、硬盘驱动器等)或任意其他输入设备。客计算机330可不被耦合到输入设备(例如,客计算机330可通过视频连接来被连接到触摸显示器,但不通过会允许客计算机330接收来自输入设备的输入信号的连接来被连接到触摸显示器),并由此输入设备可能不是可标识的(例如,通过客计算机330的设备驱动器)。在一示例中,输入重定向组件316可被实现为在多个计算机之间互连的单个硬件组件,该多个计算机诸如主计算机和客计算机(例如,输入重定向组件316可包括独立的即插即用设备)。
[0031] 第一控制器组件320可被配置成在第一通信信道318上接收来自主计算机314的消息(例如,第一控制器组件320的首主机固件可接收该消息)。该消息可指示被主计算机320接收到的来自输入设备的输入信号要被转发到客计算机330。例如,输入信号可包括来自鼠标302的鼠标点击输入信号。第一控制器组件320可在第二通信信道322上将该消息中继到第二控制器组件324(例如,该消息可被中继到第二控制器组件324的客固件)。
[0032] 第二控制器组件324可基于该消息来标识输入设备的设备类型,诸如鼠标302的鼠标设备类型。第二控制器组件324可作为对该设备类型的仿真来连接到客计算机330以显得像经仿真的输入设备326,诸如对于客计算机330而言显得像在第二控制器组件324与客计算机330之间的第三连接328上被连接到客计算机330的对鼠标的仿真。第二控制器组件324可被配置成基于该消息来生成经仿真的输入信号。经仿真的输入信号可被格式化为显得像源自经仿真的输入设备的输入信号(例如,就好像第二控制器组件324是创建了鼠标点击输入信号的鼠标)。在一示例中,经仿真的输入信号可被生成为显得源自USB HIM设备的经仿真的信号,并且可被提供给被主控在客计算机330上的USB HID设备驱动器。通过这种方式,鼠标点击的经仿真的输入信号可在第三通信信道328上被提供给客计算机330。
[0033] 图4A-4C示出系统401的各示例,该系统401包括用于将经仿真的输入信号提供给客计算机424的输入重定向组件412。图4A的示出输入重定向组件412的一示例400,输入重定向组件412包括通过第一通信信道410被耦合到主计算机(诸如触摸显示器输入设备402的嵌入式计算机408)的第一控制器组件414。第一控制器组件414可通过第二通信信道418被耦合到输入重定向组件412的第二控制器组件418。嵌入式计算机408可被耦合到触摸显示器输入设备402(例如,嵌入在触摸显示器输入设备402内)。输入信号可基于与触摸显示器输入设备402的用户交互由触摸显示器输入设备402生成。客计算机424可不通过允许触摸显示器输入设备402直接将输入信号提供给客计算机424的通信信道被耦合到触摸显示器输入设备402(例如,视频通信信道428可对应于视频电缆,诸如连接到客计算机424的显示输出端口426的HDMI电缆,该视频电缆不支持触摸显示器输入设备402将触摸输入信号发送到客计算机424)。
[0034] 在一示例中,客计算机424可使用视频通信信道428来连接到与触摸显示器输入设备402相关联的视频投影组件432。视频投影组件432可在触摸显示器输入设备402上定义客显示区域404(例如,通过该客显示区域404,客计算机424可投影桌面计算环境或其他视频输出)。视频投影组件432可被配置成接收来自客计算机424的视频信号。视频投影组件432可针对客显示区域404来格式化视频信号以创建客界面。客界面可通过客显示区域404来显示。视频投影组件432可在触摸显示器输入设备402上定义主显示区域406(例如,通过该主显示区域406,嵌入式计算机408可显示视频输出,诸如触摸显示器计算环境)。视频投影组件432可通过主显示区域406显示与嵌入式计算机408相关联的主界面。在一示例中,视频投影组件432可对客显示区域404和/或主显示区域406的显示进行移动、重新调整大小、隐藏和/或修改(例如,响应于触摸显示器输入设备402上的用户触摸姿势)。
[0035] 视频投影组件432可被配置成确定触摸显示器输入设备402的输入是对应于客显示区域404还是对应于主显示区域406。图4A示出了视频投影组件432确定输入430对应于客显示区域404而非主显示区域406的示例400。图4B示出了视频投影组件432确定输入452对应于主显示区域406而非客显示区域404的示例450。图4C示出了示例470,其中视频投影组件432修改主显示区域406和客显示区域404的大小和位置(例如,用户可使用触摸姿势来移动显示区域和/或重新调整显示区域的大小)。视频投影组件432可确定输入472对应于客显示区域404而非主显示区域406(例如,即使输入472关于先前在主显示区域内的像素)。通过这种方式,与客显示区域相关联的输入信号可被标识。
[0036] 第一控制器组件414可被配置成在第一通信信道410上接收来自嵌入式计算机408的消息。该消息可指示被嵌入式计算机408接收到的来自触摸显示器输入设备402的输入信号(例如,触摸姿势)要被转发到客计算机424。第一控制器组件414可在第二通信信道416上将该消息中继到第二控制器组件418。
[0037] 第二控制器组件418可基于该消息来标识输入设备的设备类型,诸如触摸显示器输入设备402的触摸显示器设备类型。第二控制器组件418可作为对该设备类型的仿真来连接到客计算机424以显得像经仿真的输入设备420,诸如对于客计算机424显得像在第二控制器组件418与客计算机424之间的第三通信信道422上被连接到客计算机424的对触摸显示器输入设备的仿真。第二控制器组件418可被配置成基于该消息来生成经仿真的输入信号。经仿真的输入信号可被格式化为显得像源自经仿真的输入设备420的输入信号(例如,就好像第二控制器组件418是创建了触摸姿势的触摸显示器)。通过这种方式,触摸姿势的经仿真的输入信号可在第三通信信道422上被提供给客计算机424。
[0038] 图5示出用于将经仿真的经虚拟化的输入信号提供给客计算机520的系统500的一示例。系统500包括输入重定向组件508。输入重定向组件508包括经由第一通信信道506耦合到主计算机502的第一控制器组件510。主计算机502可主控一应用504,该应用504被配置成生成对应于被该应用504仿真的虚拟输入设备(诸如键盘)的输入信号(例如,“经虚拟化的”输入信号为使得“经虚拟化的”输入信号显得像来自输入设备,但实际上由例如应用504生成)。例如,应用504可生成可被主计算机502作为输入信号来接收的一系列键击。第一控制器组件510可通过第二通信信道514被耦合到输入重定向组件508的第二控制器组件512。客计算机520可不被通信地耦合到应用504,并由此输入信号可能不可被客计算机520标识。
[0039] 第一控制器组件510可被配置成在第一通信信道506上接收来自主计算机502的消息(例如,第一控制器组件510的首主机固件可接收该消息)。该消息可指示被主计算机502接收到的来自应用504的输入信号要被转发到客计算机520。第一控制器组件510可在第二通信信道512上将该消息中继到第二控制器组件514(例如,该消息可被中继到第二控制器组件514的客固件)。
[0040] 第二控制器组件514可基于该消息来标识输入设备的设备类型,诸如键盘设备类型。第二控制器组件514可作为对键盘设备类型的仿真来连接到客计算机520以显得像经仿真的输入设备516,诸如对于客计算机520显得像在第二控制器组件514与客计算机520之间的第三通信信道518上被连接到客计算机520的对键盘的仿真。第二控制器组件514可被配置成对于客计算机520而言将输入设备仿真为经仿真的输入设备516。第二控制器组件514可在第三通信信道518上将经仿真的输入信号作为对输入信号的仿真来提供给客计算机502。通过这种方式,键盘的经仿真的输入信号可在第三通信信道518上被提供给客计算机
520。
[0041] 根据本公开的一方面,提供了用于将经仿真的输入信号提供给客计算机的系统。该系统包括输入重定向组件,该输入重定向组件包括第一控制器组件和第二控制器组件。
第一控制器组件通过第一通信信道被耦合到主计算机。第一控制器组件通过第二通信信道被耦合到第二控制器组件。主计算机被耦合到输入设备。第一控制器组件被配置成在第一通信信道上接收来自主计算机的消息。该消息指示被主计算机接收到的来自输入设备的输入信号要被转发到客计算机。客计算机不被耦合到输入设备。第一控制器组件被配置成在第二通信信道上将该消息中继到第二控制器组件。第二控制器组件通过第三通信信道被耦合到客计算机。第二控制器组件被配置成基于被第一控制器组件中继到第二控制器组件的消息来生成经仿真的输入信号。经仿真的输入信号被格式化为显得好像源自通过第三通信信道被耦合到客计算机的经仿真的输入设备的输入信号。第二控制器组件被配置成在第三通信信道上将经仿真的输入信号提供给客计算机。
[0042] 根据本公开的一方面,提供了用于将经仿真的输入信号提供给客计算机的方法。该方法包括建立与耦合到主计算机的输入设备的第一通信信道。经由第一通信信道接收到来自输入设备的输入信号。建立与输入重定向组件的第二通信信道。一消息在第二通信信道上被发送到输入重定向组件。该消息指令输入重定向组件对于客计算机而言将输入设备仿真为经仿真的输入设备。该消息指令输入重定向组件在输入重定向组件与客计算机之间的第三通信信道上将经仿真的输入信号作为对输入信号的仿真提供给客计算机。
[0043] 根据本公开的一方面,提供了包括指令的计算机可读介质,当指令被执行时执行用于将经仿真的输入信号提供给客计算机的方法。该方法包括建立与耦合到输入重定向组件的主计算机的第一通信信道。在输入重定向组件与客计算机之间建立第二通信信道。在第一通信信道上接收到来自主计算机的消息。该消息指示被主计算机接收到的来自耦合到主计算机的输入设备的输入信号要被转发到客计算机。客计算机不被耦合到输入设备。基于该消息来生成经仿真的输入信号。经仿真的输入信号被格式化为显得像源自被耦合到客计算机的经仿真的输入设备的输入信号。经仿真的输入信号在第二通信信道上被提供给客计算机。
[0044] 根据本公开的一方面,提供了用于将经仿真的输入信号提供给客计算机的装置。输入重定向组件包括第一控制器组件和第二控制器组件。第一控制器组件通过第一通信信道被耦合到主计算机。第一控制器组件通过第二通信信道被耦合到第二控制器组件。主计算机被耦合到输入设备。在第一通信信道上通过用于提供经仿真的输入信号的装置接收到来自主计算机的消息。该消息指示被主计算机接收到的来自输入设备的输入信号要被转发到客计算机。客计算机不被耦合到输入设备。该消息在第二通信信道上通过用于提供经仿真的输入信号的装置被中继到第二控制器组件。第二控制器组件通过第三通信信道被耦合到客计算机。基于被用于提供经仿真的输入信号的装置所中继的消息来生成经仿真的输入信号。经仿真的输入信号被格式化为显得像源自通过第三通信信道被耦合到客计算机的经仿真的输入设备的输入信号。经仿真的输入信号在第三通信信道上通过用于提供经仿真的输入信号的装置被提供给客计算机。
[0045] 根据本公开的一方面,提供了用于将经仿真的输入信号提供给客计算机的装置。通过用于提供经仿真的输入信号的装置建立与耦合到主计算机的输入设备的第一通信信道。在第一通信信道上通过用于提供经仿真的输入信号的装置接收到来自输入设备的输入信号。建立与输入重定向组件的第二通信信道。一消息在第二通信信道上通过用于提供经仿真的输入信号的装置被发送到输入重定向组件。该消息指令输入重定向组件对于客计算机而言将输入设备仿真为经仿真的输入设备。该消息指令输入重定向组件在输入重定向组件与客计算机之间的第三通信信道上将经仿真的输入信号作为对输入信号的仿真提供给客计算机。
[0046] 根据本公开的一方面,提供了用于将经仿真的输入信号提供给客计算机的装置。建立与耦合到输入重定向组件的主计算机的第一通信信道。通过用于提供经仿真的输入信号的装置在输入重定向组件与客计算机之间建立第二通信信道。在第一通信信道上通过用于提供经仿真的输入信号的装置接收到来自主计算机的消息。该消息指示被主计算机接收到的来自耦合到主计算机的输入设备的输入信号要被转发到客计算机。客计算机不被耦合到输入设备。基于该消息,通过用于提供经仿真的输入信号的装置来生成经仿真的输入信号。经仿真的输入信号被格式化为显得像源自被耦合到客计算机的经仿真的输入设备的输入信号。经仿真的输入信号在第二通信信道上通过用于提供经仿真的输入信号的装置被提供给客计算机。
[0047] 又一实施例涉及包括被配置成实现此处所呈现的技术中的一种或多种的处理器可执行指令的计算机可读介质。计算机可读介质或计算机可读设备的一个示例实施例在图6中示出,其中实现600包括计算机可读介质608,诸如CD-R、DVD-R、闪存驱动器、硬盘驱动器的盘片等,其上编码有计算机可读数据606。该计算机可读数据606(诸如包括0或1中的至少一者的二进制数据)进而包括被配置成根据此次阐述的原理中的一个或多个来操作的一组计算机指令604。在某些实施例中,处理器可执行计算机指令604被配置成执行方法602,诸如例如,图1的示例性方法100的至少一些和/或图2的示例性方法200的至少一些。在某些实施例中,处理器可执行指令604被配置成实现一系统,诸如例如图3的示例性系统300的至少一些、图4A-4C的示例性系统401的至少一些、和/或图5的示例性系统500的至少一些。本领域普通技术人员可设想被配置成根据此处所呈现的技术来操作的许多此类计算机可读介质。
[0048] 尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。实际上,上述具体特征和动作是作为实现权利要求书中的至少一些的示例形式公开的。
[0049] 如在本申请中所使用的,术语“组件”、“模块”、“系统”、“接口”等一般旨在表示计算机相关的实体,该实体可以是硬件、硬件和软件的组合、软件、或者执行中的软件。例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行件、执行的线程、程序、和/或计算机。作为说明,运行在控制器上的应用程序和控制器都可以是组件。一个或多个组件可驻留在进程和/或执行的线程内,并且组件可位于一个计算机上和/或分布在两个或更多的计算机之间。
[0050] 此外,所要求保护的主题事项可使用标准变成和/或工程设计技术实现为方法、装置或制造作品,以制造软件、固件、硬件或其任意组合来控制计算机以实现所公开的主题事项。如此处所使用的术语“制品”旨在涵盖可从任何计算机可读设备、载体、或介质进行访问的计算机程序。当然,不背离所要求保护的主题的范围或精神的情况下可对该配置作出许多修改。
[0051] 图7和以下讨论提供了对实现本文所阐述的一个或多个原理的实施例的合适计算环境的简要、概括描述。图7的操作环境只是合适的操作环境的一个示例,而不旨在对该操作环境的使用范围或功能暗示任何限制。示例计算设备包括但不限于,个人计算机、服务器计算机、手持式或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等)、多处理器系统、消费电子产品、小型计算机、大型计算机、包括任何以上系统或设备中的任一个的分布式计算环境等。
[0052] 虽然并非必需,但是实施例在由一个或多个计算设备执行的“计算机可读指令”的一般上下文中进行描述。计算机可读指令可经由计算机可读介质来分发(在下文中讨论)。计算机可读指令可被实现为执行特定任务或实现特定抽象数据类型的程序模块,诸如函数、对象、应用程序编程接口(API)、数据结构等。通常,计算机可读指令的功能可按需在各种环境中组合或分布。
[0053] 图7示出包括被配置成实现此处所提供的一个或多个实施例的计算设备712的系统700的示例。在一种配置中,计算设备712包括至少一个处理单元716和存储器718。取决于计算设备的确切配置和类型,存储器718可以是易失性的(例如诸如RAM)、非易失性的(例如诸如ROM、闪存等)、或两者的一些组合。该配置在图7中由虚线714示出。
[0054] 在其他实施例中,设备712可包括附加特征和/或功能。例如,设备712还可以包括附加存储(例如,可移动和/或不可移动的),其中包括但不限于磁存储、光存储等等。此类附加存储在图7中由存储720示出。在一个实施例中,实现此处所提供的一个或多个实施例的计算机可读指令可位于存储720中。存储720还可储存实现操作系统、应用程序等其他计算机可读指令。可将计算机可读指令加载到存储器718中,以供例如处理单元716执行。
[0055] 如此处所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据之类的信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。存储器718和存储720是计算机存储介质的示例。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁存储设备、或者可用于存储所需信息且可由设备712访问的任何其他介质。然而,计算机存储介质不包括传播信号。相反,计算机存储介质排除传播信号。任何这样的计算机存储介质可以是设备712的一部分。
[0056] 设备712还可包括允许该设备712与其他设备进行通信的通信连接726。通信连接726可包括但不限于,调制解调器、网络接口卡(NIC)、集成网络接口、射频发射机/接收机、红外线端口、USB连接、或用于将计算设备712连接到其他计算设备的其他接口。通信连接
726可包括有线连接或无线连接。通信连接726可发送和/或接收通信媒体。
[0057] 术语“计算机可读介质”可包括通信介质。通信介质通常以诸如载波或其他传输机制之类的“已调制数据信号”来体现计算机可读指令或其他数据,并且包括任何信息传送介质。术语“已调制数据信号”可包括以对信号中的信息进行编码的方式设置或改变其一个或多个特征的信号。
[0058] 设备712可包括输入设备724,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外相机、视频输入设备、和/或任何其他输入设备。在设备712中还可包括输出设备722,诸如一个或多个显示器、扬声器、打印机、和/或任何其他输出设备。输入设备724和输出设备722可经由有线连接、无线连接、或其任何组合连接到设备712。在一个实施例中,来自另一计算设备的输入设备或输出设备可用作计算设备712的输入设备724或输出设备722。
[0059] 计算设备712的组件可通过多种互连来连接,例如总线。这样的互连可以包括诸如PCI Express之类的外围部件互连(PCI)、通用串行总线(USB)、火线(IEEE 1394)、光学总线结构等等。在另一实施例中,计算设备712的组件可通过网络来互连。例如,存储器718可包括位于通过网络互连的不同物理位置的多个物理存储器单元。
[0060] 本领域技术人员应当认识到,用于存储计算机可读指令的存储设备可分布在网络上。例如,可以通过网络728访问的计算设备730可以储存实现此处所提供的一个或多个实施例的计算机可读指令。计算设备712可访问计算设备730,并且下载部分或全部计算机可读指令以供执行。替换地,计算设备712可按需下载计算机可读指令的片断,或者一些指令可在计算设备712处执行,而一些指令则可在计算设备730处执行。
[0061] 本文提供了各实施例的各种操作。在一个实施例中,所描述的操作中的一个或多个可以组成存储在一个或多个计算机可读介质上的计算机可读指令,这些指令如果由计算设备执行则使得计算设备执行所描述的操作。所描述的一些或所有操作的顺序不应该被解释为暗示这些操作一定是依赖于顺序的。从本说明书获益的本领域技术人员将认识到替换顺序。此外,应该理解,并非所有的操作都一定存在于本文所提供的每一个实施例中。此外,将理解,在某些实施例中并非所有的操作都是必须的。
[0062] 此外,除非特指,否则“第一”、“第二”和/或类似的不旨在暗示时间方面、空间方面、次序等。相反,这样的术语仅仅被用作特征、元素、项等的标识、名称等。例如,第一对象和第二对象通常对应于对象A和对象B或两个不同或两个相同对象或同一对象。
[0063] 此外,本文中所使用的词语“示例性”意指用作示例、实例或说明等,并不需要作为优选。如在此使用的,“或”意指包括性“或”而非互斥性“或”。另外,本申请中所使用的“一”和“一个”一般可被解释为意指“一个或多个”,除非另有指定或从上下文中清晰可见是指单数形式。同样,A和B和/或等中至少一个通常是指A、或B、或A和B二者。此外,就在详细说明书或权利要求书中使用术语“包含”、“具有”、“含有”和“带有”及其变体而言,此类术语旨在以与术语“包括”相似的方式为包含性的。
[0064] 同样,虽然参考一个或多个实现示出并描述了本公开,但本领域技术人员基于对本说明书和附图阅读和理解,可以想到各种等效更改和修改。本发明包括所有这样的修改和更改,并且仅由所附权利要求的范围来限定。具体来说,对于由上述组件(例如,元素、资源等等)执行的各种功能,除非另外指明,否则用于描述这些组件的术语旨在对应于执行所描述的组件的指定功能(例如,功能上等效)的任何组件,即使这些组件在结构上不等效于所公开的结构。此外,尽管可相对于若干实现中的仅一个实现来公开本公开的一个特定特征,但这一特征可以如对任何给定或特定应用所需且有利地与其他实现的一个或多个其他特征相组合。