版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——linux的虛擬文件系統(tǒng)
linux的虛擬文件系統(tǒng)
Linux的虛擬文件系統(tǒng)
linux的虛擬文件系統(tǒng)
提綱虛擬文件系統(tǒng)VFS的作用VFS的數(shù)據(jù)結(jié)構(gòu)文件系統(tǒng)類(lèi)型文件系統(tǒng)安裝路徑名查找VFS系統(tǒng)調(diào)用的實(shí)現(xiàn)文件加鎖
11/03/09
嵌入式OS
2/31
linux的虛擬文件系統(tǒng)
虛擬文件系統(tǒng)VFS的作用虛擬文件系統(tǒng)VirtualFilesystemVirtualFilesystemSwitchVFS是一個(gè)軟件層,用來(lái)處理與Unix標(biāo)準(zhǔn)文件系統(tǒng)相關(guān)的所有系統(tǒng)調(diào)用。是用戶(hù)應(yīng)用程序與文件系統(tǒng)實(shí)現(xiàn)之間的抽象層
能為各種文件系統(tǒng)提供一個(gè)通用的、統(tǒng)一的接口
Linux與其他類(lèi)Unix系統(tǒng)一樣,采用虛擬文件系統(tǒng)VFS來(lái)達(dá)到支持多種文件系統(tǒng)格式的目標(biāo)
11/03/09
嵌入式OS
3/31
linux的虛擬文件系統(tǒng)
VFS在一個(gè)簡(jiǎn)單文件復(fù)制操作中的作用假設(shè)用戶(hù)輸入以下shell命令$cp/floppy/TEST/tmp/test其中,/floppy是MS-DOS的磁盤(pán)的一個(gè)掛載點(diǎn)(安點(diǎn)綴)/tmp是Ext2文件系統(tǒng)中的一個(gè)目錄
對(duì)于cp命令而言,它不需要知道/floppy/TEST和/tmp/test分別是什么文件系統(tǒng)類(lèi)型在cp命令中,它通過(guò)VFS提供的系統(tǒng)調(diào)用接口進(jìn)行文件操作
11/03/09
嵌入式OS
4/31
linux的虛擬文件系統(tǒng)
11/03/09
嵌入式OS
5/31
linux的虛擬文件系統(tǒng)
VFS支持的文件系統(tǒng)類(lèi)型VFS支持的文件系統(tǒng)可以劃分為三種主要類(lèi)型基于磁盤(pán)的文件系統(tǒng):它們管理在本地磁盤(pán)分區(qū)中可用的存儲(chǔ)空間Linux使用的文件系統(tǒng):ext2、ext3、ReiserFSUnix家族的文件系統(tǒng):SYSV文件系統(tǒng),UFS,MINIX文件系統(tǒng)以及VERITASVxFS微軟公司的文件系統(tǒng):MS-DOS、VFAT以及NTFSISO9660CD-ROM文件系統(tǒng)和通用磁盤(pán)格式的DVD文件系統(tǒng)其他有專(zhuān)利權(quán)的文件系統(tǒng),如HPFS、HFS、AFFS、ADFS起源于非Linux系統(tǒng)的其他日志文件系統(tǒng),JFS,XFS
11/03/09
嵌入式OS
6/31
linux的虛擬文件系統(tǒng)
網(wǎng)絡(luò)文件系統(tǒng):用于訪(fǎng)問(wèn)屬于其他網(wǎng)絡(luò)計(jì)算機(jī)的文件系統(tǒng)所包含的文件NFS、Coda、AFS、SMB、NCP
特別文件系統(tǒng)不同于上述兩大類(lèi)不管理具體的磁盤(pán)空間/proc
各種不同的文件系統(tǒng)通過(guò)mount(掛載、安裝)到根文件系統(tǒng)中在Linux中,根文件系統(tǒng)即根目錄所代表的文件系統(tǒng)尋常是ext2文件系統(tǒng)
11/03/09
嵌入式OS
7/31
linux的虛擬文件系統(tǒng)
VFS中通用文件模型概念VFS的基本思想:引入一個(gè)通用文件模型,這個(gè)模型能夠表示所有支持的文件系統(tǒng)對(duì)于一個(gè)具體實(shí)現(xiàn)的文件系統(tǒng),在處理時(shí),需要將其進(jìn)行概念上的轉(zhuǎn)換例如,在通用文件模型中,目錄被看成是普通文件
在實(shí)現(xiàn)上,
read()sys_readfile數(shù)據(jù)結(jié)構(gòu)f_opMS_DOS文件操作指針(其中的read操作)類(lèi)似面向?qū)ο蟮母拍?/p>
11/03/09
嵌入式OS
8/31
linux的虛擬文件系統(tǒng)
通用文件模型有以下對(duì)象類(lèi)型組成超級(jí)塊對(duì)象(superblockobject)存放文件系統(tǒng)相關(guān)信息:例如文件系統(tǒng)控制塊
索引節(jié)點(diǎn)對(duì)象(inodeobject)存放具體文件的一般
信息:文件控制塊/inode
文件對(duì)象(fileobject)存放已開(kāi)啟的文件和進(jìn)程之間交互的信息
目錄項(xiàng)對(duì)象(dentryobject)存放目錄項(xiàng)與文件的鏈接信息
11/03/09
嵌入式OS
9/31
linux的虛擬文件系統(tǒng)
三個(gè)不同的進(jìn)程開(kāi)啟同一個(gè)文件
同一個(gè)硬鏈接
兩個(gè)不同的硬鏈接
11/03/09
嵌入式OS
10/31
linux的虛擬文件系統(tǒng)
VFS所處理的系統(tǒng)調(diào)用mount、umount:掛載/卸載文件系統(tǒng)sysfs:獲取文件系統(tǒng)信息statfs、fstatfs、ustat:獲取文件系統(tǒng)統(tǒng)計(jì)信息chroot:更改根目錄chdir、fchdir、getcwd:操縱當(dāng)前工作目錄mkdir、rmdir:創(chuàng)立/刪除目錄getdents、readdir、link、unlink、rename:對(duì)目錄項(xiàng)進(jìn)行操作readlink、symlink:對(duì)符號(hào)鏈接進(jìn)行操作chown、fchown、lchown:更改文件所有者chmod、fchmod、utime:更改文件屬性open、close、create…
11/03/09
嵌入式OS
11/31
linux的虛擬文件系統(tǒng)
上述大部分操作之需要與通用文件模型中的一些對(duì)象打交道,而不需要真正操作具體的文件系統(tǒng)和文件,因此可以把VFS看成是一個(gè)“通用〞的文件系統(tǒng),在必要時(shí)依靠某種具體的文件系統(tǒng)
11/03/09
嵌入式OS
12/31
linux的虛擬文件系統(tǒng)
VFS的數(shù)據(jù)結(jié)構(gòu)每個(gè)VFS對(duì)象都對(duì)應(yīng)一定的數(shù)據(jù)結(jié)構(gòu),在這個(gè)數(shù)據(jù)結(jié)構(gòu)中包含對(duì)象的屬性及其方法include/linux/fs.h
一個(gè)具體的文件系統(tǒng):超級(jí)塊對(duì)象:super_block所有超級(jí)塊鏈表:super_blocks:s_list域文件系統(tǒng)特有信息:s_fs_info域臟標(biāo)志:s_dirt域文件系統(tǒng)特有方法:super_operations數(shù)據(jù)結(jié)構(gòu)及域
11/03/09
嵌入式OS
13/31
linux的虛擬文件系統(tǒng)
一個(gè)具體的文件:Inode對(duì)象:inodeInode特有的方法
include/linux/fs.h
目錄項(xiàng)對(duì)象:dentry
include/linux/dcache.h
一個(gè)開(kāi)啟文件:文件對(duì)象:file文件操作指針f_pos文件對(duì)象特有的方法
include/linux/fs.h
專(zhuān)用高速緩存:“filp〞,filp_cachep11/03/09嵌入式OS14/31
linux的虛擬文件系統(tǒng)
11/03/09
嵌入式OS
15/31
linux的虛擬文件系統(tǒng)
11/03/09
嵌入式OS
16/31
linux的虛擬文件系統(tǒng)
與進(jìn)程相關(guān)的文件文件系統(tǒng)相關(guān)信息fs_struct開(kāi)啟文件相關(guān)信息files_structinclude/linux/fs_struct.h
include/linux/path.h
11/03/09
嵌入式OS
17/31
linux的虛擬文件系統(tǒng)
include/linux/fdtable.h
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年青島港灣職業(yè)技術(shù)學(xué)院?jiǎn)握芯C合素質(zhì)考試模擬試題含詳細(xì)答案解析
- 2026年云南工程職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)考試備考題庫(kù)含詳細(xì)答案解析
- 2026年天津工藝美術(shù)職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)考試備考試題含詳細(xì)答案解析
- 2026貴州省國(guó)有資產(chǎn)監(jiān)督管理研究和服務(wù)中心招聘2人考試重點(diǎn)題庫(kù)及答案解析
- 2026吉林延邊州安圖縣面向委培生、定向生招聘員額經(jīng)費(fèi)管理人員7人參考考試試題及答案解析
- 2026年山西警官職業(yè)學(xué)院?jiǎn)握芯C合素質(zhì)筆試模擬試題含詳細(xì)答案解析
- 2026廣東廣州南沙人力資源發(fā)展有限公司招聘編外醫(yī)護(hù)人員3人考試參考試題及答案解析
- 2026年湘潭醫(yī)衛(wèi)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能考試備考題庫(kù)含詳細(xì)答案解析
- 2026年西安航空職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試模擬試題及答案詳細(xì)解析
- 2026年湖南含色金屬職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能考試備考試題含詳細(xì)答案解析
- 職高計(jì)算機(jī)單招操作題庫(kù)單選題100道及答案
- 通信工程部的職責(zé)與技術(shù)要求
- 簡(jiǎn)愛(ài)插圖本(英)夏洛蒂·勃朗特著宋兆霖譯
- 焊接專(zhuān)業(yè)人才培養(yǎng)方案
- 第二屆全國(guó)技能大賽江蘇省選拔賽焊接項(xiàng)目評(píng)分表
- 糖尿病護(hù)士年終總結(jié)
- 第20課 《美麗的小興安嶺》 三年級(jí)語(yǔ)文上冊(cè)同步課件(統(tǒng)編版)
- 糖尿病基礎(chǔ)知識(shí)培訓(xùn)2
- 手工藝品加工合同
- 研學(xué)旅行概論第六章
- GB/T 22176-2023二甲戊靈乳油
評(píng)論
0/150
提交評(píng)論