测试设备驱动程序中的挂起和恢复支持¶
2007 Rafael J. Wysocki <rjw@sisk.pl>, GPL
1. 准备测试系统¶
不幸的是,要有效地测试驱动程序中对系统级挂起和恢复转换的支持,必须在加载此驱动程序的情况下挂起和恢复一个功能完整的系统。此外,应该多次执行此操作,最好是连续多次,并分别针对休眠(也称为挂起到磁盘或 STD)和挂起到 RAM (STR) 执行,因为这些情况中的每一种都涉及略有不同的操作以及与机器 BIOS 的不同交互。
当然,为此目的,测试系统必须已知可以在不加载被测驱动程序的情况下挂起和恢复。因此,如果可能,您应该在开始测试新驱动程序之前,首先解决测试系统中所有与挂起/恢复相关的问题。请参阅调试休眠和挂起,了解有关调试挂起/恢复功能的更多信息。
2. 测试驱动程序¶
一旦您在没有新驱动程序的情况下解决了测试系统的挂起/恢复相关问题,您就可以开始测试它了
将驱动程序构建为模块,加载它,并尝试休眠的测试模式(请参阅:调试休眠和挂起,1)。
加载驱动程序并尝试在“重启”、“关机”和“平台”模式下休眠(请参阅:调试休眠和挂起,1)。
将驱动程序直接编译到内核中,并尝试休眠的测试模式。
尝试在“重启”、“关机”和“平台”模式下,将驱动程序直接编译到内核中进行休眠。
尝试挂起的测试模式(请参阅:调试休眠和挂起,2)。[就 STR 测试而言,驱动程序是否构建为模块应该没有关系。]
尝试使用加载了驱动程序的 s2ram 工具挂起到 RAM(请参阅:调试休眠和挂起,2)。
上述每个测试都应重复多次,并且 STD 测试应与 STR 测试混合进行。如果任何一个测试失败,则该驱动程序不能被视为挂起/恢复安全的。