深入了解电源框架
运行 DAG
在前面的部分中,我们提到了“...应用请求电源框架准备系统...”等内容。在此上下文中,“请求”是指应用请求租赁。租约适用于电源级别。
只有当系统中有有效的租约时,高于“关闭”级别的电源级别才会处于有效状态。如果没有有效的租约,则所有电源元素均处于最低电源级别。
我们来看看协调部分示例中的 DAG,假设我们有只有两个功率等级的功率元素,为简化起见,我们在此不显示这些等级。
在这里,我们可以将箭头方向解读为“应用需要 CPU”。
如果应用要求电源框架准备系统以进行下载,则电源框架会从应用开始遍历 DAG,并确定创建有效系统状态的顺序。
电源框架会检查系统资源,以确定它们是否处于正确状态,并在状态不正确时指示它们进行更改。在这种情况下,它会按顺序与 CPU、网络驱动程序和网络堆栈的资源所有者进行通信,最后在一切就绪时与应用进行通信。电源框架会等待每个依赖项报告其准备就绪,然后再请求其依赖项更改其状态。
应用收到文件内容后,可以告知电源框架,它不再需要系统准备好下载文件。然后,电源框架会再次遍历 DAG,告知资源可以关闭电源。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-01-29。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-01-29。"],[],[]]