android alarm底层理解
来源:互联网 发布:09外设淘宝店地址 编辑:程序博客网 时间:2024/05/01 17:49
由于8064 qct不自带关机闹钟,故相关feature需要自己完成。分享以前调试alarm关机闹钟时,写的关于alarm的总结;
alarm上层调用包括RTC唤醒和闹钟,前者使用的更频繁,接口一样;上层应用频繁调用rtc唤醒系统会增加功耗,所有有些厂家做了所谓的同步心跳技术来统一规划RTC唤醒系统;
alarm本质是底层起了timer,在系统未睡眠时当达到上层设定时间之后timer会trigger同时调用alarm的回调函数来改变全局变量,从而使上层发起的ioctl ANDROID_ALARM_WAIT成功返回,否则该进程睡眠;当系统睡眠时,当前alarm timer设置到底中
RTC寄存器就起到了作用,timer trigger前几秒便会触发RTC中断而同时作为中断源唤醒系统,唤醒后timer将睡眠时间计入从而准时闹钟;关机闹钟同理,
闹钟前手机会通过RTC中断触发开机从而准时闹钟;
timer初始化:
alarm回调函数:
ioctl wait://需要等待trigger时wake_up,否则进程一直睡眠;
RTC唤醒底层LOG:
写到RTC寄存器中时间:
ALARM timer trigger时间:
0 0
- android alarm底层理解
- android alarm
- Android Alarm
- 【Alarm】Android中alarm的使用
- android 闹钟 Alarm
- android Alarm 闹钟
- Android--Alarm,定时闹钟
- Android alarm解析
- android alarm类型
- Android之Alarm
- android之Alarm
- Android Alarm:要点解析
- Android之Alarm
- 【Android】全局定时器Alarm
- Android之Alarm
- android Alarm机制
- Android Alarm的使用
- Android Alarm详解
- (38)FileReader读取文件本身
- 旋转数组的最小数字
- 我的android(第二十天)
- 数据源 JNDI 作用
- datanode 未启动
- android alarm底层理解
- ubuntu上hadoop 0.20.2 伪分布式配置
- 关于getchar()的用法
- Python 简单数据备份脚本
- K-邻近算法
- 汉诺塔:递归
- 利用过滤器filter处理乱码
- ssa/ass字幕格式全解析
- 《UNIX环境高级编程》学习笔记——进程控制(一)