具有虚拟显示器的显示系统转让专利

申请号 : CN201580056091.3

文献号 : CN107111468A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 贝基·盖尔·基克勒-格罗斯马修·R·麦克林戴维·克里斯汀·奎奥尔曼赖安·查尔斯·多尔蒂·廷德尔本·洛伦·英格利施安迪·伊格尔·豪艾伯特·弗雷德里克·乔治·西索纳

申请人 : 巴尔科股份有限公司

摘要 :

提供了用于产生显示在现有显示器(2)上的虚拟显示器(21)的系统,该虚拟显示器使用设备的存储器作为用于虚拟显示器的帧缓冲器。该虚拟显示器可以使用设备(例如计算机)的随机存取存储器(RAM)或图形处理单元(GPU)的存储器作为产生显示在虚拟显示器中的帧的第二帧缓冲器(17)。该虚拟显示器不是物理显示器,因此不需要任何附加的硬件或物理空间。而是在现有显示器上显示该虚拟显示器。现有显示器也可以用于显示在第一帧缓冲器(16)中产生的帧。

权利要求 :

1.一种用于产生虚拟显示器的显示系统,所述显示系统包括:显示器;和

显示控制器,所述显示控制器包括第一帧缓冲器和第二帧缓冲器,所述第一帧缓冲器配置成将第一帧提供给所述显示器,所述第二帧缓冲器配置成将第二帧提供给所述显示器;

其中,所述第一帧的内容和所述第二帧的内容被传递到所述显示器且同时被所述显示器显示,使得所述第二帧的内容至少部分地与所述第一帧的内容重叠并遮盖所述第一帧的内容。

2.如权利要求1所述的显示系统,其中,所述第一帧缓冲器借助视频输出端将所述第一帧的内容提供给所述显示器。

3.如权利要求2所述的显示系统,其中,所述视频输出端为HDMI输出端、VGA输出端、DVI输出端、分量视频输出端、显示器端口、或小型显示器端口中的至少一者。

4.如权利要求2或3中任一项所述的显示系统,其中,所述第二帧缓冲器借助所述视频输出端将所述第二帧的内容提供给所述显示器。

5.如前述权利要求中任一项所述的显示系统,其中,所述第一帧的内容和所述第二帧的内容在被传递到所述显示器之前被所述显示控制器组合。

6.如前述权利要求中任一项所述的显示系统,其中,只有在所述第一帧的内容中显示的用户可控指针进入预定区域时,才将所述第二帧的内容传递到所述显示器并与所述第一帧的内容同时显示。

7.如权利要求6所述的显示系统,其中,所述预定区域位于所述第一帧的内容外部。

8.如前述权利要求中任一项所述的显示系统,其中,所述显示控制器为图形处理单元。

9.如权利要求8所述的显示系统,其中,所述图形处理单元被包括在计算设备中,所述计算设备包括:操作性地连接到所述图形处理单元的处理器,所述处理器被配置成:从所述图形处理单元检索所述第一帧的内容和所述第二帧的内容;

将所述第一帧的内容和所述第二帧的内容组合为第三帧,其中,所述第三帧包括至少部分地与所述第二帧的内容重叠并被所述第二帧的内容遮盖的所述第一帧的内容;以及将所述第三帧提供给所述图形处理单元,从而所述图形处理单元将所述第三帧提供给所述显示器。

10.如权利要求9所述的显示系统,其中,将所述第一帧的内容和所述第二帧的内容组合为所述第三帧受显示控制应用程序控制,所述显示控制应用程序被所述处理器执行且被存储在所述计算设备的非易失性计算机可读介质上。

11.如前述权利要求中任一项所述的显示系统,其中,防止所述第二帧的内容与所述第一帧的内容的专用区域重叠。

12.如前述权利要求中任一项所述的显示系统,其中,能够改变所述第一帧的内容的与所述第二帧的内容重叠的部分的位置。

13.如权利要求12所述的显示系统,其中,基于用户介入、所述第一帧的内容、或所述第二帧的内容中的至少一者改变所述重叠的部分的位置。

14.如前述权利要求中任一项所述的显示系统,其中:

用户可控指针被显示在同时显示的所述第一帧的内容和所述第二帧的内容上;以及当所述指针移出显示所述第二帧的内容的第二区域并移入仅显示所述第一帧的内容的第一区域时,所述显示控制器被配置成在所述第一区域的像素中显示所述指针,所述像素为所述指针先前所位于的所述第二区域的相邻像素。

15.如前述权利要求中任一项所述的显示系统,其中:

所述显示器的第一区域仅显示所述第一帧的内容;

所述显示器的第二区域显示所述第二帧的内容;

显示在所述第一区域中、被移动到所述第二区域中的应用程序被并入所述第二帧缓冲器中,使得所述应用程序被包含在所述第二帧的内容中。

16.如权利要求15所述的显示系统,其中,缩放所述应用程序同时缩放所述第二区域的尺寸。

17.如前述权利要求中任一项所述的显示系统,其中:

所述显示器的第一区域仅显示所述第一帧的内容;

所述显示器的第二区域显示所述第二帧的内容;

显示在所述第二区域中、被移动到所述第一区域中的应用程序被并入所述第一帧缓冲器中,使得所述应用程序被包含在所述第一帧的内容中。

18.如前述权利要求中任一项所述的显示系统,其中,以与对于所述显示器的设置相同的方式来修改所述第二帧的显示设置。

19.如前述权利要求中任一项所述的显示系统,还包括附加显示器,其中,所述第二帧的内容的一部分被显示在所述显示器和所述附加显示器上。

20.如前述权利要求中任一项所述的显示系统,还包括执行仅一个操作系统的处理器,其中,所述第一帧缓冲器的内容和所述第二帧缓冲器的内容均由所述一个操作系统来确定。

21.如前述权利要求中任一项所述的显示系统,还包括执行操作系统的处理器,其中,所述第一帧缓冲器和所述第二帧缓冲器均由所述操作系统来处理,犹如所述第一帧缓冲器和所述第二帧缓冲器连接到单独且不同的物理显示器。

22.如前述权利要求中任一项所述的显示系统,其中,所述显示器包括液晶显示器(LCD)、阴极射线管(CRT)、或等离子体显示器。

23.一种用于在连接到显示控制器的物理显示器上产生虚拟显示器的方法,所述方法包括:确定所述显示控制器的第一帧缓冲器中的第一帧;

确定所述显示控制器的第二帧缓冲器中的第二帧;

将所述第一帧的内容和所述第二帧的内容组合为组合帧,其中,所述第二帧的内容在所述组合帧中至少部分地与所述第一帧的内容重叠并遮盖所述第一帧的内容;

将所述组合帧传递到所述物理显示器。

24.如权利要求23所述的方法,还包括:只有在所述第一帧上显示的用户可控指针进入所述第一帧的预定区域时,才使来自所述第二帧的内容包括在所述组合帧中。

25.如权利要求23至24中任一项所述的方法,还包括:防止所述第二帧的内容在所述组合帧中与所述第一帧的内容的专用区域重叠。

26.如权利要求23至25中任一项所述的方法,还包括:基于用户介入、所述第一帧的内容、或所述第二帧的内容中的至少一者,改变所述第一帧的内容和所述第二帧的内容在所述组合帧中重叠的部分的位置。

27.如权利要求23至26中任一项所述的方法,还包括:将用户可控指针显示在所述组合帧上;以及

当所述指针移出所述组合帧中显示所述第二帧的内容的第二区域并移入所述组合帧中仅显示所述第一帧的内容的第一区域时,在所述第一区域的像素中显示所述指针,所述像素为所述指针先前所位于的所述第二区域的相邻像素。

28.如权利要求23至27中任一项所述的方法,还包括:在所述组合帧的第一区域中仅显示所述第一帧的内容;

在所述组合帧的第二区域中仅显示所述第二帧的内容;以及

如果将显示在所述第一区域中的应用程序移动到所述第二区域中,则将所述应用程序并入所述第二帧缓冲器中,使得所述应用程序被包含在所述第二帧的内容中。

29.如权利要求23至28中任一项所述的方法,还包括:如果重新缩放所述应用程序的尺寸,则同时重新缩放所述第二区域的尺寸。

30.如权利要求23至29中任一项所述的方法,还包括:在所述组合帧的第一区域中仅显示所述第一帧的内容;

在所述组合帧的第二区域中仅显示所述第二帧的内容;以及

如果将显示在所述第二区域中的应用程序移动到所述第一区域中,则将所述应用程序并入所述第一帧缓冲器中,使得所述应用程序被包含在所述第一帧的内容中。

31.如权利要求23至30中任一项所述的方法,还包括:在所述物理显示器和附加的物理显示器上显示所述第二帧的内容。

32.如权利要求23至31中任一项所述的方法,其中,所述第一帧的内容和所述第二帧的内容均由单一操作系统来确定。

33.一种存储在非易失性计算机可读介质中的虚拟显示程序,所述虚拟显示程序在被操作性地连接到显示控制器的处理器执行时,使所述处理器执行如权利要求23至32中任一项所述的方法。

说明书 :

具有虚拟显示器的显示系统

技术领域

[0001] 本发明总体涉及显示系统,尤其涉及用于添加虚拟显示器而无需附加的物理显示器的方法和系统。

背景技术

[0002] 在放射科的医学领域中,医生使用高端诊断显示器来分析医学图像并进行诊断决定。典型的放射科或乳腺摄影工作站包括允许放射科医生显示多个图像的多个显示器以及通常多个软件应用程序。放射科/乳腺摄影工作站时常还包括“导航头”。导航头为允许用户选择且示出患者信息和关于正研究的图像的信息的显示器。首先在系统的其它显示器上显示实际的医学图像。
[0003] 导航头时常显示导航和支持非诊断性应用程序(例如,听写软件或编辑软件或在安装期间使用的软件)。除了使用附加的高端诊断显示器外,经常使用附加的标准类型的显示器、非诊断性品质显示器。然而,在一些情况下,医院不具有用于购买或安装额外的显示器或显示控制器的预算或工作空间不动产。

发明内容

[0004] 本发明提供用于产生显示在现有监控器上的虚拟显示器的系统,该虚拟显示器使用所连接设备的存储器(例如图形处理单元(GPU)存储器、随机存取存储器(RAM)等)作为用于虚拟显示器的帧缓冲器。该虚拟显示器不是物理显示器,因此不需要任何附加的硬件。而是在预先存在的显示器上显示虚拟显示器,该预先存在的显示器用于显示另一帧缓冲器的内容。
[0005] 根据本发明的一个方面,提供了一种用于产生虚拟显示器的显示系统。该显示系统包括显示器和显示控制器。该显示控制器包括第一帧缓冲器和第二帧缓冲器,该第一帧缓冲器配置成将第一帧提供给显示器,该第二帧缓冲器配置成将第二帧提供给显示器。第一帧的内容和第二帧的内容被传递到显示器且同时被显示器显示,使得第二帧的内容至少部分地与第一帧的内容重叠并遮盖第一帧的内容。
[0006] 可替选地或附加地,第一帧缓冲器借助视频输出端将第一帧的内容提供给显示器。
[0007] 可替选地或附加地,该视频输出端为HDMI输出端、VGA输出端、DVI输出端、分量视频输出端、显示器端口、或小型显示器端口中的至少一者。
[0008] 可替选地或附加地,第二帧缓冲器借助该视频输出端将第二帧的内容提供给显示器。
[0009] 可替选地或附加地,第一帧的内容和第二帧的内容在被传递到显示器之前被显示控制器组合。
[0010] 可替选地或附加地,只有在第一帧的内容中显示的用户可控指针进入预定区域时,才将第二帧的内容传递到显示器并与第一帧的内容同时显示。
[0011] 可替选地或附加地,该预定区域位于第一帧的内容外部。
[0012] 可替选地或附加地,该显示控制器为图形处理单元。
[0013] 可替选地或附加地,该图形处理单元被包括在计算设备中,该计算设备包括操作性地连接到图形处理单元的处理器。该处理器被配置成(1)从图形处理单元检索第一帧的内容和第二帧的内容,以及(2)将第一帧的内容和第二帧的内容组合为第三帧。该第三帧包括至少部分地与第二帧的内容重叠并被第二帧的内容遮盖的第一帧的内容。该处理器还被配置成将第三帧提供给图形处理单元,从而图形处理单元将第三帧提供给显示器。
[0014] 可替选地或附加地,将第一帧的内容和第二帧的内容组合为第三帧受显示控制应用程序控制,该显示控制应用程序被处理器执行且被存储在计算设备的非易失性计算机可读介质上。
[0015] 可替选地或附加地,防止第二帧的内容与第一帧的内容的专用区域重叠。
[0016] 可替选地或附加地,第一帧的内容的与第二帧的内容重叠的部分为可改变位置的。
[0017] 可替选地或附加地,基于用户介入、第一帧的内容、或第二帧的内容中的至少一者改变重叠部分的位置。
[0018] 可替选地或附加地,用户可控指针被显示在同时显示的第一帧的内容和第二帧的内容上。当指针移出显示第二帧的内容的第二区域并移入仅显示第一帧的内容的第一区域时,显示控制器被配置成在第一区域的像素中显示指针,该像素为该指针先前所位于的第二区域的相邻像素。
[0019] 可替选地或附加地,显示器的第一区域仅显示第一帧的内容以及显示器的第二区域显示第二帧的内容。显示在第一区域中、被移动到第二区域中的应用程序被并入第二帧缓冲器中,使得该应用程序被包含在第二帧的内容中。
[0020] 可替选地或附加地,缩放应用程序同时缩放第二区域的尺寸。
[0021] 可替选地或附加地,显示器的第一区域仅显示第一帧的内容以及显示器的第二区域显示第二帧的内容。显示在第二区域中、被移动到第一区域中的应用程序被并入第一帧缓冲器中,使得该应用程序被包含在第一帧的内容中。
[0022] 可替选地或附加地,以与对于显示器的设置相同的方式来修改第二帧的显示设置。
[0023] 可替选地或附加地,该显示系统包括附加显示器。第二帧的内容的一部分被显示在显示器和附加显示器上。
[0024] 可替选地或附加地,该显示系统附加地包括执行仅一个操作系统的处理器。第一帧缓冲器的内容和第二帧缓冲器的内容均由这一个操作系统来确定。
[0025] 可替选地或附加地,该显示系统附加地包括执行操作系统的处理器。第一帧缓冲器和第二帧缓冲器均由该操作系统来处理,犹如第一帧缓冲器和第二帧缓冲器连接到单独且不同的物理显示器。
[0026] 可替选地或附加地,显示器包括液晶显示器(LCD)、阴极射线管(CRT)、或等离子体显示器。
[0027] 根据本发明的另一方面,提供了一种用于在连接到显示控制器的物理显示器上产生虚拟显示器的方法。该方法包括确定显示控制器的第一帧缓冲器中的第一帧以及确定显示控制器的第二帧缓冲器中的第二帧。该方法还包括将第一帧的内容和第二帧的内容组合为组合帧。在组合帧中,第二帧的内容至少部分地与第一帧的内容重叠并遮盖第一帧的内容。该方法还包括将组合帧传递到物理显示器。
[0028] 可替选地或附加地,该方法还包括:只有在第一帧上显示的用户可控指针进入第一帧的预定区域时,才使来自第二帧的内容包括在组合帧中。
[0029] 可替选地或附加地,该方法还包括防止第二帧的内容在组合帧中与第一帧的内容的专用区域重叠。
[0030] 可替选地或附加地,该方法还包括:基于用户介入、第一帧的内容、或第二帧的内容中的至少一者,改变第一帧的内容和第二帧的内容在组合帧中重叠的所述部分的位置。
[0031] 可替选地或附加地,该方法还包括:将用户可控指针显示在组合帧上,以及,当指针移出组合帧中显示第二帧的内容的第二区域并移入组合帧中仅显示第一帧的内容的第一区域时,在第一区域的像素中显示指针,该像素为该指针先前所位于的第二区域的相邻像素。
[0032] 可替选地或附加地,该方法还包括:在组合帧的第一区域中仅显示第一帧的内容,在组合帧的第二区域中仅显示第二帧的内容,以及,如果将显示在第一区域中的应用程序移动到第二区域中,则将该应用程序并入第二帧缓冲器中,使得该应用程序被包含在第二帧的内容中。
[0033] 可替选地或附加地,该方法还包括:如果重新缩放应用程序的尺寸,则同时重新缩放第二区域的尺寸。
[0034] 可替选地或附加地,该方法还包括:在组合帧的第一区域中仅显示第一帧的内容,在组合帧的第二区域中仅显示第二帧的内容,以及,如果将显示在第二区域中的应用程序移动到第一区域中,则将该应用程序并入第一帧缓冲器中,使得该应用程序被包含在第一帧的内容中。
[0035] 可替选地或附加地,该方法还包括在物理显示器和附加的物理显示器上显示第二帧的内容。
[0036] 可替选地或附加地,第一帧的内容和第二帧的内容均由单一操作系统来确定。
[0037] 根据本发明的又一方面,提供了一种存储在非易失性计算机可读介质中的虚拟显示程序,该虚拟显示程序在被操作性地连接到显示控制器的处理器执行时使得该处理器执行上述方法。
[0038] 在下文中全面描述且尤其在权利要求中指出本发明的上述特征和其它特征,如下描述和附图详细地提出本发明的某些说明性实施方式,然而这些实施方式指示可采用本发明的原理的各种方式中的仅几个方式。
[0039] 相对于一个实施方式所描述和/或示出的特征可以以相同方式或以类似方式被用在一个或多个其它实施方式中和/或与其它实施方式的特征组合或代替其它实施方式的特征。

附图说明

[0040] 图1示出传统的多显示器系统。
[0041] 图2示出包括虚拟显示器的显示系统的实施方式。
[0042] 图3示出包括第一帧缓冲器和第二帧缓冲器的显示控制器。
[0043] 图4A和图4B示出用于控制虚拟显示器何时在显示器上可见的实施方式。
[0044] 图5示出光标从虚拟显示器移动到显示图像上。
[0045] 图6A至图6C示出应用程序从显示图像移动到虚拟显示器以及改变虚拟显示器的尺寸。
[0046] 图7示出显示系统的系统图。
[0047] 图8为用于在连接到显示控制器的物理显示器上产生虚拟显示器的方法的流程图。

具体实施方式

[0048] 在如下文本中,“显示系统”为硬件(显示器、显示控制器等)的集合,“显示器”被视为物理显示设备(例如,用于显示2D内容的显示器、用于显示3D内容的显示器、医疗级显示器、高分辨率显示器、液晶显示器(LCD)、阴极射线管(CRT)显示器、等离子体显示器等),“帧缓冲器”为用于保存待显示在显示器上的图像的一段视频存储器,以及“显示图像”为存储在帧缓冲器中的、将使用显示器上可用的全部或一部分像素而输出在显示器上的帧缓冲器的内容。“虚拟显示图像”为在不具有专用显示器但具有帧缓冲器的显示图像。“虚拟显示器”为显示器上用于呈现虚拟显示图像的区域。另外,显示图像与“桌面”不同。桌面为包括虚拟显示图像的所有显示图像的集合。此外,显示控制器上的时序和其它电路以如下方式来配置:操作系统将与虚拟显示器的帧缓冲器交互,仿佛图像将被显示在显示器上。这类配置可以包括设置用于虚拟显示器的垂直同步(VSync)间隔、当垂直同步事件发生时产生设备中断或设立水平扫描频率和竖直扫描频率、或编程哪段视频存储区具有待显示的图像。
[0049] 本发明提供用于产生显示在现有监控器上的虚拟显示器的系统,该虚拟显示器使用所连接设备(例如计算机)的存储器(例如图形处理单元(GPU)存储器、随机存取存储器(RAM)等)作为用于虚拟显示器的帧缓冲器。例如,虚拟显示器可以使用所连接设备的RAM或GPU的存储器作为产生显示在虚拟显示器中的帧的第二帧缓冲器。虚拟显示器不是物理显示器,因此不需要任何附加的硬件或物理空间。而是在预先存在的显示器上显示虚拟显示器。预先存在的显示器也可以用于显示在第一帧缓冲器中产生的帧。
[0050] 图1示出传统的医学显示系统的示例。在本示例中,具有两个诊断显示器2、3以及3D彩色显示器4。这些(高端)监控器用于示出显示,例如分别地,医学图像18、医学图像19和医学图像20。对于非诊断性(或低端)应用,添加附加的显示器5并将其用于显示图像6。显示器2、显示器3和显示器4连接到显示控制器14。在本示例中,显示控制器14中不具有对于显示器5可用的足够端口,因此另外添加第二显示控制器15。
[0051] 转向图2,示出了示例性显示系统7。系统7包括至少一个显示器2、3、4和显示控制器14。系统7不包括图1中示出的附加显示器5,该附加显示器5要求包含附加显示控制器15。而是用虚拟显示器21代替附加显示器5,该虚拟显示器21被显示在至少一个显示器2上。附加显示器5的移除降低了成本且需要更少的空间用于显示系统7。
[0052] 图3示出显示系统7的第一实施方式。在本实施方式中,显示器2连接到显示控制器14,该显示控制器14包括第一帧缓冲器16和第二帧缓冲器17。第一帧缓冲器存储第一帧16a且配置成将第一帧16a提供给显示器2。第二帧缓冲器类似地存储第二帧17a且配置成将第二帧17a提供给显示器2。第一帧16a的内容被显示在显示器2上。第一帧16a的内容例如可以被显示在显示器2的所有像素上。第二帧17a的内容被显示在虚拟显示器21上,该虚拟显示器21可以被显示在显示器2上。
[0053] 通过显示器2同时显示第一帧16a的内容和第二帧17a的内容,使得第二帧17a的内容至少部分地与第一帧16a的内容重叠并遮盖第一帧16a的内容。
[0054] 在显示器2上显示虚拟显示器21通过将第一帧16a的内容和第二帧17a的内容传递到显示器2来执行。第一帧缓冲器16借助视频输出端30将第一帧16a的内容提供给显示器2。第二帧缓冲器17也可以借助视频输出端30将第二帧17a的内容提供给显示器2。视频输出端
30可以有线或无线连接到显示器2。例如,视频输出端30可以为HDMI输出端、小型HDMI输出端、VGA输出端、DVI输出端、分量视频输出端、显示器端口、小型显示器端口、或用于将帧传递到显示器2以供显示的任何其它合适的输出端。
[0055] 第一帧16a的内容(显示图像)和第二帧17a的内容(虚拟显示图像)可以在被传递到显示器2之前被显示控制器14组合。在一个实施方式中,通过将第二帧缓冲器17的内容移动到第一帧缓冲器16中来组合第一帧16a的内容和第二帧17a的内容。因此,当第一帧16a的内容被传递到显示器2且被显示时,示出第一帧16a的内容(显示图像18)和第二帧17a的内容(虚拟显示图像)二者。
[0056] 如将由本领域的普通技术人员所理解,显示控制器14可以为集成式或专用的图形处理单元(GPU)或者能够将帧提供给显示器2的任何其它合适的处理器或控制器。在一个实施方式中,显示控制器14被包括在计算设备32中,该计算设备32包括操作性地连接到显示控制器14的处理器34。处理器34被配置成(1)从显示控制器14检索第一帧16a的内容和第二帧17a的内容以及(2)将第一帧16a的内容和第二帧17a的内容组合为第三帧。第三帧包括至少部分地与第二帧17a的内容重叠并被第二帧17a的内容遮盖的第一帧16a的内容。处理器34还被配置成将第三帧提供给显示控制器14,从而显示控制器14将第三帧提供给显示器2。
在一个实施方式中,将第三帧(也被称为组合帧)放回到第一帧缓冲器16中并传递到显示器
2。在替选实施方式中,在借助例如视频输出端30将第三帧传递到显示器2之前,将第三帧放到第三帧缓冲器(未示出)中。
[0057] 如将由本领域的普通技术人员所理解,处理器34可以具有各种实现方式。例如,处理器34可以包括任何合适设备,诸如可编程电路、集成电路、存储器和I/O电路、专用集成电路、微控制器、复杂可编程逻辑器件、其它可编程电路等。处理器34还可以包括非易失性计算机可读介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、或任何其它合适介质。用于执行下文所描述的方法的指令可以被存储在非易失性计算机可读介质中且被处理器执行。处理器34可以通过系统总线、主机板,或使用本领域中已知的任何其它合适结构而通信地联接到计算机可读介质42和显示控制器14。
[0058] 在一个实现方式中,处理器34可以执行存储在计算设备32的非易失性计算机可读介质42上的显示控制应用程序40。显示控制应用程序40可以控制将第一帧16a的内容和第二帧17a的内容组合为第三帧。
[0059] 如图3所示,虚拟显示器21可以被显示为显示器2的像素的子集。光标24(在此尺寸被放大)可以延伸在显示器2的一些像素上。光标的“位置”可以为光标的“热点”、光标内的单点(应用程序将其理解为表示光标的位置),诸如箭头的尖端或指针像素位置的平均中心。当光标24位于虚拟显示器21的边界内时,显示系统7可以允许用户以相同方式与虚拟显示器21的内容交互,犹如将该内容显示在单独的物理显示器上。
[0060] 当与虚拟显示器21的内容交互时,与虚拟显示器21的交互的输出可以被映射到显示器2的像素上,从而虚拟显示图像出现在显示图像18的前面。因此,在放置虚拟显示器21的区域内,像素可以显示第一帧16a的内容、第二帧17a的内容、或第一帧16a的内容和第二帧17a的内容的组合。采用该方式,虚拟显示窗口的位置可以指示显示在显示器上的像素是否来自起源于帧缓冲器16或帧缓冲器17的像素。
[0061] 可以防止虚拟显示器21(第二帧17a的内容)与显示图像18(第一帧16a的内容)的专用区域重叠。例如,可以防止虚拟显示器21与显示图像18(即第一帧16a的内容)的右上部分重叠。第一帧16a的内容的与第二帧17a的内容重叠的部分为可改变位置的。可以基于例如用户介入(例如使用指针24拖动虚拟窗口21)、基于第一帧16a的内容、或基于第二帧17a的内容改变重叠部分的位置。例如,如果医学图像被示出在显示图像18的上部,则可以防止虚拟显示器21与显示图像18的上部重叠。
[0062] 转向图4A和图4B,示出了一实施方式,其中,仅当光标24进入假想的显示器11时才示出虚拟显示器21。即,只有在显示在第一帧16a的内容中的用户可控指针24进入预定区域11时,才将第二帧17a的内容传递到显示器2并与第一帧16a的内容同时显示。在图4A中,光标移动8起源于显示图像18上且结束于假想的显示器11(即预定区域)上。即,用户将光标24向左移动且移出显示图像18,犹如光标去到显示器2外面。当用户移动光标24(如图4A所示)使得光标24进入假想的显示器11且留在假想的显示器11上达特定时间量时,虚拟显示器21可以被激活且被投放到显示器2上,如图4B所示。使虚拟显示器21进入到显示器2上可以以各种方式来进行,诸如弹出、飞入、不透明度增加直到可见、或以任何合适方式。
[0063] 可以防止虚拟显示器21被定位成使得该虚拟显示器21的任何部分与假想的显示器11重叠以防止“镜厅”效应的出现。
[0064] 相对于虚拟显示器21的光标位置13可以对应于假想的显示器11上的光标末端位置12。即,如图4B所示,当光标移动到假想的显示器11中时,光标在假想的显示器11中的位置可以为虚拟显示器21被示出在显示器2上时光标的位置。采用该方式,当虚拟显示器21在显示器2上可见时,用户可以借助光标24与虚拟显示器交互。在替选实施方式中,当各种活动改变虚拟显示器21等时,通过使用键盘组合、激活专用键来投放虚拟显示器21(即将虚拟显示器21显示在显示器2上)。虚拟显示器也可以通过各种类型的操作来关闭,诸如键组合、专用键、点击虚拟显示窗口的特定区域、或基于指针移动。
[0065] 虚拟显示器21可以被分配到默认尺寸和/或默认位置。在一个示例中,虚拟显示器21的默认尺寸保持1比1的纵横比(即,虚拟显示器21上的一英寸被显示成显示器2上的一英寸。)。
[0066] 图5示出了同时显示的第一帧16a的内容和第二帧17a的内容上所显示的用户可控指针的路径9。当指针移出显示第二帧17a的内容的第二区域(例如虚拟显示器21)并移入显示仅第一帧16a的内容的第一区域(例如显示图像18)时,显示控制器14被配置成在第一区域的像素中显示指针,该像素为指针先前所位于的第二区域的相邻像素。即,光标移动9横跨虚拟显示器21和显示图像18之间的映射边界。如果光标将从虚拟显示器21向右去往显示图像18,则该光标越过边界,沿着移动的方向离开来自虚拟显示器21的像素并在显示图像18的邻近虚拟显示器21的像素的像素上结束。因此,光标不从虚拟显示器21的右边缘跳跃到显示图像18的左边缘或者以任何其它方式进行非连续移动。
[0067] 转向图6A,应用程序22被显示在显示器2的第一区域(显示图像18)中,该第一区域仅显示第一帧16a的内容。如图6B所示,可以将应用程序22移动(例如“拖放”)到显示器的显示第二帧17a的内容的第二区域(虚拟显示器21)中。如图6C所示,虚拟显示器21和应用程序22的组合创建实体23,该实体23可以被缩放到更大或更小尺寸、被移动、被拉伸、被收缩、被最小化、被最大化等。如图6C所示,缩放应用程序同时缩放第二区域的尺寸。类似地,缩放第二区域的尺寸同时缩放应用程序。在这些示例中,当激活虚拟显示器21并使应用程序22被拖放到虚拟显示器21上时,将应用程序的参考显示器(即,与应用程序相关联的帧缓冲器)改变为虚拟显示器21。
[0068] 尽管未示出,但是在第二区域中显示的、被移动到第一区域中的应用程序22可以类似地被并入第一帧缓冲器16中,从而应用程序22被包含在第一帧16a的内容中。
[0069] 在一个实施方式中,以与对于显示器2的设置相同的方式来修改第二帧17a的显示设置。即,显示控制器14与虚拟显示器21交互,犹如该虚拟显示器21为物理显示器。例如,执行操作系统的处理器34可以处理第一帧缓冲器16和第二帧缓冲器17,犹如帧缓冲器16、帧缓冲器17连接到单独且不同的物理显示器,与单一物理显示器2形成对照。在本示例中,第一帧缓冲器16a的内容和第二帧缓冲器17a的内容可以均由一个操作系统来确定。换言之,本发明不仿真视频卡来创建将呈现在显示器上的显示图像或使用商业系统调用来复制显示图像、吸引光标移动或键盘使用等。而是,本发明以对于所有显示器(虚拟的或其它的)相同的方式,利用现有硬件产生用于显示图像18和虚拟显示器21的内容。
[0070] 尽管上述示例和附图描绘了单一物理显示器2和单一虚拟显示器21,但是本发明不限于单一显示器或单一虚拟显示器。而是,本发明可以适用于例如实施在同一显示控制器或系统内的多个虚拟显示器。例如,显示系统7可以包括附加显示器,以及第二帧17a的内容的一部分可以被显示在显示器2和附加显示器上。
[0071] 此外,尽管上述示例主要描述了将虚拟显示器21叠加到显示图像18上,但是在下面(即被虚拟显示图像覆盖)的显示图像18的内容不一定由于虚拟显示图像的存在而完全不可见。而是,虚拟显示器21可以例如为部分透明的,允许用户同时看到虚拟显示图像和在下面的显示图像18二者。
[0072] 转向图7,示出了系统图。显示控制器14被配置成与软件交互且控制显示器2,诸如建立竖直扫描频率和水平扫描频率、设置垂直同步(VSync)间隔、以及在垂直同步间隔期满时使硬件中断信号软件。显示控制器14上的存储器被配置成用作用于显示器2的第一帧缓冲器16。
[0073] 显示控制器还被配置成控制虚拟显示器21且与软件交互,诸如建立竖直扫描频率和水平扫描频率、设置垂直同步(VSync)间隔、以及在垂直同步间隔期满时使硬件中断信号软件。显示控制器14上的存储器还被配置成用作用于虚拟显示器21的第二帧缓冲器17。
[0074] 显示控制器14被配置成例如结合针对显示器2编程的时序将第一帧缓冲器16的内容输出到显示器2。显示控制器14(例如显示控制器14的处理单元)还被配置成缩放地或不缩放地将第二帧缓冲器17的一部分或全部复制到第一帧缓冲器16的区域中。
[0075] 转向图8,示出了用于在连接到显示控制器14的物理显示器2上产生虚拟显示器21的方法的流程图。如将由本领域的普通技术人员所理解,该方法可以由存储在非易失性计算机可读介质中的虚拟显示程序来执行,该虚拟显示程序在被操作性地连接到显示控制器的处理器执行时使得该处理器执行该方法。在过程框102中,该方法确定显示控制器14的第一帧缓冲器16中的第一帧16a。在过程框104中,该方法确定显示控制器14的第二帧缓冲器17中的第二帧17a。在可选的判定框106中,执行核对以确定是否将显示虚拟显示器21。例如,只有在第一帧16a上显示的用户可控指针24进入第一帧的预定区域,该方法才可以使来自第二帧17a的内容包括在组合帧中。
[0076] 如果将显示虚拟显示器21或如果未执行可选的判定框106,则该方法移动到过程框108。在过程框108中,将第一帧16a的内容和第二帧17a的内容组合为组合帧。在组合帧中,第二帧17a的内容至少部分地与第一帧16a的内容重叠并遮盖第一帧16a的内容。可以组合第二帧17a的内容和第一帧16a的内容,使得防止第二帧的内容在组合帧中与第一帧的内容的专用区域重叠。在过程框110中,将组合帧传递到物理显示器2。
[0077] 在过程框112中,如果将不显示虚拟显示器21,则将第一帧16传递到物理显示器2。