Linux 编程之时间篇:wall time, cpu time 和 timer

本文介绍了Linux编程中关于时间的知识,包括wall time、CPU时间的获取,以及sleep、block、alarm、interval timer和高级定时器timer_t的使用。通过示例展示了如何获取时间、设置定时器以及进行进程的睡眠和阻塞操作。
摘要由CSDN通过智能技术生成

在 Java/JS 中获取时间非常简单(System.currentTimeMillis() System.nanoTime(); new Date().getTime() 等等),在 C/C++ 中则略微复杂一点。

今天我们就来了解下,Linux C 编程中,时间相关的概念和获取方式。

Linux 时间的相关知识

UNIX 系统使用从 1970 年 1 月 1 日 零点零分以来,经过的时间,作为绝对时间。

也就是说,在 UNIX 系统中,绝对时间也是相对的。

软件时钟:内核初始化,特定频率的计数器,一个计时器间隔叫做一个 tick 或 jiffy。UNIX 系统中,系统计时频率被称为 HZ。

HZ 具体多大,是和体系结构相关的,在 x86 上,该值为 100,也就是一秒钟运行 100次;于是一个间隔 jiffy 就等于 1/100 秒。

获取当前设备的 tck (每秒多少次):

void get_tick() {
    long hz = sysconf(_
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拭心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值