zoukankan      html  css  js  c++  java
  • 学习笔记8

    第五章 定时器及时钟服务
        5.1 硬件定时器
            定时器是由时钟源和可编程计数器组成的硬件设备。
            时钟源通常是一个晶体振荡器,会产生周期性电信号,以精确的频率驱动计数器。
        5.2 个人计算机定时器
            基于Intel x86的个人计算机有数个定时器(Bovet和Cesati2005)
                (1)实时时钟(RTC)
                (2)可编程间隔定时器(PIT)
                (3)多核CPU中的本地定时器()
                (4)高分辨率定时器
        5.3 CPU操作
            对于每个CPU而言都拥有:
                一个程序计数器(PC),也称为指令指针(IP)
                一个标志或状态寄存器(SR)
                一个堆栈指针(SP)
                几个通用寄存器
      在这里做一下CPU与GPU的对比
        5.4 中断处理
            中断处理总而言之分为以下五步
                中断请求:请求触发器和允许触发器
                中断判优:软件判优和硬件判优
                中断响应:保护硬件现场、关中断、保护断点、获得中断服务程序的入口地址
                中断服务:保护现场、开中断、中断服务、恢复现场、中断返回
                中断返回:返回到原程序的断点处,恢复硬件现场,继续执行原程序
        5.5 时钟服务函数
            5.5.1 gettimeofday-seettimeofday
          5.5.2 time系统调用
                time系统调用
                    time_t time(time_t *t)
                以秒为单位返回当前时间
                如果参数t不是NULL,还会将时间存储在t指向的内存中
           5.5.3 times系统调用
                times系统调用
                    clock_t times(struct tms *buf);
                用于获取某进程的具体执行时间
                将进程时间存储在struct tms buf中,以时钟计时单元报告所有时间
           5.5.4 time和date命令
                date:打印或设置系统日期和时间
                time:报告进程在用户模式和系统模式下的执行时间和总时间
                hwclock:查询并设置硬件时钟(RTC),也可以通过BIOS来完成
        5.6 间隔定时器
            Linux为每个进程提供了三种不同类型的间隔计时器
            间隔计时器由setitimer()系统调用创建。getitimer()系统调用返回间隔定时器的状态
            分类:
                (1)ITIMER_REAL:实时减少,在到期时生成一个SIGALRM(14)信号
                (2)ITIMER_VIRTUAL:仅当进程在用户模式下执行时减少,在到期时生成一个SIGVTALRM(26)信号
                (3)ITIMER_PROF:当进程正在用户模式和系统(内核)模式下执行时减少
        5.7 REAL模式间隔定时器
            VIRTUAL和PROF模式下的间隔计时器仅在执行进程时才有效
            这类定时器的信息可保存在各进程的PROC结构体中
        5.8 编程项目
            5.8.1 系统基本代码
          5.8.2 定时器中断
          5.8.3 定时器队列
          5.8.4 临界区
          5.8.5 高级主题
  • 相关阅读:
    Android 2.2 r1 API 中文文档系列(11) —— RadioButton
    Android API 中文 (15) —— GridView
    Android 中文 API (16) —— AnalogClock
    Android2.2 API 中文文档系列(7) —— ImageButton
    Android2.2 API 中文文档系列(6) —— ImageView
    Android 2.2 r1 API 中文文档系列(12) —— Button
    Android2.2 API 中文文档系列(8) —— QuickContactBadge
    [Android1.5]TextView跑马灯效果
    [Android1.5]ActivityManager: [1] Killed am start n
    Android API 中文(14) —— ViewStub
  • 原文地址:https://www.cnblogs.com/Ye-fen/p/15519832.html
Copyright © 2011-2022 走看看