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

正文內(nèi)容

第八章文件系統(tǒng)-閱讀頁

2025-08-05 17:14本頁面
  

【正文】 i_mmap。 /*共享映射鏈表 */ struct semaphore i_shared_sem。 /*最后修改時間 */ int gfp_mask。 /*預(yù)讀信息 */ spinlock_t private_lock。 /*私有 address_space鏈表 */ struct address_space *assoc_mapping。 address_space 對象 ? a_ops域指向地址空間對象中的操作函數(shù)表,這與 VFS對象和其操作表關(guān)系類似,操作函數(shù)表由 address_space_operations結(jié)構(gòu)表示 address_space對象的操作函數(shù)表 struct address_space_operations { writepage() /*寫操作(把頁寫入磁盤) */ readpage() /*讀操作(從磁盤讀入頁) */ sync_page() /*啟動在頁上已經(jīng)安排的 I /O操作傳送數(shù)據(jù) */ prepare_write() /*準(zhǔn)備寫操作 */ mit_write() /*完成寫操作 */ bmap() /*從文件塊索引獲得邏輯塊號 */ flushpage() /*準(zhǔn)備刪除來自磁盤的頁 */ releasepage() /*由日志文件系統(tǒng)用來準(zhǔn)備釋放頁 */ direct_IO() /*數(shù)據(jù)頁的直接 I/O傳送 */ } ?open()系統(tǒng)調(diào)用就是打開文件,它返回一個文件描述符。 ?打開文件后,文件相關(guān)的 “ 上下文 ” 、索引節(jié)點(diǎn)、目錄對象等都已經(jīng)生成, 文件的打開 ?文件讀寫的基本步驟 : ? file=fget(fd),也就是調(diào)用 fget( )從 fd獲取相應(yīng)文件對象的地址 file,并把引用計數(shù)器 filef_count加 1。這兩個函數(shù)都返回實(shí)際傳送的字節(jié)數(shù)。 ?返回實(shí)際傳送的字節(jié)數(shù) 文件的讀寫 read sys_read filef_opread generic_file_read i_mappingreadpage block_read_full_page ll_rw_block()submit_bh( ) generic_make_request make_request_fn add_requst 用戶空間函數(shù) 內(nèi)核系統(tǒng)調(diào)用 文件系統(tǒng)讀操作 文件系統(tǒng)通用讀操作 把一個個頁從磁盤讀到內(nèi)存 啟動頁 I/O操作 產(chǎn)生塊設(shè)備請求 向低級設(shè)備驅(qū)動發(fā)送請求 設(shè)備具體的請求發(fā)送函數(shù) 將請求加入請求隊(duì)列 基本文件系統(tǒng)層 I/O 調(diào)度層 用戶界面層 調(diào)度策略函數(shù) 任務(wù)隊(duì)列 請求處理收尾函數(shù) I/O傳輸層 周期運(yùn)行 tq_disk request_fn end_request 中斷處理函數(shù) 塊設(shè)備 DMA數(shù)據(jù)傳送 讀操作流程 ?文件系統(tǒng)比較龐雜,內(nèi)核中提供的romfs文件系統(tǒng) 是個非常理想的實(shí)例,我們以 此 為實(shí)例分析文件系統(tǒng)的實(shí)現(xiàn)。 Linux文件系統(tǒng)的實(shí)現(xiàn)要素 ?Romfs是基于塊的只讀文件系統(tǒng),它使用塊(或扇區(qū))訪問存儲設(shè)備 ?由于 Romfs小型、輕量,所以常常用在嵌入系統(tǒng)和系統(tǒng)引導(dǎo)時 ?Romfs是種很簡單的文件系統(tǒng),它的文件布局比 Ext2等文件系統(tǒng)要簡單得多 ?Romfs比 ext2文件系統(tǒng)需要更少的代碼,且相對簡單,建立文件系統(tǒng)超級塊( superblock)需要更少的存儲空間。 ?在 Linux內(nèi)核源代碼的 Document/fs/romfs中介紹了 romfs文件系統(tǒng)的布局和文件結(jié)構(gòu) 0 文件系統(tǒng)名稱 文件系統(tǒng)大小 檢驗(yàn)和 ( 前 512字節(jié) ) 8 12 16 卷名 第一個文件頭 0 下一個文件頭的偏移 文件類型 文件大小 檢驗(yàn)和 文件 4 8 12 16 Romfs文件系統(tǒng)布局 Romfs的文件結(jié)構(gòu) 具體實(shí)現(xiàn)的對象 ?針對文件系統(tǒng)布局和文件結(jié)構(gòu), Romfs文件系統(tǒng)定義了一個磁盤超級塊結(jié)構(gòu)和文件的 inode結(jié)構(gòu): 磁盤超級塊結(jié)構(gòu): struct romfs_super_block { _u32 word0。 _u32 size。 char name[0]。 文件的 inode結(jié)構(gòu): struct romfs_inode { _u32 next。 _u32 size。 char name[0]。 “內(nèi)核之旅 ” 網(wǎng)站 ? ? 第七期 “ 如何實(shí)現(xiàn) Linux下的文件系統(tǒng) ” 分析在 Linux系統(tǒng)中如何實(shí)現(xiàn)新的文件系統(tǒng)。 ? 下載代碼進(jìn)行調(diào)試
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1