柔情似水 发表于 2015-1-16 12:14:13

给大家带来复杂懂得Linux APM电源办理常识

写学习日记,这是学习历程的见证,同时我坚持认为是增强学习信念的法宝。以上是我学习Linux的心得体会,希望对大家的学习有所帮助,由于水平有限,本文难免有所欠缺,望请指正。
在官方公布的内核中LinuxAPM是较为成熟的电源办理体例,能够完成在Windows下ACPI所能完成的年夜部分功效。因为官方内核中ACPI的功效对照无限,今朝还处于开辟版形态。
以是以后的年夜多半distribution,如红帽子默许就利用了apm作为电源办理体例。可是值得注重的是linux中的ACPI实践上是由一个独自的项目小组模块举行保护的,以后内核ACPI的版本实践上已远远掉队于最新的版本。因为linux不乱版中对任何新特征的到场都十分审慎当心,以是我们大概只能比及2.6.x版本的linux出生后才干看到ACPI的不乱全功效版了。不外我们也能够本人对内核打最新的ACPI补钉来取得这些功效。
上面对电源办理的先容以LinuxAPM为主。
用户态Daemon
为了让linux内核中的电源办理功效够更好的被使用,我们还必要用户态daemon程序的共同。针对LinuxAPM和ACPI,分离有apmd和acpid两个分歧软件。他们完成的功效对照相似,都是同意用户事后界说某些战略,然后跟踪电源形态,实行特定的操纵。在apmd软件包中另有一个工具LinuxAPM,用户能够用它使呆板自动进进standby和suspend形态,还能够查询bios的apm版本号。在利用acpi时间接对proc文件体系举行操纵便可完成一样的功效。
KernelSpace
APMdriver(包含供应给用户空间利用apm_bios_fopsSystemCall,次要有apm_read,apm_poll,apm_ioctl,apm_open,apm_release)。
关于电池电量检测,次要要用到MCU平台的ADC采样(每隔几工夫来读取ADC),和DC供电,电源供电的检测
关于体眠和恢复,这个次要是ioctl要完成的事变,比方用户空间用LinuxAPM-s举行就寝操纵,会挪用平台相干的就寝函数,恢复也是相似的。这内里要注重,APM有一套假就寝和恢复,必要完成真正平台相干的就寝和恢复。
详细能够参考我的博客:2410的LinuxAPM电源办理剖析。
UserSpace
GTK/Qt/C---->openAPM_PROC--->SystemCall(read()mainly)--->KernelVFS--->apm_driver-->apm_read
读取syslog来取得电池电量,供电检测相干的信息

</p>
在这里你会学到更多的知识,学习linux,更要学习一种geek的精神,python之禅中也说过:以总结分享为荣,以跪求其解为耻;

灵魂腐蚀 发表于 2015-1-18 09:29:36

得到到草率的回答或者根本得不到任何Linux答案。越表现出在寻求帮助前为解决问题付出的努力,你越能得到实质性的帮助。

因胸联盟 发表于 2015-1-25 15:21:12

熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种:

分手快乐 发表于 2015-2-2 22:39:37

清楚了解网络的基础知识,特别是在Linux下应用知识,如接入internet等等。

再见西城 发表于 2015-2-25 23:36:20

直到学习Linux这门课以后,我才知道,原来我错了。?

谁可相欹 发表于 2015-3-8 10:45:10

下面笔者在论坛看到的一个好问题: “安装红旗4.0后,系统紫光输入法自带的双拼方案和我的习惯不一样,如何自定义双拼方案解决?谢谢?”这个问题很简练。

小魔女 发表于 2015-3-15 22:27:50

当然你不需搭建所有服务,可以慢慢来。自己多动手,不要非等着别人帮你解决问题。

活着的死人 发表于 2015-3-22 17:18:36

选择一些适于初学者的Linux社区。
页: [1]
查看完整版本: 给大家带来复杂懂得Linux APM电源办理常识