UNIX 的时间


有两种时间(来自于Stevens的Advanced Programming in UNIX Environment):


1.日历时间,是从197011000000以来国际标准时间(UTC)所经历的秒数累计值。

 

2。进程时间,也叫CPU时间,用以计进程所耗的CPU资源。以时钟滴答数计算。当度量进程的执行,UNIX给出三个进程时间值。

            a. 时钟时间:进程运行时间的总量,它和系统运行进程数目的多少有关。

            b. 用户CPU时间:执行用户指令的时间

            c. 系统CPU时间:进程执行内核所经历的时间。

 

取得日历时间的系统调用为:time()函数, 其值保存在time_t 的结构中。

            E.g:   time_t time = time(NULL);

          

取得UNIX的日历时间后, UNIX提供了一些函数来转化日历时间为人类习惯的日期和时间。

           struct  tm 保存的是年月日时分秒周表示的时间。

            可以用localtime()函数把time_t 的格式转化为tm的格式。

            通过asctimef()把tm转化为字符串。

            strftime()把tm转化为格式化字符串。

            ctime()把time_t转化为字符串

            gmtime() 和mktime()把tm转化为time_t.

 

对进程时间,UNIX提供了函数times(struct tms* ), 此函数返回clock_t,并填写 tms结构. 

系统提供了每秒钟多少滴答的次数,利用函数sysconf_SC_CLK_TCK_ 得到的返回值,此值就是每秒的滴答数。

 

Clock_t 除以 每秒滴答数就是秒数。

   

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值