檔案系統總結2

2021-07-04 09:32:07 字數 2698 閱讀 8832

檔案屬性:(fstat  stat   lstat)

用於檢視檔案屬性,與stat

和lstat

不同,fstat

需要先開啟檔案才可以進行檔案屬性的檢視

以上三個函式的返回值:成功返回0,失敗則返回

-1,並且將

errno

設定為乙個恰當的值

雖然lstat

與stat

相似,但是

lstat

能返回符號鏈結,這是

stat

辦不到的。

在使用函式的時候應先宣告結構體和判斷:

若要列印屬性,應先了解一下struct stat

st_dev:描述檔案所在裝置的標識,通過

major

()和minor

()得出,使用

%d輸出;

st_ino:檔案的結點號,使用%d

輸出;st_mode:可輸出檔案的型別與許可權;

檔案型別可通過參看man

手冊,使用

switch

語句進行輸出:

檔案許可權通過與運算可得出八進位制:

st_nlink:硬鏈結的個數(乙個檔案可有多個名字,且刪除一部分檔案名字是不能刪除整個檔案的,這就是硬鏈結)可通過ln

命令建立硬鏈結,說到硬鏈結當然也會有軟鏈結(一種類似於

windows

中的快捷方式一樣的東西有檔名,有屬性,且內容為另乙個鏈結檔案的檔名,指向那個檔案,符號鏈結就是軟連線);

st_uid:檔案使用者標識,使用%d

輸出;st_gid:檔案使用者組標識,使用%d

輸出;st_size:檔案的大小,以位元組單位,使用%d

輸出;st_blksize:塊大小,一般為4k

;st_blocks:分配給檔案的塊的數量,512

位元組為單元;

st_atime:最後訪問時間;

st_ctime:最後修改檔案屬性的時間;

st_mtime:最後修改檔案內容的時間;

一下將通過程式一部分來說明:

輸出為:

目錄操作opendir closedir readdir

上述三個命令通過程式來解釋:

程式實現了乙個簡單的ls功能,輸出結果為:

庫庫是什麼,說白了,庫就是 *.o 

檔案的集合。庫分為靜態庫和動態庫。

靜態庫:

優點:程式在執行的與函式庫沒有關係,一直非常方便;

缺點:①浪費磁碟的空間;②浪費了記憶體。

打包乙個靜態庫:

ar crs lib***x.a *.o

例如:在已有hello.o

檔案的前提下(若沒有,需使用

gcc -c

生成.o

檔案),輸入以下語句:

ar crs libmyhello.a hello      

鏈結乙個庫: gcc -o main main.c libmyhello.a

執行./main

便可看到結果是合理的

動態庫:

建立動態庫:

①建立與位置無關的**: gcc -fpic -wall -c hello.c  (

fpic

:position independent code

)②建立共享:gcc -shared -o libmyhello.so hello.o

③解決路徑問題:方法一:將庫拷貝到/usr/lib

目錄下(強迫症玩家不建議這麼操作),拷貝前請注意自己是

root

使用者。cp libmylib.so /usr/lib

方法二:在環境變數中加入庫的路徑:export  ld_library_path=.

方法三:新增/etc/ld.so.conf.d*.conf

檔案這樣之後在進行連線就不會有問題了:gcc -o main main.c libmehello.so

也可以寫作:gcc -o main main.c -lmyhello -l

檔案系統(2)

ext3檔案系統已經成為乙個功能強大 高效能並且健壯的日誌檔案系統。ext3檔案系統是對ext2檔案系統的擴充套件,主要增加了日誌功能。所謂日誌,就是對檔案系統的每乙個變化進行記錄,從而可以從日誌記錄恢復檔案系統的一種技術。當乙個系統被意外關閉,例如由於系統電源掉電而引起的系統關閉,系統就會強制檔案...

檔案系統總結

一 檔案系統 http data.uta.edu ramesh cse3320 chap10.html 對檔案系統做了很好的介紹,主要內容包括檔案的概念 目錄結構 磁碟塊分配方法 自由空間的管理 效率和效能等。二 目前幾種檔案系統的比較 http www.ntfs.com 對ntfs和fat檔案系統...

Linux檔案系統總結

linux檔案系統結的結構是樹形結構,其入口從 開始,了解linux檔案系統的結構,對於我們需要掌握的基礎知識點之一。1 什麼是檔案系統 請參見 linux 檔案系統概述 2 檔案系統的組織結構簡說 當您使用linux的時候,如果您通過ls la 就會發現,在 下包涵很多的目錄,比如etc usr ...