1.1在系统上验证,除了根目录外,目录.和..是不一样的spa
ls . ls .. ls /. ls /..
2.分析图1-6程序的输出,说明进程ID为852和853的进程发生了什么状况指针
#include "apue.h" int main(void) { printf("hello world from process ID %ld\n",(long)getpid()); exit(0); } $./a.out hello world from process ID 851 $./a.out hello world from process ID 854
(1)在第一次执行./a.out时,有另外的两个进程占用了id为852和853的进程,当./a.out结束之后,852和853也已经结束了,查找不到该进程执行的动做。再次执行,./a.out便占用了854进程。code
1.3 在1.7节中,perror的参数是用ISO C的属性const定义的,而strerror的整型参数没有用此属性定义,为何?
(1)stderror是根据errno值返回相应的出错信息,所以不会将指向错误信息的字符串指针的指向修改,所以stderror的参数不须要const。
(2)而perror接受的参数是字符串指针,就可能存在修改指向错误信息的字符串指针的指向,所以须要const参数限定此行为。进程
1.4 若日历时间存放在带符号的32位整型数中,那么到哪一年它将溢出?图片
2^31/(6*60*24*365)=680年
1.5 进程时间存放的在带符号的32位整型数中,并且每秒为100时钟滴答,那么通过多少天后这个时间值将会溢出。字符串
2^31/(60*60*24*100)=248天