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天