日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

APUE 第四章总结

發(fā)布時間:2023/12/14 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 APUE 第四章总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

第四章寫的真的好(先吹一波)

內(nèi)容概括:

這一章主要講解了stat里面的各個字段,以此講解unix的文件系統(tǒng)和一些和文件目錄有關(guān)的API
講解細致,stat函數(shù)可以獲取一個文件的狀態(tài)信息,包括:
1 文件類型和文件模式字和對文件的訪問權(quán)限
2 i節(jié)點編號
3 設(shè)備號
4 特殊文件的設(shè)備號
5 鏈接數(shù)量
6 uid
7 gid
8 文件長度
9 訪問時間
10 修改時間
11 狀態(tài)改變時間
12 字節(jié)塊的大小
13 字節(jié)塊數(shù)

主要內(nèi)容:

文件類型:

1 普通文件
2 目錄文件(只有內(nèi)核才能直接寫文件)
3 塊特殊文件 提供對設(shè)備帶緩沖的訪問
4 字符特殊文件 提供不帶緩沖的訪問
5 FIFO 命名管道
6 套接字 SOCKET
7 符號鏈接
提供了一些宏訪問
以及一些IPC對象,消息隊列,信號量,共享儲存對象

ID:

一個進程相關(guān)聯(lián)的ID往往有6個或更多
實際用戶ID:
實際組ID:
我們實際上是誰

有效用戶ID
有效祖ID
附屬組ID
用于權(quán)限檢查

保存的設(shè)置用戶ID
保存的設(shè)置祖ID
當(dāng)有效ID被替換時,這兩個字段保存有效iD

在st_mode字段中,有三個特殊的位,分別為設(shè)置用戶ID位,設(shè)置組ID位,黏著位
當(dāng)設(shè)置用戶ID位,設(shè)置組ID位,被設(shè)置時,當(dāng)一個進程訪問該文件時,相應(yīng)有效ID被設(shè)置位文件所有者ID位

文件訪問權(quán)限:

在st_mode字段中
u:rwx
g:rwx
o: rwx

訪問目錄去打開文件時,需要對目錄有執(zhí)行權(quán)限,所以也被成為搜索位
在目錄中創(chuàng)建一個新文件,必須對該目錄有寫權(quán)限和執(zhí)行權(quán)限
刪除文件時,同上

對一個文件進行操作時,內(nèi)核根據(jù)有效用戶id->有效組ID->其他用戶的順尋檢查

新文件和目錄的所有權(quán)(注意是ID,而不是文件權(quán)限):

新文件的用戶ID設(shè)置為進程的有效用戶ID
組ID:
可以是進程的有效組ID
可以是目錄的組ID
目錄規(guī)則相同

黏著位:
在以前的UNIX系統(tǒng)中,如果文件設(shè)置了這一位,那么在程序終止時,程序正文部分的一個副本被保存在交換區(qū)中,時的下次執(zhí)行時能較快的載入內(nèi)存
現(xiàn)在的已經(jīng)不需要這種技術(shù)了
有了新的功能:
如果目錄設(shè)置了該位:
只有對該目錄有寫權(quán)限的并且滿足(擁有此文件,擁有此目錄,超級用戶條件之一)才能刪除和重命名文件

文件系統(tǒng):
書上的是UFS文件系統(tǒng)
每一個分區(qū)是一個文件系統(tǒng)
目錄項指向Inode,inode指向數(shù)據(jù)塊或者目錄項
每一個inode有一個鏈接計數(shù),鏈接計數(shù)為0才刪除,這里是硬鏈接
inode中包含了文件有關(guān)的信息
目錄項中有文件名,i節(jié)點編號
數(shù)據(jù)項是文件真正的數(shù)據(jù)

符號鏈接:
與硬鏈接的區(qū)別:
硬鏈接指向i節(jié)點,且只能在同一文件系統(tǒng),只有超級用于才能指向目錄的硬鏈接
在使用文件的API時應(yīng)該注意是否跟隨符號鏈接
在出現(xiàn)循環(huán)時,如果時硬鏈接就比較難消除
但是因為unlink不跟隨符號鏈接,所以比較容易消除這種循環(huán)

API

access faccesssat
用實際用戶ID訪問

umask 設(shè)置文件模式創(chuàng)建屏蔽字(訪問權(quán)限)

chmod 三兄弟 改變訪問權(quán)限

chown四兄弟改變文件所有者

unlink解除一個鏈接

總結(jié)

以上是生活随笔為你收集整理的APUE 第四章总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。