《便携式计算装置中的分布式资源管理.pdf》由会员分享,可在线阅读,更多相关《便携式计算装置中的分布式资源管理.pdf(41页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103765387 A (43)申请公布日 2014.04.30 CN 103765387 A (21)申请号 201280042249.8 (22)申请日 2012.08.14 13/225,152 2011.09.02 US G06F 9/54(2006.01) (71)申请人 高通股份有限公司 地址 美国加利福尼亚州 (72)发明人 诺曼S加尔加石 周一峥 维诺德维贾雅拉詹 (74)专利代理机构 北京律盟知识产权代理有限 责任公司 11287 代理人 宋献涛 (54) 发明名称 便携式计算装置中的分布式资源管理 (57) 摘要 在具有基于节点的资源架构的便携式计。
2、算装 置中, 使用由第一处理器控制但对应于由第二处 理器控制的第二或原生节点的第一或分布式节点 间接地存取所述第二节点的资源。在界定所述架 构的资源图中, 每一节点表示对一个或一个以上 资源的功能性的囊封, 每一边缘表示客户端请求, 且邻近节点表示资源相依性。由第一图界定的资 源被所述第一处理器而不被所述第二处理器控 制, 而由第二图界定的资源被所述第二处理器而 不被所述第一处理器控制。可在所述第一处理器 的控制下从客户端接收所述第一节点上的客户端 请求。 随后, 可响应于所述第一节点上的所述客户 端请求在所述第二节点上发出客户端请求。 (30)优先权数据 (85)PCT国际申请进入国家阶段日。
3、 2014.02.28 (86)PCT国际申请的申请数据 PCT/US2012/050815 2012.08.14 (87)PCT国际申请的公布数据 WO2013/032694 EN 2013.03.07 (51)Int.Cl. 权利要求书 4 页 说明书 20 页 附图 16 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书4页 说明书20页 附图16页 (10)申请公布号 CN 103765387 A CN 103765387 A 1/4 页 2 1. 一种用于便携式计算装置中的分布式资源管理的方法, 所述便携式计算装置具有由 第一处理器控制的第一多个资源以及由第。
4、二处理器控制的第二多个资源, 所述方法包括 : 例示由所述第一处理器控制的第一节点, 所述第一节点对应于由所述第二处理器控制 的第二节点, 所述第一多个资源由第一有向非循环图界定, 所述第二多个资源由不与所述 第一有向非循环图共享任何资源的第二有向非循环图界定, 其中所述第一有向非循环图的 每一节点表示对由所述第一处理器控制的一个或一个以上资源的功能性的囊封, 所述第一 有向非循环图的每一边缘表示客户端请求, 且所述第一有向非循环图的邻近节点表示资源 相依性, 且其中所述第二有向非循环图的每一节点表示对由所述第二处理器控制的一个或 一个以上资源的功能性的囊封, 所述第二有向非循环图的每一边缘表。
5、示客户端请求, 且所 述第二有向非循环图的邻近节点表示资源相依性 ; 从在所述第一处理器的控制下的客户端接收所述第一节点上的客户端请求 ; 以及响应 于所述第一节点上的所述客户端请求而在所述第二节点上发出客户端请求。 2. 根据权利要求 1 所述的方法, 其中所述第一节点取决于协议资源, 所述第一节点经 例示以包含调用由所述协议资源界定的输送协议的驱动器, 且所述驱动器使所述第二节点 上的所述客户端请求符合所述输送协议。 3. 根据权利要求 2 所述的方法, 其中直到所述协议资源被例示且所述第二节点被例示 才例示所述第一节点。 4. 根据权利要求 1 所述的方法, 其进一步包括 : 接收所述第。
6、一节点上的多个客户端请求 ; 以及 所述第一节点聚集所述所接收的多个客户端请求以提供聚集结果 ; 其中在所述第二节点上发出客户端请求包括发出对所述聚集结果的客户端请求。 5. 根据权利要求 1 所述的方法, 其进一步包括 : 接收所述第一节点上的多个客户端请求, 其中在所述第二节点上发出客户端请求包括 在所述第二节点上发出对应于在所述第一节点上发出的所述多个客户端请求的多个客户 端请求 ; 以及 所述第二节点聚集在所述第二节点上发出的所述多个客户端请求以提供聚集结果。 6. 根据权利要求 1 所述的方法, 其进一步包括 : 从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询 ;。
7、 在所述第二节点上发出第二状态查询以获得所述第二节点的状态的指示 ; 以及 所述第一节点响应于所述第一状态查询而提供所述第二节点的所述状态的所述指示。 7. 根据权利要求 1 所述的方法, 其进一步包括 : 从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询 ; 所述第一节点响应于所述第一状态查询而提供所述第一节点的状态的指示 ; 检测所述第二节点的状态上的改变 ; 以及 响应于对所述第二节点的状态上的改变的检测而将所述第二节点的所述状态的指示 提供给所述第一节点。 8. 一种用于便携式计算装置中的分布式资源管理的计算机系统, 所述便携式计算装置 具有由第一处理器控制的第一多个。
8、资源以及由第二处理器控制的第二多个资源, 所述计算 机系统包括 : 权 利 要 求 书 CN 103765387 A 2 2/4 页 3 处理器, 其可操作以用于 : 例示由所述第一处理器控制的第一节点, 所述第一节点对应于由所述第二处理器控制 的第二节点, 所述第一多个资源由第一有向非循环图界定, 所述第二多个资源由不与所述 第一有向非循环图共享任何资源的第二有向非循环图界定, 其中所述第一有向非循环图的 每一节点表示对由所述第一处理器控制的一个或一个以上资源的功能性的囊封, 所述第一 有向非循环图的每一边缘表示客户端请求, 且所述第一有向非循环图的邻近节点表示资源 相依性, 且其中所述第二。
9、有向非循环图的每一节点表示对由所述第二处理器控制的一个或 一个以上资源的功能性的囊封, 所述第二有向非循环图的每一边缘表示客户端请求, 且所 述第二有向非循环图的邻近节点表示资源相依性 ; 从在所述第一处理器的控制下的客户端接收所述第一节点上的客户端请求 ; 以及 响应于所述第一节点上的所述客户端请求而在所述第二节点上发出客户端请求。 9. 根据权利要求 8 所述的计算机系统, 其中所述第一节点取决于协议资源, 所述第一 节点经例示以包含调用由所述协议资源界定的输送协议的驱动器, 且所述驱动器使所述第 二节点上的所述客户端请求符合所述输送协议。 10. 根据权利要求 9 所述的计算机系统, 其。
10、中直到所述协议资源被例示且所述第二节 点被例示才例示所述第一节点。 11. 根据权利要求 8 所述的计算机系统, 其中所述处理器进一步可操作以用于 : 接收所述第一节点上的多个客户端请求 ; 以及 所述第一节点聚集所述所接收的多个客户端请求以提供聚集结果 ; 其中在所述第二节点上发出客户端请求包括发出对所述聚集结果的客户端请求。 12. 根据权利要求 8 所述的计算机系统, 其中所述处理器进一步可操作以用于 : 接收所述第一节点上的多个客户端请求, 其中在所述第二节点上发出客户端请求包括 在所述第二节点上发出对应于在所述第一节点上发出的所述多个客户端请求的多个客户 端请求 ; 以及 所述第二节。
11、点聚集在所述第二节点上发出的所述多个客户端请求以提供聚集结果。 13. 根据权利要求 8 所述的计算机系统, 其中所述处理器进一步可操作以用于 : 从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询 ; 在所述第二节点上发出第二状态查询以获得所述第二节点的状态的指示 ; 以及 所述第一节点响应于所述第一状态查询而提供所述第二节点的所述状态的所述指示。 14. 根据权利要求 8 所述的计算机系统, 其中所述处理器进一步可操作以用于 : 从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询 ; 所述第一节点响应于所述第一状态查询而提供所述第一节点的状态的指示 ; 检测。
12、所述第二节点的状态上的改变 ; 以及 响应于对所述第二节点的状态上的改变的检测而将所述第二节点的所述状态的指示 提供给所述第一节点。 15. 一种用于便携式计算装置中的分布式资源管理的计算机系统, 所述便携式计算装 置具有由第一处理器控制的第一多个资源以及由第二处理器控制的第二多个资源, 所述计 算机系统包括 : 用于例示由所述第一处理器控制的第一节点的装置, 所述第一节点对应于由所述第二 权 利 要 求 书 CN 103765387 A 3 3/4 页 4 处理器控制的第二节点, 所述第一多个资源由第一有向非循环图界定, 所述第二多个资源 由不与所述第一有向非循环图共享任何资源的第二有向非循。
13、环图界定, 其中所述第一有向 非循环图的每一节点表示对由所述第一处理器控制的一个或一个以上资源的功能性的囊 封, 所述第一有向非循环图的每一边缘表示客户端请求, 且所述第一有向非循环图的邻近 节点表示资源相依性, 且其中所述第二有向非循环图的每一节点表示对由所述第二处理器 控制的一个或一个以上资源的功能性的囊封, 所述第二有向非循环图的每一边缘表示客户 端请求, 且所述第二有向非循环图的邻近节点表示资源相依性 ; 用于从在所述第一处理器的控制下的客户端接收所述第一节点上的客户端请求的装 置 ; 以及 用于响应于所述第一节点上的所述客户端请求而在所述第二节点上发出客户端请求 的装置。 16. 根。
14、据权利要求 15 所述的计算机系统, 其中所述第一节点取决于协议资源, 所述第 一节点经例示以包含调用由所述协议资源界定的输送协议的驱动器, 且所述驱动器使所述 第二节点上的所述客户端请求符合所述输送协议。 17. 根据权利要求 16 所述的计算机系统, 其中直到所述协议资源被例示且所述第二节 点被例示才例示所述第一节点。 18. 根据权利要求 15 所述的计算机系统, 其进一步包括 : 用于接收所述第一节点上的多个客户端请求的装置 ; 以及 用于所述第一节点聚集所述所接收的多个客户端请求以提供聚集结果的装置 ; 其中在所述第二节点上发出客户端请求包括发出对所述聚集结果的客户端请求。 19. 。
15、根据权利要求 15 所述的方法, 其进一步包括 : 用于接收所述第一节点上的多个客户端请求的装置, 其中在所述第二节点上发出客户 端请求包括在所述第二节点上发出对应于在所述第一节点上发出的所述多个客户端请求 的多个客户端请求 ; 以及 用于所述第二节点聚集在所述第二节点上发出的所述多个客户端请求以提供聚集结 果的装置。 20. 根据权利要求 15 所述的计算机系统, 其进一步包括 : 用于从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询的 装置 ; 用于在所述第二节点上发出第二状态查询以获得所述第二节点的状态的指示的装置 ; 以及 用于所述第一节点响应于所述第一状态查询而提供。
16、所述第二节点的所述状态的所述 指示的装置。 21. 根据权利要求 15 所述的计算机系统, 其进一步包括 : 用于从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询的 装置 ; 用于所述第一节点响应于所述第一状态查询而提供所述第一节点的状态的指示的装 置 ; 用于检测所述第二节点的状态上的改变的装置 ; 以及 权 利 要 求 书 CN 103765387 A 4 4/4 页 5 响应于对所述第二节点的状态上的改变的检测而将所述第二节点的所述状态的指示 提供给所述第一节点。 22. 一种包括计算机可用媒体的计算机程序产品, 所述计算机可用媒体具有体现于其 中的计算机可读程序代码,。
17、 所述计算机可读程序代码适于被执行以实施用于管理便携式计 算装置的资源的方法, 所述方法包括 : 例示由所述第一处理器控制的第一节点, 所述第一节点对应于由所述第二处理器控制 的第二节点, 所述第一多个资源由第一有向非循环图界定, 所述第二多个资源由不与所述 第一有向非循环图共享任何资源的第二有向非循环图界定, 其中所述第一有向非循环图的 每一节点表示对由所述第一处理器控制的一个或一个以上资源的功能性的囊封, 所述第一 有向非循环图的每一边缘表示客户端请求, 且所述第一有向非循环图的邻近节点表示资源 相依性, 且其中所述第二有向非循环图的每一节点表示对由所述第二处理器控制的一个或 一个以上资源。
18、的功能性的囊封, 所述第二有向非循环图的每一边缘表示客户端请求, 且所 述第二有向非循环图的邻近节点表示资源相依性 ; 从在所述第一处理器的控制下的客户端接收所述第一节点上的客户端请求 ; 以及响应 于所述第一节点上的所述客户端请求而在所述第二节点上发出客户端请求。 23. 根据权利要求 22 所述的计算机程序产品, 其中所述第一节点取决于协议资源, 所 述第一节点经例示以包含调用由所述协议资源界定的输送协议的驱动器, 且所述驱动器使 所述第二节点上的所述客户端请求符合所述输送协议。 24. 根据权利要求 23 所述的计算机程序产品, 其中直到所述协议资源被例示且所述第 二节点被例示才例示所述。
19、第一节点。 25. 根据权利要求 22 所述的计算机程序产品, 其中所述方法进一步包括 : 接收所述第一节点上的多个客户端请求 ; 以及 所述第一节点聚集所述所接收的多个客户端请求以提供聚集结果 ; 其中在所述第二节点上发出客户端请求包括发出对所述聚集结果的客户端请求。 26. 根据权利要求 22 所述的计算机程序产品, 其中所述方法进一步包括 : 接收所述第一节点上的多个客户端请求, 其中在所述第二节点上发出客户端请求包括 在所述第二节点上发出对应于在所述第一节点上发出的所述多个客户端请求的多个客户 端请求 ; 以及 所述第二节点聚集在所述第二节点上发出的所述多个客户端请求以提供聚集结果。 。
20、27. 根据权利要求 22 所述的计算机程序产品, 其中所述方法进一步包括 : 从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询 ; 在所述第二节点上发出第二状态查询以获得所述第二节点的状态的指示 ; 以及 所述第一节点响应于所述第一状态查询而提供所述第二节点的所述状态的所述指示。 28. 根据权利要求 22 所述的计算机程序产品, 其中所述方法进一步包括 : 从在所述第一处理器的控制下的客户端接收所述第一节点上的第一状态查询 ; 所述第一节点响应于所述第一状态查询而提供所述第一节点的状态的指示 ; 检测所述第二节点的状态上的改变 ; 以及 响应于对所述第二节点的状态上的改变。
21、的检测而将所述第二节点的所述状态的指示 提供给所述第一节点。 权 利 要 求 书 CN 103765387 A 5 1/20 页 6 便携式计算装置中的分布式资源管理 背景技术 0001 便携式计算装置 (“PCD” ) 正变得日益流行。这些装置可包含蜂窝式电话、 便携 式 / 个人数字助理 (“PDA” )、 便携式游戏控制台、 便携式导航单元、 掌上型计算机, 和其它 便携式电子装置。这些装置中的每一者可具有主要功能。举例来说, 蜂窝式电话一般具有 接收和发射电话呼叫的主要功能。 0002 除了这些装置的主要功能之外, 许多装置包含外围功能。 举例来说, 蜂窝式电话可 包含如上文所描述的进。
22、行蜂窝式电话呼叫的主要功能, 和静态相机、 视频相机、 全球定位系 统 (GPS) 导航、 网络浏览、 发送和接收电子邮件、 发送和接收文本消息以及即按即说能力等 的外围功能。随着 PCD 的功能性增加, 支持此类功能性所需的计算或处理能力也增加。可 通过增加 PCD 中的处理器的数目来增加处理能力。随着计算能力和处理器的数目增加, 存 在更大的需要来有效地管理处理器。 0003 例如上文所描述的功能可体现于可被称作资源的各种对应硬件和软件元件中。 处 理器可在例如应用程序等软件的控制下在各个时间请求各种资源。在多处理器 PCD 中, 第 一处理器可控制不同于由第二处理器控制的资源的资源。然而。
23、, 可能需要第一处理器能够 请求由第二处理器控制的资源。 发明内容 0004 一种用于管理多处理器便携式计算装置中的分布式资源的方法和系统允许一个 处理器针对由另一处理器控制的资源发出资源请求。 在具有基于节点的软件架构的便携式 计算装置中, 资源可包含在节点中。 在示范性实施例中, 由第一处理器控制但对应于由第二 处理器控制的第二节点的第一节点被例示且随后用于间接地存取第二节点的资源。 第一节 点可被称作分布式节点, 且第二节点可被称作原生节点。第一多个资源被第一处理器控制 但不被第二处理器控制。第二多个资源被第二处理器控制但不被第一处理器控制。第一多 个资源可由第一有向非循环图界定, 且第。
24、二多个资源可由第二有向非循环图界定。第一图 的每一节点或资源表示对由第一处理器控制的一个或一个以上资源的功能性的囊封。 第一 图的每一边缘表示客户端请求。第一图的邻近节点表示资源相依性。同样, 第二图的每一 节点表示对由第二处理器控制的一个或一个以上资源的功能性的囊封。 第二图的每一边缘 表示客户端请求。第二图的邻近节点表示资源相依性。 0005 根据示范性方法, 第一节点上的客户端请求可在第一处理器的控制下从客户端接 收。随后, 可响应于第一节点上的客户端请求在第二节点上发出客户端请求。 附图说明 0006 在图中, 相同的参考数字在所有各种视图中指代相同的部分, 除非另有指示。 对于 例如。
25、 “102A” 或 “102B” 等具有字母符号标示的参考数字, 所述字母符号标示可区分同一图 中存在的两个类似的部分或元件。 当希望参考数字涵盖在所有图中具有相同参考数字的所 有部分时, 可省略参考数字的字母符号标示。 说 明 书 CN 103765387 A 6 2/20 页 7 0007 图 1 是说明用于便携式计算装置 (“PCD” ) 中的分布式资源管理的系统的示范性 元件的功能性框图 ; 0008 图 2 是说明其中第一处理器需要请求由第二处理器控制的资源的例子的实例的 功能性框图 ; 0009 图 3 是管理 PCD 的资源的节点架构的第一方面的图 ; 0010 图 4 是 PC。
26、D 的示范性资源群组的有向非循环资源图 ; 0011 图 5 是管理 PCD 的资源的节点架构的第二方面的一般图 ; 0012 图 6 是管理 PCD 的资源的节点架构的第二方面的具体图 ; 0013 图 7 是说明用于创建用于管理 PCD 的资源的节点架构的方法的流程图 ; 0014 图 8 是说明用于创建用于管理 PCD 的资源的节点架构的方法的图 7 的接续流程 图 ; 0015 图 9 是说明用于在 PCD 的软件架构中接收节点结构数据的图 7 到 8 的子方法或例 程的流程图 ; 0016 图 10 是说明用于在 PCD 的软件架构中创建节点的图 7 到 8 的子方法或例程的流 程图。
27、 ; 0017 图 11 是说明用于在 PCD 的软件架构中创建客户端的图 10 的子方法或例程的流程 图 ; 0018 图 12 是说明用于在 PCD 的软件架构中创建针对资源的客户端请求的方法的流程 图 ; 0019 图 13 说明两个处理器之间的通信路径, 每一处理器控制其自身的资源图的资源 ; 0020 图14是说明用于创建用于管理PCD的资源的节点架构的方法的另一流程图, 其中 一些资源是分布式资源 ; 0021 图 15 是说明用于在 PCD 的软件架构中创建针对分布式资源的客户端请求的方法 的另一流程图 ; 0022 图 16 是说明用于在 PCD 的软件架构中处置针对非代理的分。
28、布式资源的状态查询 的方法的流程图 ; 0023 图17A是说明用于在PCD的软件架构中处置针对非代理的分布式资源的状态查询 的方法的第一部分的流程图 ; 0024 图17B是说明用于在PCD的软件架构中处置针对非代理的分布式资源的状态查询 的方法的第二部分的流程图。 具体实施方式 0025 词语 “示范性” 在本文中用于表示 “充当实例、 例子或说明” 。在本文中描述为 “示 范性” 的任何方面不一定解释为比其它方面优选或有利。 0026 在此描述中, 术语 “应用” 还可包含具有可执行内容的文件, 例如 : 目标代码、 脚本、 字节代码、 标记语言文件及补丁。 另外, 本文中所涉及的应用摄。
29、还可包含本质上不可执行的 文件, 例如可能需要打开的文档或需要存取的其它数据文件。 0027 术语 “内容” 还可包含具有可执行内容的文件, 例如 : 目标代码、 脚本、 字节代码、 标 记语言文件及补丁。另外, 本文中所提到的 “内容” 还可包含本质上不可执行的文件, 例如 说 明 书 CN 103765387 A 7 3/20 页 8 可能需要打开的文档或其它需要存取的数据文件。 0028 如此描述中所使用, 术语 “组件” 、“数据库” 、“模块” 、“系统” 等意欲指代计算机相 关实体, 硬件、 固件、 硬件和软件的组合、 软件或执行中的软件。举例来说, 组件可为 ( 但不 限于为)在。
30、处理器上运行的进程、 处理器、 对象、 可执行程序、 执行线程、 程序及/或计算机。 以说明的方式, 运行在计算装置上的应用程序和计算装置两者均可为组件。一个或一个以 上组件可驻留在进程和 / 或执行线程内, 且组件可位于一个计算机上且 / 或分布在两个或 两个以上计算机之间。另外, 这些组件可从上面存储有各种数据结构的各种计算机可读媒 体来执行。所述组件可例如根据具有一个或一个以上数据包的信号 ( 例如, 来自一个借助 于所述信号与原生系统、 分布式系统中的另一组件交互及 / 或跨越例如因特网等网络而与 其它系统交互的组件的数据 ) 借助于原生及 / 或远程进程而通信。 0029 在此描述中。
31、, 术语 “通信装置” 、“无线装置” 、“无线电话” 、“无线通信装置” 和 “无线 手持机” 可互换地使用。随着第三代 (“3G” ) 和第四代 (“4G” ) 无线技术的到来, 更大的 带宽可用性已实现具有更多种无线能力的更多便携式计算装置。 0030 在此描述中, 术语 “便携式计算装置” (“PCD” ) 用于描述在有限容量电力供应器 ( 例如, 电池 ) 上操作的任何装置。虽然靠电池操作的 PCD 已经使用了数十年, 但伴随着 第三代 (“3G” ) 和第四代 (“4G” ) 无线技术的到来的可再充电电池方面的技术进步已实 现具有多种能力的众多 PCD。因此, PCD 可为蜂窝式电。
32、话、 卫星电话、 寻呼机、 个人数字助理 ( “PDA” )、 智能电话、 导航装置、 智能本或阅读器、 媒体播放器, 上述装置的组合, 以及具有无 线连接的膝上型计算机, 以及其他。 0031 图 1 是用于用于实施便携式计算装置中的分布式资源管理的系统和方法的呈无 线电话的形式的 PCD100 的示范性非限制性方面的功能性框图。如图所示, PCD100 包含芯 片上系统 102, 所述芯片上系统具有多核中央处理单元 (“CPU” )110A、 图形处理器 110B 以 及模拟信号处理器 126。这些处理器 110A、 110B、 126 可一起耦合在一个或一个以上系统总 线或另一互连架构上。
33、, 如所属领域的技术人员已知的。 0032 CPU110A 可包括第零核 222、 第一核 224 等, 直到第 N 核 226, 如所属领域的技术人 员所理解。在替代性实施例中, 作为 CPU110A 和图形处理器 110B 的替代, 还可使用一个或 一个以上数字信号处理器 (“DSP” ), 如所属领域的技术人员所理解。此外, 在替代性实施 例中, 可包含两个或两个以上多核处理器。 0033 如图 1 中所说明, 显示器控制器 128 和触摸屏控制器 130 耦合到多核 CPU110A。 芯片上系统 102 外部的触摸屏显示器 132 耦合到显示器控制器 128 和触摸屏控制器 130。 。
34、还包含在 PCD100 中的是耦合到多核中央处理单元 (“CPU” )110A 的视频译码器 / 解码器 (“codec” )134, 例如, 逐行倒相 (“PAL” ) 编码器、 顺序传送彩色与存储 (“SECAM” ) 编码 器、 美国电视系统委员会 (“NTSC” ) 编码器或任何其它类型的视频编码器 134。视频放大 器 136 耦合到视频编码器 134 和触摸屏显示器 132。视频端口 138 耦合到视频放大器 136。 如图 2 中所描绘, 通用串行总线 (“USB” ) 控制器 140 耦合到 CPU110A。而且, USB 端口 142 耦合到 USB 控制器 140。订户身份。
35、模块 (SIM) 卡 146 也可耦合到多核 CPU110A。此外, 如图 1 中所示, 数码相机 148 可耦合到 CPU110A。在示范性方面中, 数码相机 148 为电荷耦合装 置 (“CCD” ) 相机或互补金属氧化物半导体 (“CMOS” ) 相机。 0034 如图1中进一步说明, 立体声音频CODEC150可耦合到模拟信号处理器126。 另外, 说 明 书 CN 103765387 A 8 4/20 页 9 音频放大器 152 可耦合到立体声音频 CODEC150。在示范性方面中, 第一立体声扬声器 154 和第二立体声扬声器 156 耦合到音频放大器 152。图 1 展示麦克风放。
36、大器 158 也可耦合到 立体声音频 CODEC150。此外, 麦克风 160 可耦合到麦克风放大器 158。在特定方面中, 调频 (“FM” ) 无线电调谐器 162 可耦合到立体声音频 CODEC150。而且, FM 天线 164 耦合到 FM 无线电调谐器 162。此外, 立体声头戴式耳机 166 可耦合到立体声音频 CODEC150。 0035 图 1 进一步指示射频 ( “RF” ) 收发器 168 可耦合到模拟信号处理器 126。RF 开关 170 可耦合到 RF 收发器 168 和 RF 天线 172。如图 1 中所示, 小键盘 174 可耦合到模拟信号 处理器 126。而且, 。
37、具有麦克风的单声道耳机 176 可耦合到模拟信号处理器 126。此外, 振 动器装置 178 可耦合到模拟信号处理器 126。图 1 还展示电力供应器 180( 例如, 电池 ) 耦 合到芯片上系统 102。在特定方面中, 电力供应器 180 包含可再充电电池或直流 “DC” 电力 供应器, 其是从连接到 AC 电源的交流 (“AC” )-DC 变压器得到的。 0036 PCD100 的上述元件中的一些元件可包括硬件, 而其它元件可包括软件, 且还有其 它元件可包括硬件与软件的组合。术语 “资源” 在本文中用于指代任何此类元件, 无论是硬 件、 软件或其组合, 其由处理器控制。 在一个方面中可。
38、将资源界定为此类元件的功能性的囊 封。除了其可另有指示的地方之外, 术语 “处理器” 在本文中用于指代例如 CPU110、 图形处 理器 110B、 模拟信号处理器 126 或在软件、 固件或类似控制逻辑的控制下操作的任何其它 处理器、 控制器或类似元件等处理器。 0037 如下文进一步详细地描述, 资源的实例是在处理器上执行的软件元件。在处理器 上执行的线程 ( 例如, 与执行应用程序相关的线程 ) 可通过致使在资源上发出 “请求” 来存 取资源。如下文所描述, 通过在本发明中被称作 “框架” 的基于软件的系统来处理资源请 求。术语 “客户端” 在本发明中广泛使用以指代实现请求资源的功能的元。
39、件。因此, 如本文 中所使用的术语, 线程可创建或利用客户端来用于发出资源请求的目的。 应注意, 在一些情 况下, 资源可创建或使用客户端, 使得资源可致使发出针对另一资源的请求。 如下文进一步 详细地描述, 此类其它资源可在本文中被称作 “相依” 资源, 这是因为请求的资源与被请求 的资源之间的相依性关系。资源和客户端可由存储器中的数据结构表不。 0038 由于资源是由多处理器 PCD100 中的特定处理器控制, 所以不是 PCD100 中的每个 处理器都具有对 PCD100 中的每个资源的存取权。图 2 说明其中可需要 PCD100 中的第一处 理器 202 发出针对由 PCD100 中的。
40、第二处理器 206 控制的资源 204 的资源请求 203 的例子 的实例。应注意, 第一处理器 202 还可控制多个资源 205。同样, 第二处理器 206 可控制多 个额外资源 207。 0039 在其中第一处理器 202 正执行与 ( 例如 ) 视频播放器应用程序相关的线程 208 的 例子中, 线程208可要求调整第一处理器202的一个或一个以上操作参数, 其增强第一处理 器 202 的性能。( 虽然出于清楚起见, 将线程 208 和资源 204 在概念上说明为驻留于相应的 处理器 202 和 206 中, 但所属领域的技术人员应理解, 根据良好理解的计算原理, 可通过处 理器的存储器。
41、空间中的处理器来执行或以其它方式操作此类元件。) 此类操作参数可包含 ( 例如 ) 时钟速度和总线速度。举例来说, 各种处理器可使用相同的总线时钟, 但仅所述处 理器中的一者可具有对总线时钟的直接 ( 硬件层级 ) 控制。增加时钟速度可导致 ( 例如 ) 视频播放器应用程序的更好的性能, 因为视频的回放一般是处理能力比一些其它任务更密 集的任务。处理能力通常以每秒百万指令 (“MIPS” ) 来表达, 线程 208 可发出对某一数目 说 明 书 CN 103765387 A 9 5/20 页 10 的MIPS的调用。 电力管理器资源204可包含算法, 所述算法响应于指定数目的MIPS的请求 而。
42、致使可表示时钟速度、 总线速度或其它参数的信号 210 的改变, 其提高在所请求的 MIPS 水平下操作的第一处理器 202。 0040 可有可能需要线程通过第一处理器202可借以与第二处理器206通信的总线或协 议所专用的应用程序接口(API)来存取电力管理器资源204。 然而, 下文所描述的框架可提 供比资源专用和总线专用 API 更一致的方式来处置资源请求。如下文所描述, 经由所述框 架, 资源请求被发出且以一致的方式被服务, 而与所述请求是否针对由从其发出所述资源 请求的相同处理器控制的资源或针对由不同处理器控制的资源无关。 由从其发出资源请求 的相同处理器控制的资源可被称作 “原生”。
43、 资源。由不同于从其发出资源请求的处理器的 处理器控制的资源可在本文被称作 “远程资源” 或 “分布式资源” 。 0041 图 3 是包括表示 PCD100 的软件或硬件 ( 或两者 ) 的功能块的图。在线 “A” 左边 的块表示由CPU110A控制的PCD100的资源。 此些资源可包含 : CPU110A自身, 还一般被称作 第一硬件元件 ( 硬件元件 #1) ; 用于 CPU110A 的时钟 442, 还一般被称作第二硬件元件 ( 硬 件元件#2) ; 总线仲裁器或调度器422, 还一般被称作第三硬件元件(硬件元件#3) ; 总线程 序 A-444A, 还一般被称作第一软件元件 ( 软件元。
44、件 #1) ; 总线程序 B-444B, 还一般被称作第 二软件元件 ( 软件元件 #2) ; 时钟程序 AHB, 一般被称作第三软件元件 ( 软件元件 #3) ; 被一 般指示为按键 448 的软件元件监视的动作或功能。CPU110A 控制上文参考的资源或具有对 所述资源的存取权, 因为所述资源处于 CPU110A 的存储器空间内, 且不存在将抑制 CPU110A 存取那些资源的其它约束, 例如安全约束。举例来说, CPU110A 可能够控制或存取那些资源 的硬件寄存器。应注意, PCD100 可包含控制上文参考的资源之外的资源或具有对上文参考 的资源之外的资源的存取权的其它 CPU110(。
45、 例如参看图 2)。 0042 可包括计算机指令库的框架管理器 440 管理着囊封资源的功能性的节点。也就是 说, 可存取所述节点以间接地存取所述资源。 出于方便起见, 囊封资源的功能性的节点可在 本文被称作包含、 包括、 具有等所述资源。每一节点可包含一个或一个以上资源。所述节点 可在软件代码、 固件或类似媒体中界定, 且在 PCD100 的操作期间被例示为 ( 例如 ) 存储器 112( 图 1) 中的数据结构。可在开动、 加电、 初始化、 启动等序列期间或在 PCD100 的操作期 间的任何其它合适时间来例示节点 601。应注意, 本文中对例示资源、 发出对资源的请求或 以其它方式与资源。
46、交互的参考应被理解为意味着与包含所述资源的节点交互。 对于本发明 的剩余部分, 将用如下文参考图 5 所描述的参考数字 601 来标示一般或非特定节点。 0043 节点 601 可包含 ( 例如 ) 具有一般与第一硬件元件或中央处理单元 110 对应的单 个资源的第一节点602。 通过本发明中所描述的软件架构, 节点601的每一资源可具备包括 一个或一个以上字母数字字符的唯一名称。在图 3 中所说明的示范性实施例中, 已向第一 节点 602 的资源指派资源名称 “/core/cpu” 。此示范性资源名称一般对应于所属领域的技 术人员已知的常规文件命名结构。 然而, 如所属领域的技术人员所认识到。
47、的, 含有字母数字 字符和 / 或符号的任何其它组合的其它类型的资源名称也在本发明的范围内。 0044 节点 601 可进一步包含 ( 例如 ) 具有多个资源的第二节点 622。在此特定示范性 实施例中, 第二节点 622 具有包括对应于总线仲裁器或调度器 422 的单个硬件元件的第一 资源。第二节点 622 的第二资源包括一般对应于总线程序 A444A 的第一软件元件的软件元 件。第二节点 622 的第三资源包括一般对应于总线程序 B444B 的第二软件元件的另一软件 说 明 书 CN 103765387 A 10 6/20 页 11 元件。所属领域的技术人员应认识到, 任何组合和任何数目的。
48、用于给定节点 601 的资源和 资源类型也在本发明的范围内。 0045 图 3 还说明一般对应于两个软件元件 448、 450 的动作或功能的第一客户端 648。 在图 3 中所说明的示范性实施例中, 客户端 648 一般对应于可在由便携式计算装置 100 支 持的特定应用程序模块 105 内发生的按键动作。然而, 所属领域的技术人员应认识到, 除了 按键之外的软件元件的其它动作和 / 或功能也在本发明的范围内。下文将结合图 11 描述 关于客户端请求 648 及其相应创建的进一步细节。 0046 图3还说明特定架构性元件之间的关系。 举例来说, 图3说明客户端648与第一节 点602之间的关。
49、系。 具体来说, 第一客户端648可产生用虚线说明的客户端请求675A, 所述 客户端请求由包括资源 “/core/cpu” 的第一节点 602 管理或处置。通常, 存在预定数目或 设定数目的类型的客户端请求 675。下文将结合图 11 进一步详细地描述客户端请求 675。 0047 图 3 中所显示的其它关系包含用虚线 680 说明的相依性。相依性是另一节点 601 的相应资源之间的关系。相依性关系通常指示第一资源 (A) 依赖于可向第一资源 (A) 提供 信息或实施某一行为的第二资源(B)。 此信息可为由第二资源(B)执行的操作的结果, 或其 可简单地包括第一资源(A)所需的状态信息, 或其任何组合。 第一资源(A)和第二资源(B) 可为相同节点 601 的部分, 或其可为不同节点 601 的部分。应注意, 客户端请求 675 可不仅 源自例如在上文所描述的按键动作的实例中的执行的线程, 而且源自其它节点601。 为了从 相依节点 601 获得信息或行为, 节点 601 可向其相依节点 601 发出客户端请求 675。因此, 指示相依性的虚线 680 还可指示潜在的客户端请求 675 的。