手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

第二章 Unix标准化及实现

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!


一个目录

,则返回值用于目录本身(不用于目录内的文档名项)。

3[CD#*2]PC[CD#*2]NAME[CD#*2]MAX和[CD#*2]PC[CD#*2]NO[CD#*2]TRUNC所涉及

的文档必

须是目录,返回值用于该目录中的文档名。

4[CD#*2]PC[CD#*2]PATH[CD#*2]MAX涉及的必须是目录。当所指定的目录是工作

目录时,

返回值是相对路径名的最大长度。(不幸的是,这不是我们想要知道的一个绝对路

径名的实

际最大长度,我们将在257中再回到这一问题上来)

5[CD#*2]PC[CD#*2]PIPE[CD#*2]BUF所涉及的文档必须是管道,FIFO或目录。在

管道或FIF

O情况下,返回值是对所涉及的管道或FIFO的限制值。对于目录,则返回值是对在

该目录中

创建的任一FIFO的限制值。

6[CD#*2]PC[CD#*2]CHOWN[CD#*2]RESTRICTED必须是文档或目录。假如他是目录

,则返回

值指明此可选项是否适用于该目录中的文档。

图25〓对sysconf、pathconf和fpathconf的限制及name参数

我们需要更周详地说明这三个函数的不同返回值。

1假如name不是图25第3列中的一个合适常数,则任何这三个函数都返回-1,并

将error

配置为EINVAL。

2包含MAX的12个名字连同名字[CD#*2]PC[CD#*2]PIPE[CD#*2]BUF可能或返回该

变量的值

(返回值ZO),或返回-1,这表示该值是不确定的,此时并不更改errno的值。



3对[CD#*2]SC[CD#*2]CLK[CD#*2]TCK的返回值是每秒的时钟滴答数,以用于tim

es函数的

返回值(815节)。

4对[CD#*2]SC[CD#*2]VERSION的返回值以4位数,2位数分别表示以标准的年、月

。这可能

或是198808L,或199009L,或此标准某个以后版本的值。

5对[CD#*2]SC[CD#*2]XOPEN[CD#*2]VERSION的返回值表示此系统所遵从的XPG版

本,其当

前值是3。

6[CD#*2]SC[CD#*2]JOB[CD#*2]CONTROL和[CD#*2]SC[CD#*2]SAVED[CD#*2]IDS是

两个可选

功能。若sysconf返回-1(没有更改errno)则不支持相应的功能。这两个功能也可在

编辑时从

<unistdh>头文档中决定。

7对[CD#*2]PC[CD#*2]CHOWN[CD#*2]RESTRICTED和[CD#*2]PC[CD#*2]NO[CD#*2]T

RUNC的返

回值若为-1(不改变errno),则表示对所指定的pathname或filedes不支持此功能。



8对[CD#*2]PC[CD#*2]VDISABLE的返回值若为-1(不改变errno),则表示对所指定

的pathna

me或filedes不支持此功能。若支持此功能,则返回值是被用于禁止特定终端输入

字符的字

符值(图16)。

实例

程式21打印任何这些限制,并处理一个限制未被定义的情况。

程式21〓打印任何可能的sysconf和pathconf值

我们条件地包括了两个常数,他们已被加至POSIX1,但不是IEEEStd 10031-1

988版本

的一部分。图26显示了在几个不同的系统上,程式21的样本输出。表中的"no

def"表

示该常数未定义。我们在414中能够了解到,SVR4 S5文档系统是能够回逆到Ver

sion 7的

传统系统Ⅴ文档系统。UFS是贝克莱快速文档系统的SVR4实现。

图26〓配置限制的实例

255〓FIPS 151-1需要

FIPS 151-1标准(我们已在224节中提及)由于需要下列功能,所以他比POSIX

1标准更

严:

·需要下列POSIX1可选功能:

[CD#*2]POSIX[CD#*2]JOB[CD#*2]CONTROL,[CD#*2]POSIX[CD#*2]SAVED[CD#*2]IDS

,[CD#*2]P

OSIX[CD#*2]NO[CD#*2]TRONC,[CD#*2]POSIX[CD#*2]CHOWN[CD#*2]RESTRICTED和[C

D#*2]POSI

X[CD#*2]VDISABLE。

·NGROUPS[CD#*2]MAX的最小值是8。

·新创建的文档或目录的组ID应配置为他所在目录的组ID(在46节中说明此功能

)

·在已传输了一些数据后,若read或write被一个捕获到的信号所中断,则这些函

数应返回

已被传输的字节数(在105节中讨论被中断的系统调用)。

·登录shell应定义环境变量HOME和LOGNAME。

因为美国政府购买很多电脑系统,所以大多数POSIX的制造商都将支持这些增加

的FIPS要

求。

图27〓编辑时和运行时限制的摘要

256〓限制摘要

我们已说明了很多限制和幻常数,其中某些总被包含在一头文档中,某些可选地包

含在头文

件中,其他则可在运行时决定。图27以字母序摘要列出了任何这些常数连同得到

他们值的

各种方法。以[CD#*2]SC[CD#*2]开始的运行时名字是sysconf函数的参数,以[CD#

*2]PC[CD#

*2]开始的名字是pathconf和fpathconf函数的参数,假如他有最小值,则也将其列

于其中。



注意,图23中的13个POSIX1不变最小值示于图27中的最右一列。

257〓未确定的运行时限制

我们已提及图27中的某些值可能是未确定的,这些值是第三列标记为可选的(op

tional),

其名字中或包含MAX,或是PIPE[CD#*2]BUF。我们碰到的问题是假如这些值没有在

头文档<li

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!