深入瞭解 Power 架構

執行 DAG

在先前的章節中,我們提到「應用程式會要求電源架構準備系統...」。這裡的「要求」是指應用程式要求租約。租約適用於功率等級。

只有在系統中有有效租約時,高於「關閉」等級的功率等級才會啟用。如果沒有有效的租約,所有電源元素都會處於最低層級。

讓我們考慮協調部分範例中的 DAG,並假設我們有僅具備兩個功率等級的功率元素,在此我們不顯示等級,以簡化說明。

Power 元素 DAG

舉例來說,這裡的箭頭方向可解讀為「應用程式需要 CPU」。

如果應用程式要求電源架構準備下載系統,電源架構就會從應用程式開始走訪 DAG,並找出建立有效系統狀態的順序。

電源元件 DAG 關機順序

電源架構會檢查系統資源,確認資源是否處於正確狀態,如果不是,則會指示資源變更。在本例中,它會依序與 CPU、網路驅動程式庫和網路堆疊的資源擁有者通訊,最後在一切就緒時與應用程式通訊。電源架構會等待每個依附元件回報已準備就緒,然後才要求依附元件變更狀態。

應用程式收到檔案內容後,可以告知電源架構,不再需要系統準備下載檔案。接著,電源架構會再次遍歷 DAG,通知資源可以關閉電源。

Power 元素 DAG 補強排序