文件名称:标准之间的冲突-cadence入门教程
文件大小:5.91MB
文件格式:PDF
更新时间:2024-07-02 09:19:45
Unix linux 环境 编程
2.8 标准之间的冲突 就整体而言,这些不同的标准之间配合得是相当好的。但是我们也很关注它们之间的差别, 特别是ANSI C标准和P O S I X . 1之间的差别。 (因为X P G 3是一个较老的正在被修订的标准,F I P S 则是一个要求更严的P O S I X . 1。) ANSI C定义了函数c l o c k,它返回进程使用的C P U时间,返回值是c l o c k _ t类型值。为了将 此值变换成以秒为单位,将其除以在< t i m e . h >头文件中定义的C L O C K S _ P E R _ S E C。P O S I X . 1定 义了函数 t i m e s,它返回其调用者及其所有终止子进程的 C P U时间以及时钟时间,所有这些值 都是c l o c k _ t类型值。IEEE Std.1003.1-1988将符号C L K _ T C K定义为每秒滴答数,上述c l o c k _ t值 都是以此度量的。而1990 POSIX.1标准中则说明不再使用,C L K _ T C K而使用s y s c o n f函数来获 得每秒滴答数,并将其用于 t i m e s函数的返回值。术语是同一个,每秒滴答数,但 ANSI C和 P O S I X . 1的定义却不同。这两个标准也用同一数据类型 ( c l o c k _ t )来保存这些不同的值,这种差 别可以在S V R 4中看到,其中c l o c k返回微秒数( C L O C K _ P E R _ S E C是一百万),而C L K _ T C K通常 是5 0、6 0或1 0 0 (与C P U类型有关)。 第 2章 U N I X标准化及实现 3 3