Linux中怎么初始化 APM
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,本篇文章给大家分享的是有关Linux中怎么初始化 APM,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。misc设备的主设备号是10, 而
千家信息网最后更新 2026年11月04日Linux中怎么初始化 APM
本篇文章给大家分享的是有关Linux中怎么初始化 APM,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
misc设备的主设备号是10, 而Linux APM_bios作为个misc设备, 次设备号是134。 Linux2.6.30.10内核的/drivers/char/apm-emulation.c提供了Linux APM_bios的驱动模型,也就是系统进入睡眠的入口函数,更早的版本的接口文件为:arch/arm/kernel/apm.c
在Linux APM-emulation.c中:
/* * The apm_bios device is one of the misc char devices. * This is its minor number. */ #define Linux APM_MINOR_DEV 134
这个Linux APM_bios设备通过ioctl系统调用和用户空间进行通讯, 即当用户进程通过ioctl发来suspend命令时, 它就传给内核, 使系统进入suspend状态.
1,初始化
static int __init apm_init(void) { int ret; if (apm_disabled) { printk(KERN_NOTICE "apm: disabled on user request.\n"); return -ENODEV; }//创建一个线程, 用于处理事件队列, 工作函数是kapmd
kapmd_tsk = kthread_create(kapmd, NULL, "kapmd"); if (IS_ERR(kapmd_tsk)) { ret = PTR_ERR(kapmd_tsk); kapmd_tsk = NULL; goto out; } wake_up_process(kapmd_tsk);//通过proc,向用户空间输出Linux APM信息
#ifdef CONFIG_PROC_FS proc_create("apm", 0, NULL, &apm_proc_fops); #endif//注册misc设备
ret = misc_register(&apm_device); if (ret) goto out_stop; ret = register_pm_notifier(&apm_notif_block); if (ret) goto out_unregister; return 0; out_unregister: misc_deregister(&apm_device); out_stop: remove_proc_entry("apm", NULL); kthread_stop(kapmd_tsk); out: return ret; }以上就是Linux中怎么初始化 APM,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
设备
用户
系统
内核
函数
更多
知识
空间
篇文章
工作
实用
主设备
也就是
事件
信息
入口
命令
就是
工作会
接口
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网黑科技
互联网新科技
互联网核心科技是什么
西安互联网科技
杭州互联网科技公司
互联网高科技企业
互联网科技美容
上海卓越科技 互联网
汉立互联网科技有限公司联系电话
阿里互联网科技公司
互联网科技项目计划书材料类
语蝶互联网科技有限公司
玉溪互联网科技怎么选
中国互联网十大科技股排名
畅思互联网科技
为客找房互联网科技公司怎么样
青岛易易互联网科技
上海互联网科技园景观
黑龙江互联网科技公司
上海旺乐尼互联网科技有限公司
亿人帮互联网科技有限公司
山东特亿宝互联网科技有限公司
新华互联网科技学院
互联网科技网站
蓝色互联网科技
互联网金融科技展
山东子淼互联网科技有限公司
元气玛特互联网科技公司是外包吗
半导体行业属于互联网高科技类吗
九思连强互联网电子科技有限公司