Unix环境高级编程
文章平均质量分 95
残心花
这个作者很懒,什么都没留下…
展开
-
UNIX环境高级编程-第六章-系统数据文件和信息
它所做的一切是以成功状态终止。在wtmp文件的注销记录中,ut_name字段清除为0.在系统再启动时,以及更改系统事件和日期的前后,都在wtmp文件中追加写特殊的记录项。但是,对于较大的系统,顺序扫描口令文件很花费时间,我们需要能够以非ASCII文本格式存放这些文件,但仍向使用其他文件格式的应用程序提供接口,对于这些数据文件的可移植接口是本章的主题。UNIX系统的正常运作需要适用大量与系统有关的数据文件,例如,口令文件/etc/passwd和组文件/etc/group就是经常被多个程序频繁适用的两个文件。原创 2022-09-29 17:59:38 · 1112 阅读 · 0 评论 -
UNIX环境高级编程-第五章
只有两个函数可改变流的定向。第二,任何时候只要通过标准IO库要求从(a)一个不带缓冲的流,或者(b)一个行缓冲的流得到输入数据,那么就会冲洗所有行缓冲输出流。该对象通常是一个结构,它包含了标准IO库为管理该流需要的所有信息,包括用于实际IO的文件描述符,指向用于该流缓冲区的指针,缓冲区的长度,当前在缓冲区中的字符数以及出错标志等。在本章中,我们UNIX系统环境中说明标准标准IO库,正如前述,此标准库已移植到UNIX之外的很多系统中,但是为了说明该库实现的一些细节,我们将讨论其在UNIX系统上的典型实现。原创 2022-09-13 11:32:27 · 349 阅读 · 0 评论 -
Unix环境高级编程-第四章
否则,在默认情况下,返回的是符号链接所指向的实际文件的信息。但是可以在文件模式字(st_mode)中设置一个特殊标志,其含义是"当执行此文件时,将进程的有效用户ID设置为文件所有者的用户ID(st_uid)"。lstat函数类似于stat,但是当命名的文件是一个符号链接时,lstat返回该符号链接的有关信息,而不是由该符号链接引用的文件的信息。(3)保存的设置用户ID和保存的设置组ID在执行一个程序时包含了有效用户ID和有效组ID的副本,在8.11节中说明setuid函数时,将说明这两个保存值的作用。原创 2022-08-23 17:26:13 · 361 阅读 · 0 评论 -
UNIX环境高级编程-第三章
文件描述符,函数read,open,write,create.......原创 2022-08-15 20:43:14 · 353 阅读 · 0 评论 -
UNIX环境高级编程-第二章
①编译时选项定义在②与文件或目录无关的运行时选项用sysconf函数来判断。③与文件或目录有关的运行时选项通过调用pathconf和fpathconf函数来判断。如果符号常量未定义,则必须使用sysconf,pathconf或fpathconf来判断是否支持该选项。这种情况下,这些函数的name参数前缀_POSIX必须替换位_SC或_PC。对于以_XOPEN为前缀的常量,在构成name参数时必须在其前放置_SC或_PC。原创 2022-08-04 20:02:00 · 290 阅读 · 0 评论 -
UNIX环境高级编程-第一章
口令文件中的登陆项由7个以冒号分隔的字段组成,依次是:登录名,加密口令,数字用户ID(205),数字组ID(105),注释字段,起始目录(/home/sar)以及shell程序(/bin/ksh)。与资源相关的非致命性出错包括:EAGAIN,ENFILE,ENOBUFS,ENOLCK,ENOSPC,EWOULDBLOCK,有时ENOMEM也是非致命性出错。按惯例,每当运行一个新程序时,所有的shell都为其打开3个文件描述符,即标准输入,标准输出以及标准错误。通常每个用户有一个唯一的用户ID。原创 2022-08-02 18:46:29 · 579 阅读 · 0 评论