檔案描述符詳講

2021-10-04 02:27:49 字數 669 閱讀 4696

檔案描述符是乙個正整數,是核心中檔案描述資訊結構體的下標。

pcb裡面有乙個指標,指向了struct files_struct 結構體,裡面還有乙個struct file fd_array結構體陣列,這個結構體陣列裡的每個元素指向乙個struct file的結構體,這個結構體裡是對乙個檔案的描述,也就是通過這個結構體來對檔案進行管理。而這個陣列元素的下標就是fd(檔案描述符)。

檔案流指標(file)封裝了檔案描述符。而平時所說的重新整理緩衝區就是檔案流指標結構體中的緩衝區,而檔案描述符指向的結構體就沒有緩衝區。

檔案描述符的分配規則

檔案描述符的分配規則是: 最小未使用

乙個程序執行起來之後,缺省會開啟三個檔案:

標準輸入檔案 標準輸出檔案 標準錯誤檔案

0 1 2 int 型別

檔案描述符:分別是 0 1 2

stdin stdout stderr 是 file *型別

檔案流指標

將oldfd描述符對應的描述資訊,向newfd中拷貝乙份	讓newfd也指向oldfd所指向的檔案。若newfd本身已經有開啟的檔案,則關閉這個檔案,

mysql 檔案描述符 檔案描述符

toc 首先,linux的世界裡一切皆為檔案,無論是裝置還是乙個socket連線。檔案又可分為 普通檔案 目錄檔案 鏈結檔案和裝置檔案。檔案描述符 file descriptor 是核心為了高效管理已被開啟的檔案所建立的索引,其是乙個非負整數 通常是小整數 用於指代被開啟的檔案,所有執行i o操作的...

檔案描述符

檔案描述符 是個很小的正整數,它是乙個索引值,指向核心為每乙個程序所維護的該程序開啟檔案的記錄表。檔案描述符的優點 相容posix標準,許多 linux 和unix 系統呼叫都依賴於它。檔案描述符的缺點 不能移植到unix以外的系統上去,也不直觀。基於檔案描述符的輸入輸出函式 open 開啟乙個檔案...

檔案描述符

作業系統程序表中存放各個檔案進行檔案描述 核心 kernel 利用檔案描述符 file descriptor 來訪問檔案。檔案描述符是非負整數。開啟現存盤案或新建檔案時,核心會返回乙個檔案描述符。讀寫檔案也需要使用檔案描述符來指定待讀寫的檔案。目錄檔案描述符概述 如何建立檔案描述符 使用的好處 缺點...