亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標題: linux/Documentation目錄下的pm.txt [打印本頁]

作者: hunterzy416    時間: 2010-02-23 16:50
標題: linux/Documentation目錄下的pm.txt
Linux的電源管理支持
本文件簡要介紹了如何使用您的電源管理
Linux系統(tǒng)以及如何添加電源管理的支持Linux的驅動程序。
APM或ACPI?
------------
如果你有一個比較新的x86移動,桌面或服務器系統(tǒng),
它支持的可能是高級電源管理(APM)或
高級配置和電源接口(ACPI)。 ACPI是這兩種技術的電源管理中較新的一種,
并提出在操作系統(tǒng)手中
,比使用BIOS控制的APM 可以提供更大的靈活性以及可擴展性。
最好的方法來確定,如果不是,你的系統(tǒng)支持,是
建立既符合ACPI和APM內核為2.3.x啟用ACPI的(是
默認啟用)。如果ACPI可以work,
ACPI驅動程序將覆蓋和禁用APM,否則APM驅動
將被使用。
不要抱怨,你不能同時啟用和運行ACPI和APM 。
碎ACPI或損壞,有些人
想得到了一套完整的工作特性,但您
根本無法混合和匹配兩者。機器一次控制的只有一個電源管理接口。想想看..
用戶空間守護進程
------------------
APM和ACPI都依賴于用戶空間的守護進程,apmd和工具acpid
分別要完全發(fā)揮作用。從你的Linux發(fā)行版或從Internet(見下文) 獲得這兩項守護進程
并確保他們在系統(tǒng)啟動過程的某個時候 開始。
繼續(xù)并啟動這兩個。如果ACPI或APM在你的系統(tǒng)上是不可用的,
相關的守護進程將退出。
  apmd:
http://worldvisions.ca/
〜apenwarr / apmd /
  工具acpid:
http://acpid.sf.net/

驅動程序接口 - 廢棄,請勿使用!
----------------*************************
注:pm_register(),pm_access(),pm_dev_idle()和friends廢棄。
請不要使用它們。相反,你應該適當掛鉤
您的驅動程序到驅動程序模型,并使用它的suspend()/resume()
回調做這種東西。
如果你正在編寫一個新的驅動程序或維持舊驅動程序,它
應包括電源管理支持。如果沒有電源管理
支持,單一驅動程序可能 阻止具有電源管理功能的系統(tǒng)
使之不能suspend(安全)。
概述:
1)用“pm_register”  注冊的每一個設備實例
2)在訪問硬件之前 調用“pm_access”。
   (這將確保該硬件是awake和ready)
3)在進入掛起suspend狀態(tài)(ACPI的D1-D3)前  或在從掛起到恢復resuming(ACPI的D0)
   你的“pm_callback”被調用。
4)當設備不被使用 調用“pm_dev_idle”
   (可選,但將改進閑置設備檢測)
5)當卸載,用“pm_unregister”注銷設備
/ *
*說明:用電源管理子系統(tǒng) 注冊設備
*
*參數:
*類型 - 設備類型(PCI設備,系統(tǒng)設備,...)
*身份證 - 例號或唯一標識符
* cback - 請求處理回調(suspend, resume,...)
*
*返回:在error注冊 PM裝置或NULL
*
*例子:
* dev= pm_register(PM_SYS_DEV,PM_SYS_VGA,vga_callback);
*
*   struct pci_dev *pci_dev = pci_find_dev(...);
*   dev = pm_register(PM_PCI_DEV, PM_PCI_ID(pci_dev), callback);
* /
struct pm_dev *pm_register(pm_dev_t type, unsigned long id, pm_callback cback);
/ *
*說明:用電源管理子系統(tǒng) 注銷設備
*
*參數:
* dev - 從pm_register 返回的設備
* /
void pm_unregister(struct pm_dev *dev);
/ *
*說明:注銷與回調函數匹配的所有設備
*
*參數:
* cback - 之前注冊的request callback
*
*注:從舊的APM接口提供更容易的移植
* /
void pm_unregister_all(pm_callback cback);
/ *
*電源管理的request callback
*
*參數:
* dev - 從pm_register之前返回的設備
* rqst - 請求類型
*data - 數據,如果有的話,與請求相關聯(lián)的
*
*返回:如果請求是成功的,0
* EINVAL  如果不支持請求
* EBUSY   如果該設備正在忙,無法處理請求
* ENOMEM  如果設備由于內存無法處理請求
*
*詳細內容:該設備請求回調將提交要求
*設備/系統(tǒng)進入掛起狀態(tài)(ACPI的D1的維生素D3)或
*或之后的設備/系統(tǒng)恢復從掛起(ACPI的D0)用來。
*對于PM_SUSPEND,在ACPIḎ國家正在通過簽訂
*為“數據”參數回調。該設備
*司機應保存(PM_SUSPEND)或恢復(PM_RESUME)
*設備上下文請求時,被稱為回調。
*
*一旦驅動程序從suspend request返回0(成功)
*,它不應該處理任何進一步要求
*或訪問硬件直到產生一個對“pm_access”的調用。
* /
typedef int (*pm_callback)(struct pm_dev *dev, pm_request_t rqst, void *data);
驅動程序詳細信息
--------------
這僅僅是一個快速問答,直到一個真正的驅動作者
為電源管理提供指導。
問:是一個設備暫停? When is a device suspended?
設備可以暫停基于直接用戶的要求(如:筆記本電腦蓋子
關閉),系統(tǒng)功耗的政策(如睡眠控制臺后30分鐘
活動),或設備的電力政策(如斷電后設備5
分鐘的活動)
問:司機必須榮譽掛起的請求? Must a driver honor a suspend request?
沒有,驅動程序可以返回從掛起的請求并EBUSY本
將停止吊銷制度。當一個請求暫停
失敗了,所有的設備都暫停,恢復和系統(tǒng)繼續(xù)
運行。暫停試可以在以后的時間。
問:驅動程序塊暫停/恢復的要求呢? Can the driver block suspend/resume requests?
是的,司機可以推遲從掛起或恢復回報
請求,直到該設備已準備好處理請求。它
有利于返回從盡快
要求為暫停/恢復連續(xù)完成。
問:什么情況下掛起/恢復啟動的?
阿暫;蚧謴蛦拥膬群司程上下文。
它是安全的塊,分配內存,發(fā)起請求
或其他任何你可以在內核。
問:請繼續(xù)暫停后到達?
有可能。這是司機的責任要排隊(*),
失敗,或丟棄任何要求回國后到達
成功的請求暫停。重要的是,在
驅動程序不能訪問其設備,直到收到后
作為該設備的總線請求恢復可能不再
是活動的。
(*)如果一個驅動程序請求隊列后處理
    簡歷都知道,設備,網絡等
    可能在不同的狀態(tài)比在暫停時間。
    它可能會更好下降請求,除非
    司機是一個存儲設備。
問:我有管理的巴士專用電源管理寄存器
不,這是公交車司機的責任管理
的PCI,USB接口,電源管理等登記。巴士司機
或電源管理子系統(tǒng)也將啟用任何
喚醒功能,該設備已。
問:那么,真的,什么我需要做支持暫停/恢復?
您需要保存的任何設備情況下,將
如果丟失的設備是斷電,然后恢復
它的恢復時間。當ACPI是積極的,有
三個層次的設備暫停狀態(tài); D1和D2和D3的。
(掛起狀態(tài)通過的“數據”的論據
到設備回調。)與維生素D3,設備供電
關閉并失去所有方面,D1和D2是淺權力
國家和需要較少的設備上下文被保存。至
它的安全性,一切都只是保存在暫停和恢復
一切都在恢復。
問:我在哪里可以暫停存儲設備上下文?
無處不在內存中,kmalloc的一個緩沖區(qū)或存儲它
在設備描述符。您是保證的
內存的內容將恢復和可
前恢復,甚至當系統(tǒng)掛起到磁盤。
問:我需要做的ACPI與APM的與等?
驅動程序不需要知道具體的電源管理
技術處于活動狀態(tài)。他們只需要知道
何時覆電源管理系統(tǒng)的要求
他們暫;蚧謴。
問:有關設備依賴?
當一個驅動注冊一個設備,電源管理
子系統(tǒng)使用所提供的資料建立
依賴的設備(如USB設備X上樹
USB控制器輜于PCI總線Z是)當電源
管理要暫停設備,它首先發(fā)送
一要求暫停其驅動,然后是巴士司機,
等,到系統(tǒng)總線。設備恢復
進行相反的方向。
問:誰做的其他信息我聯(lián)系
   讓我的特定驅動程序的電源管理/設備?
ACPI的開發(fā)郵件列表:
linux-acpi@vger.kernel.org

系統(tǒng)接口 - 廢棄,請勿使用!
----------------*************************
如果您提供新的電源管理支持的Linux(例如:
加入像APM或ACPI支持的東西),你應該
與司機溝通,通過現(xiàn)有的通用動力
管理界面。
/ *
*發(fā)送請求中的所有設備
*
*參數:
* rqst - 請求類型
*數據 - 數據,如果有的話,與請求相關聯(lián)的
*
*返回:0如果請求是成功的
*見“pm_callback的錯誤”回歸
*
*詳細內容:步行注冊設備清單,并呼吁pm_send
*每個直到完成或遇到錯誤。
*如果遇到錯誤的暫停請求,
*返回所有的國家,他們是在以前的設備
*掛起的請求。
* /
廉政pm_send_all(pm_request_t rqst,無效*數據);
/ *
*找到匹配的設備
*
*參數:
*類型 - 設備類型(PCI設備,系統(tǒng)設備,或0到匹配的所有設備)
*從 - 以前的匹配或NULL從頭開始
*
*返回:匹配的設備或空,如果沒有找到
* /
結構pm_dev * pm_find(pm_dev_t類型,從結構pm_dev *);

本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u3/111988/showart_2185272.html




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2