`
lichangjielong
  • 浏览: 21154 次
社区版块
存档分类
最新评论

android硬件时钟Alarm(硬件时钟)

阅读更多
Alarm(硬件时钟)  

  Alarm就是一个硬件时钟,前面我们已经知道它提供了一个定时器,用于把设备从睡眠状态唤醒,同时它也提供了一个在设备睡眠时仍然会运行的时钟基准。在应用层上,有关时间的应用都需要Alarm的支持,源代码位于“drivers/rtc/alarm.c”。
  Alarm的设备名为“/dev/alarm”。该设备的实现非常简单,我们首先打开源码,可以看到include ,其中定义了一些Alarm的相关信息。Alarm的类型枚举如下:
enum android_alarm_type {
    ANDROID_ALARM_RTC_WAKEUP,
    ANDROID_ALARM_RTC,
    ANDROID_ALARM_ELAPSED_REALTIME_WAKEUP,
    ANDROID_ALARM_ELAPSED_REALTIME,
    ANDROID_ALARM_SYSTEMTIME,
    ANDROID_ALARM_TYPE_COUNT,
};
  
  主要包括了5种类型的Alarm,
ANDROID_ALARM_WAKEUP类型表示在触发Alarm时需要唤醒设备,反之则不需要唤醒设备;
ANDROID_ALARM_RTC类型表示在指定的某一时刻出发Alarm;
ANDROID_ALARM_ELAPSED_REALTIME表示在设备启动后,流逝的时间达到总时间之后触发Alarm;
ANDROID_ALARM_SYSTEMTIME类型则表示系统时间;
ANDROID_ALARM_ TYPE_COUNT则是Alram类型的计数。

  *注意 流逝的时间也包括设备睡眠的时间,流逝时间的计算点从它最后一次启动算起。


载自:http://tech.it168.com/a2011/0805/1228/000001228471.shtml
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics