freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第八章文件系統(tǒng)(參考版)

2025-07-24 17:14本頁面
  

【正文】 ? 在實例部分,我們將以 romfs文件系統(tǒng)作實例分析實現(xiàn)文件系統(tǒng)的普遍步驟。 }。 _u32 checksum。 _u32 spec。 }。 _u32 checksum。 _u32 word1。 什么是 Romfs文件系統(tǒng) Romfs文件系統(tǒng)布局與文件結(jié)構(gòu) ?文件系統(tǒng)就是數(shù)據(jù)的分層存儲結(jié)構(gòu)。 ?Linux文件系統(tǒng)的實現(xiàn)要素 ?Romfs文件系統(tǒng)布局與文件結(jié)構(gòu) ?具體實現(xiàn)的對象 編寫一個文件系統(tǒng) ?編寫新文件系統(tǒng)涉及一些基本對象 , 具體地說 , 需要建立 “ 一個結(jié)構(gòu)四個操作表 ” : ?文件系統(tǒng)類型結(jié)構(gòu) ( file_system_type) ?超級塊操作表 ( super_operations) ? 索引節(jié)點(diǎn)操作表 ( inode_operations) ?頁緩沖區(qū)表 ( address_space_operations) ?文件操作表 ( file_operations) Linux文件系統(tǒng)的實現(xiàn)要素 c o m m i t _ w r i t e ( )一個結(jié)構(gòu)及四個操作表 之間的關(guān)系 ?必須建立一個文件系統(tǒng)類型 (file_system_type)來描述文件系統(tǒng),它含有文件系統(tǒng)的名稱、類型標(biāo)志以及 get_sb()等操作 ?超級塊是我們尋找索引節(jié)點(diǎn)的唯一源頭 ?索引節(jié)點(diǎn)需要許多自操作函數(shù),這些函數(shù)都包含在索引節(jié)點(diǎn)操作表中 ?頁緩沖區(qū)提供了頁緩沖區(qū)操作表( address_space_operations),其中包含有readpage()、 writepage()等函數(shù)負(fù)責(zé)對頁緩沖區(qū)中的頁進(jìn)行讀寫等操作。另一方面的作用是,文件指針被更新 ? 調(diào)用 fput( )以減少引用計數(shù)器 filef_count的值。 ? 檢查 filef_mode中的標(biāo)志是否允許所請求的訪問(讀或?qū)懖僮鳎? ? 調(diào)用 locks_verify_area( )檢查對要訪問的文件部分是否有強(qiáng)制鎖 ? 調(diào)用 filef_opread 或 filef_opwrite來傳送數(shù)據(jù)。 ?所謂打開文件實質(zhì)上是在進(jìn)程與文件之間建立起一種連接,而 “ 文件描述符 ”唯一地標(biāo)識著這樣一個連接 ?打開文件,還意味著將目標(biāo)文件的索引節(jié)點(diǎn)從磁盤載入內(nèi)存,并進(jìn)行初始化。 /*相關(guān)的緩存 */ }。 /*私有 address_space鎖 */ struct list_head private_list。 /*頁面分配器的標(biāo)志 */ struct backing_dev_info *backing_dev_info。 /*保護(hù)上述兩個鏈表 */ unsigned long dirtied_when。 /*私有映射鏈表 */ struct list_head i_mmap_shared。 /*頁面總數(shù) */ struct address_space_operations *a_ops。 /*鎖定頁面鏈表 */ struct list_head io_pages。 /*干凈頁面鏈表 */ struct list_head dirty_pages。 文件系統(tǒng)的安裝 ?如果文件系統(tǒng)中的文件當(dāng)前正在使用,該文件系統(tǒng)是不能被卸載的 ?否則,查看對應(yīng)的 VFS 超級塊,如果該文件系統(tǒng)的 VFS 超級塊標(biāo)志為 “ 臟 ” ,則必須將超級塊信息寫回磁盤 ?之后,對應(yīng)的 VFS 超級塊被釋放,vfsmount 數(shù)據(jù)結(jié)構(gòu)將從 vfsmntlist 鏈表中斷開并被釋放 ?具體的實現(xiàn)代碼為 fs/sys_umount()函數(shù) 文件系統(tǒng)的卸載 ?頁緩沖區(qū)是由內(nèi)存中的物理頁組成的,緩沖區(qū)中每一頁都對應(yīng)著磁盤中的多個塊 ?頁緩存中的頁來自讀寫常規(guī)文件、塊設(shè)備文件和內(nèi)存映射文件 ?address_space對象 ?address_space對象的操作函數(shù)表 頁緩沖區(qū) Linux頁緩沖區(qū)使用 address_space結(jié)構(gòu)描述頁緩沖區(qū)中的頁面: struct address_space { struct inode *host。 ? 在用戶程序中要安裝一個文件系統(tǒng)則可以調(diào)用 mount()系統(tǒng)調(diào)用。如果文件系統(tǒng)是作為內(nèi)核可裝載的模塊,則在實際安裝時進(jìn)行注冊,并在模塊卸載時注銷 文件系統(tǒng)的注冊和注銷 ? 安裝一個文件系統(tǒng)實際上是安裝一個物理設(shè)備 ? 自己(一般是超級用戶)安裝文件系統(tǒng)時,需要指定三種信息:文件系統(tǒng)的名稱、包含文件系統(tǒng)的物理塊設(shè)備、文件系統(tǒng)在已有文件系統(tǒng)中的安裝點(diǎn)。umask域由 umask( )系統(tǒng)調(diào)用使用,用于為新創(chuàng)建的文件設(shè)置初始文件許可權(quán)。 }。 struct dentry * root, * pwd, * altroot。 rwlock_t lo
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1