爱程序网

UNIX标准化及实现之标准之间的冲突

来源: 阅读:

就整体而言,这些不同的标准之间配合得相当好。但是我们也很关注它们之间的差别,特别是ISO C标准和POSIX.1之间的差别。

ISO C定义了函数clock,它返回进程使用的CPU时间,返回值类型是clock_t。为了将此值变换成以秒为单位,将其除以在<time.h>头文件中定义的CLOCKS_PER_SEC。POSIX.1定义了函数times,它返回其调用者及其所有终止子进程的CPU时间以及时钟时间,所有这些值都是clock_t类型值。sysconf函数用来获取每秒中的滴答数,用于表示times函数的返回值。有一个相同的术语,即每秒中的滴答数,但ISO C和POSIX.1的定义却不同。这两个标准也用同一数据类型(clock_t)来保存这些不同的值,这种差别可以在Solaris中看到,其中clock返回微秒数(因此,CLOCK_PER_SEC是一百万),而sysconf为每秒钟的滴答数返回的值是100。

 

本篇博文内容摘自《UNIX环境高级编程》(第二版),仅作个人学习记录所用。关于本书可参考:http://www.apuebook.com/

关于爱程序网 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助