首页 > 其他分享 >学习笔记8

学习笔记8

时间:2023-11-05 21:14:01浏览次数:42  
标签:tms struct 笔记 学习 计数器 定时器 time settimeofday

第五章 定时器及时钟服务

一、知识点归纳

(一)硬件定时器

定时器是由时钟源和可编 程计数器组成的硬件设备。时钟源 通常是一个晶体振荡器,会产生周期性电信号,以料青确的频率驱动计数器。使用一个倒计时值对计数器进行编程,每个时钟信号减1。当计 改减为0时,计数器向CPU生成一个定时器中断,将计数值重新加载到计数器中,并重复复倒计时。计数器周期称为定时器刻店度,是系统的基本计时单元。

(二)个人计算机定时器

(三)CPU操作

(四)中断处理

(五)时钟服务函数

1.gettimeofday-settimeofday
#include<sys/time.h> int gettimeofday(struct timeval *tv, struct timezone *tz); int settimeofday(const struct timeval *tv, const struct timezone *tz);
这些是对 Linux 内核的系统调用。第一个参数 tv 指向一个 timeval 结构体。

struct timeval{ time_t tv_sec; /* seconds */ suseconds_t tv_usec; /* microseconds */ };
第二个参数 timezone 已过期,应设置为 NULL。gettimeofday() 函数用于返回当前时间(当前秒的秒和微秒)。settimeofday() 函数用于设置当前时间。在 Unix/Linux 中,时间表示自 1970年1月1日 00:00:00 起经过的秒数。它可以通过库函数 ctime(&time) 转换为日历形式。下面给出了 gettimeofday() 函数和settimeofday() 函数的示例。

(1)gettimeofday 系统调用
(2)settimeofday 系统调用
2.time 系统调用
3.times 系统调用
times 系统调用

clock_t times(struct tms *bus);
可用于获取某进程的具体执行时间。它将进程时间存储在 struct tms buf 中,即:

struct tms{ clock_t tms_utime; // user mode time clock_t tms_stime; // system mode time clock_t tms_cutime; // user time of children clock_t tms_cstime; // system time of children }
以时钟计时单元报告所有时间。这可以为分析某个正在执行的进程提供信息,包括其子进程的时间(如有)。

4.time 和 date 命令

date:打印或设置系统日期和时间。
time:报告进程在用户模式和系统模式下的执行时间和总时间。
hwclock:查询并设置硬件时钟(RTC),也可以通过 BIOS 来完成。

(六)间隔定时器

setitimeer 程序代码

(七)REAL 模式间隔定时器

(八)编程项目

1.系统基本代码
2.定时器中断
3.定时器队列
4.临界区
5.高级主题

标签:tms,struct,笔记,学习,计数器,定时器,time,settimeofday
From: https://www.cnblogs.com/deyong/p/17811191.html

相关文章

  • 2023-2024-1 20231413 《计算机基础与程序设计》第六周学习总结
    2023-2024-120231413《计算机基础与程序设计》第六周学习总结1.作业信息班级:2023-2024-1-计算机基础与程序设计作业要求:2023-2024-1《计算机基础与程序设计》教学进程目标:自学教材:计算机科学概论第7、8章并完成云班课测试《C语言程序设计》第5章并完成云班课测试作业正......
  • 学习笔记
    双引号:把搜索词放在双引号中代表完全匹配搜索,搜索结果返回的页面包含双引号中出现的所有的词且顺序也必须完全匹配。减号:搜索不包含减号后面的词的页面,使用这个指令时减号前面必须是空格,减号后面没有空格,紧跟着需要排除的词。星号*:在Google 中搜索,其中的*号代表任何文字。返回......
  • 2023-2024-1 20231323《计算机基础与程序设计》第六周学习总结
    2023-2024-120231323《计算机基础与程序设计》第六周学习总结作业信息所属课程2023-2024-1-计算机基础与程序设计作业要求在哪里2023-2024-1计算机基础与程序设计第六周作业作业目标学习教材《计算机科学概论》第7章《C语言程序设计》第5章并完成云班课测试作......
  • 2023-2024-1 学号20231315第六周学习总结
    学期:2023-2024-1学号:20231315《计算机基础与程序设计》第五周学习总结作业信息这个作业属于哪个课程2023-2024-1《计算机基础与程序设计》这个作业要求在哪里2023-2024-1《计算机基础与程序设计》这个作业的目标学习计算机科学概论第7章和《C语言程序设计》第5......
  • HTML笔记
    2023-11-051、HTML(超文本标记语言)是一种标记语言(标记标签(来描述网页)),而不是编程语言。HTML文档(Web页面)包含了HTML标签和文本内容。2、HTML标签(HTML标记标签)尖括号包围的关键词。 eg.<html>成对出现。  eg.<b>(开始标签(开放标签))和<b>(结束标签(闭合标签))      ......
  • 2023-2024-1 20231306 《计算机基础与程序设计》第六周学习总结
    这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2023-2024-1计算机基础与程序设计第六周作业这个作业的目标Polya如何解决问题、简单类型与组合类型、复合数据结构、查找与排序算法、算法复杂度、递归、代码安全作业正文《计算机......
  • 2023-2024 20231310 《计算机基础与程序设计》 第六周学习总结
    作业信息这个作业属于哪个课程https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP这个作业要求在哪里https://www.cnblogs.com/rocedu/p/9577842.html#WEEK06这个作业的目标《计算机科学概论》第七章,《C语言程序设计》第五章作业正文教材学习内容总结......
  • 重新学习算法_Day2
    今天复习了栈先入后出和队列先进先出 ......
  • 2023-2024-1 20231312 《计算机基础与程序设计》第6周学习总结
    作业信息这个作业属于哪个课程<班级的链接>2023-2024-1-计算机基础与程序设计|-这个作业要求在哪里<作业要求链接>2023-2024-1计算机基础与程序设计第6周作业|这个作业的目标《计算机基础概论》第7章《C语言程序设计》第5章|作业正文作业链接教材学习......
  • 学习笔记8
    并行计算硬件定时器是计算机系统中的一个重要组件,由时钟源和可编程计数器组成。时钟源通常是晶体振荡器,驱动计数器以固定频率生成定时器中断。实时时钟(RTC):用于提供系统的实时时间和日期信息,通常由小型备用电池供电,即使计算机关闭也能继续运行。可编程间隔定时器(PIT):是......