[发明专利]命令同步有效
| 申请号: | 200880101426.9 | 申请日: | 2008-07-31 |
| 公开(公告)号: | CN101802786A | 公开(公告)日: | 2010-08-11 |
| 发明(设计)人: | R·帕尔默 | 申请(专利权)人: | 诺基亚公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46 |
| 代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 吴立明 |
| 地址: | 芬兰*** | 国省代码: | 芬兰;FI |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 命令 同步 | ||
技术领域
本发明涉及用于确定由进程向一个或多个硬件处理单元发布的 命令应当执行的顺序的方法。本发明还涉及用于执行此方法的计算 设备。
背景技术
多数计算设备包括图形用户接口(GUI),运行在计算设备上的 应用通过图形用户接口向用户显示内容。某些应用可以显示在图形 上密集的图像,这需要大量的处理能力。有鉴于此,计算设备通常 包括专门设计用于执行基于图形的进程的硬件。
对于任何硬件/软件接口,客户端应用一般不被布置为直接指示 硬件。相反,操作系统通常包括用于图形绘制的一个或多个硬件抽 象层(HAL),其向客户端应用提供应用编程接口(API)。以此方 式,可以对将客户端应用进行编写以与单个HAL接口连接,由此允 许客户端应用与不同的图形硬件结合使用,而无需重写应用的接口 代码。工业标准HAL的两个示例是OpenGL ES和OpenVG。
在某些情况下,单个HAL映射到单个硬件单元,并且计算设备 可以包括多个HAL/硬件配对。备选地,单个硬件单元可以与多个不 同的HAL相关联,每个HAL被布置用于执行不同的图形功能。然 而,HAL被映射,该映射对于最终用户而言是透明的。
在使用多个HAL时,操作系统必须实现确保它们之间同步的机 制。例如,如果利用OpenVG HL来绘制2D图像以便随后在使用 OpenGL ES HAL的3D环境中使用,则OpenVG HAL必须在OpenGL ES HAL使用所绘制的图像之前,完成对2D图像的绘制。如果系统 没有适当地同步HAL过程,则应用可能致使损坏的图像被显示,由 此导致不良的用户体验。而且,实际的图形环境可能比仅仅两个顺 序过程的情况要复杂得多,因此,在没有同步的情况下计算设备可 能是不可用的。
可以对HAL操作进行同步的一种方式允许操作系统使用系统存 储器作为缓冲区来控制HAL同步。然而,这通常是不适当的,因为 硬件操作对于用户和操作系统而言应当是透明的。此外,多数硬件 具有其自己的缓冲区和串行化软件,如果操作系统接管同步操作的 控制,则这些缓冲区和串行化软件将是冗余的。优选的是由硬件来 处理多个HAL操作的同步,因为这将允许操作系统关注于更为一般 的处理需求。这种方法的有益结果还可以是:线程可以持续发布绘 制命令,而无需等待相关HAL完成之前的命令。这将提高CPU正 在处理的操作系统进程与图形硬件之间的并行度。
在现有技术中,通过优化HAL特定的同步对象来提供硬件特定 的同步是已知的。在这种方法中,将用户线程绘制命令直接传递到 硬件驱动器,这些命令在其中拖延,直到所有之前的命令已经执行 之时。这消除了操作系统使用户线程在发布其命令之前进行等待的 需要,并且较好地利用了由图形硬件提供的硬件资源。该系统可以 使用排队来确保正确的顺序。然而,此类硬件特定同步的问题在于: 其不支持多个HAL之间的同步。
提供可以在多个HAL之间共享的同步对象,这也是已知的。这 种对象允许HAL等待以执行由特定线程发布的命令,直到另一HAL 完成了由另一线程命令的绘制任务。然而,这种透明HAL对象不支 持由上述备选系统提供的硬件特定同步。
上文描述的问题不限于用于图形绘制的HAL;需要一种用于一 般硬件单元的HAL之间的同步的改进机制。
发明内容
在第一方面中,本发明提供一种用于确定由进程向一个或多个 硬件处理单元发布的命令应当执行的顺序的方法,所述方法包括: 确定所发布的命令是涉及仅仅一个硬件处理单元还是涉及多于一个 硬件处理单元;当仅向一个硬件处理单元发布命令时,允许该硬件 处理单元来确定其执行顺序;以及当向不止一个硬件处理单元发布 命令时,在硬件处理单元外部确定其执行顺序。
在第二方面中,本发明提供用于执行上述方法的计算机可读指 令。所述计算机可读指令可以描述操作系统。
在第四方面中,本发明提供一种配置用于执行上述方法的计算 设备。
附图说明
现在,将参考附图,仅以示例的方式来描述本发明的实施方式。 在附图中:
图1示出了一种数据处理系统,在该系统中已选择将在硬件图 形设备中执行命令同步。
图2示出了一种数据处理系统,在该系统中已选择将使用系统 存储器来执行命令同步。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于诺基亚公司,未经诺基亚公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880101426.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于管理虚拟协作系统的系统和方法
- 下一篇:一种装饰材料及其制备方法





