-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 景觀設(shè)計(jì) > 專(zhuān)題列表 > 正文
VFS系統(tǒng)
大家好!今天讓小編來(lái)大家介紹下關(guān)于VFS系統(tǒng)的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶(hù)遍布全球各地,相關(guān)業(yè)務(wù)請(qǐng)撥打電話(huà):175-8598-2043,或添加微信:1454722008
文章目錄列表:
一、什么是虛擬文件系統(tǒng),linux系統(tǒng)文件系統(tǒng)
1
引言
Linux
中允許眾多不同的文件系統(tǒng)共存,如
ext2,
ext3,
vfat
等。通過(guò)使用同一套文件
I/O
系統(tǒng)
調(diào)用即可對(duì)
Linux
中的任意文件進(jìn)行操作而無(wú)需考慮其所在的具體文件系統(tǒng)格式;更進(jìn)一步,對(duì)文件的
操作可以跨文件系統(tǒng)而執(zhí)行。如圖
1
所示,我們可以使用
cp
命令從
vfat
文件系統(tǒng)格式的硬盤(pán)拷貝數(shù)據(jù)到
ext3
文件系統(tǒng)格式的硬盤(pán);而這樣的操作涉及到兩個(gè)不同的文件系統(tǒng)。
圖
1.
跨文件系統(tǒng)的文件操作
“一切皆是文件”是
Unix/Linux
的基本哲學(xué)之一。不僅普通的文件,目錄、字符設(shè)備、塊設(shè)備、
套接字等在
Unix/Linux
中都是以文件被對(duì)待;它們雖然類(lèi)型不同,但是對(duì)其提供的卻是同一套操作界面。
圖
2.
一切皆是文件
而虛擬文件系統(tǒng)正是實(shí)現(xiàn)上述兩點(diǎn)
Linux
特性的關(guān)鍵所在。虛擬文件系統(tǒng)(Virtual
File
System,
簡(jiǎn)稱(chēng)
VFS),
是
Linux
內(nèi)核中的一個(gè)軟件層,用于給用戶(hù)空間的程序提供文件系統(tǒng)接口;同時(shí),它也提供了內(nèi)核中的一個(gè)
抽象功能,允許不同的文件系統(tǒng)共存。系統(tǒng)中所有的文件系統(tǒng)不但依賴(lài)
VFS
共存,而且也依靠
VFS
協(xié)同工作。
為了能夠支持各種實(shí)際文件系統(tǒng),VFS
定義了所有文件系統(tǒng)都支持的基本的、概念上的接口和數(shù)據(jù)
結(jié)構(gòu);同時(shí)實(shí)際文件系統(tǒng)也提供
VFS
所期望的抽象接口和數(shù)據(jù)結(jié)構(gòu),將自身的諸如文件、目錄等概念在形式
上與VFS的定義保持一致。換句話(huà)說(shuō),一個(gè)實(shí)際的文件系統(tǒng)想要被
Linux
支持,就必須提供一個(gè)符合VFS標(biāo)準(zhǔn)
的接口,才能與
VFS
協(xié)同工作。實(shí)際文件系統(tǒng)在統(tǒng)一的接口和數(shù)據(jù)結(jié)構(gòu)下隱藏了具體的實(shí)現(xiàn)細(xì)節(jié),所以在VFS
層和內(nèi)核的其他部分看來(lái),所有文件系統(tǒng)都是相同的。圖3顯示了VFS在內(nèi)核中與實(shí)際的文件系統(tǒng)的協(xié)同關(guān)系。
圖3.
VFS在內(nèi)核中與其他的內(nèi)核模塊的協(xié)同關(guān)系
我們已經(jīng)知道,正是由于在內(nèi)核中引入了VFS,跨文件系統(tǒng)的文件操作才能實(shí)現(xiàn),“一切皆是文件”
的口號(hào)才能承諾。而為什么引入了VFS,就能實(shí)現(xiàn)這兩個(gè)特性呢?在接下來(lái),我們將以這樣的一個(gè)思路來(lái)切入
文章的正題:我們將先簡(jiǎn)要介紹下用以描述VFS模型的一些數(shù)據(jù)結(jié)構(gòu),總結(jié)出這些數(shù)據(jù)結(jié)構(gòu)相互間的關(guān)系;然后
選擇兩個(gè)具有代表性的文件I/O操作sys_open()和sys_read()來(lái)詳細(xì)說(shuō)明內(nèi)核是如何借助VFS和具體的文件系統(tǒng)打
交道以實(shí)現(xiàn)跨文件系統(tǒng)的文件操作和承諾“一切皆是文件”的口號(hào)。
二、怎樣完linux上vfs里面的文件系統(tǒng)祖冊(cè)
c
三、怎樣打開(kāi)vfs格式的文件啊
你應(yīng)該先了解下什么是vfs
VFS的作用就是采用標(biāo)準(zhǔn)的Unix系統(tǒng)調(diào)用讀寫(xiě)位于不同物理介質(zhì)上的不同文件系統(tǒng)。VFS是一個(gè)可以讓open()、read()、write()等系統(tǒng)調(diào)用不用關(guān)心底層的存儲(chǔ)介質(zhì)和文件系統(tǒng)類(lèi)型就可以工作的粘合層。
Linux是一個(gè)非常優(yōu)秀的操作系統(tǒng),它是免費(fèi)的,而且很穩(wěn)定。 Linux所支持的文件系統(tǒng)高達(dá)十幾個(gè),除了為它量身打造的Ext2之外,它還支持了Minix,F(xiàn)AT,VFAT,NFS,NTFS…等等。
所謂VFS就是Virtual File System虛擬文件系統(tǒng),也稱(chēng)為虛擬文件系統(tǒng)開(kāi)關(guān)(Virtual Filesystem Switch).
這是Linux檔案系統(tǒng)對(duì)外的接口。任何要使用檔案系統(tǒng)的程序都必須經(jīng)由這層接口來(lái)使用它。
VFS是一個(gè)異構(gòu)文件系統(tǒng)之上的軟件粘合層(注:有時(shí)也把VFS稱(chēng)為可堆疊的文件系統(tǒng)(Stackable Filesystem),因?yàn)閂FS可以無(wú)縫地使用多個(gè)不同類(lèi)型的文件系統(tǒng),就像把多個(gè)文件系統(tǒng)堆疊在一起一樣,故而得名)。通過(guò)VFS,可以為訪問(wèn)文件系統(tǒng)的系統(tǒng)調(diào)用提供一個(gè)統(tǒng)一的抽象接口。
VFS最早由Sun公司提出以實(shí)現(xiàn)NFS(Network FileSystem,網(wǎng)絡(luò)文件系統(tǒng))。但是現(xiàn)在很多Unix系統(tǒng)都采用了VFS(包括Linux、FreeBSD、Solaris等)。
Linux下的VFS:
VFS的作用就是采用標(biāo)準(zhǔn)的Unix系統(tǒng)調(diào)用讀寫(xiě)位于不同物理介質(zhì)上的不同文件系統(tǒng)。VFS是一個(gè)可以讓open()、read()、write()等系統(tǒng)調(diào)用不用關(guān)心底層的存儲(chǔ)介質(zhì)和文件系統(tǒng)類(lèi)型就可以工作的粘合層。在古老的DOS操作系統(tǒng)中,要訪問(wèn)本地文件系統(tǒng)之外的文件系統(tǒng)需要使用特殊的工具才能進(jìn)行。而在Linux下,通過(guò)VFS,一個(gè)抽象的通用訪問(wèn)接口屏蔽了底層文件系統(tǒng)和物理介質(zhì)的差異性。
每一種類(lèi)型的文件系統(tǒng)代碼都隱藏了實(shí)現(xiàn)的細(xì)節(jié)。因此,對(duì)于VFS層和內(nèi)核的其它部分而言,每一種類(lèi)型的文件系統(tǒng)看起來(lái)都是一樣的。
在Linux中,VFS采用的是面向?qū)ο蟮木幊谭椒ā?
四、磁盤(pán)格式化mkfs、mke2fs
在完成磁盤(pán)分區(qū)的操作后,接著就需要對(duì)新建的分區(qū)進(jìn)行格式化,創(chuàng)建相應(yīng)的文件系統(tǒng)。在linux系統(tǒng)中我們通常借助mkfs和mke2fs這兩個(gè)命令來(lái)進(jìn)行以上操作。
mkfs命令通常用于在設(shè)備硬件分區(qū)上創(chuàng)建linux文件系統(tǒng)。mkfs命令支持建立多種Linux文件系統(tǒng),如ext系列,xfs等等。實(shí)際上mkfs是支持多種文件系統(tǒng)構(gòu)建命令 mkfs. TYPE 的前部分,mkfs命令通常執(zhí)行的時(shí)候也是調(diào)用 mkfs. TYPE 來(lái)執(zhí)行,如mkfs.ext2,mkfs.vfs,mkfs.vfat等等。
創(chuàng)建vfat系統(tǒng):
創(chuàng)建ext4文件系統(tǒng)并指定卷標(biāo)為testdisk:
mke2fs命令是專(zhuān)門(mén)用于管理ext系列文件系統(tǒng)的一個(gè)專(zhuān)門(mén)的工具。其還有像mkfs.ext2,mkfs.ext3,mkfs.ext4等衍生的命令,它們的用法mke2fs類(lèi)似,在系統(tǒng)man下它們的幫助手冊(cè)會(huì)直接跳轉(zhuǎn)mke2fs命令的幫助手冊(cè)。
創(chuàng)建ext4文件系統(tǒng)并設(shè)置卷標(biāo)為testdisk:
以上就是小編對(duì)于VFS系統(tǒng)問(wèn)題和相關(guān)問(wèn)題的解答了,如有疑問(wèn),可撥打網(wǎng)站上的電話(huà),或添加微信。
推薦閱讀:
北京小花園景觀設(shè)計(jì)招聘(北京小花園景觀設(shè)計(jì)招聘網(wǎng))
景觀設(shè)計(jì)公司怎么成為(景觀設(shè)計(jì)公司怎么成為國(guó)企)
猜你喜歡
廣州形派裝飾設(shè)計(jì)有限公司(廣州形派裝飾設(shè)計(jì)有限公司招聘)
房地產(chǎn)知識(shí)口播文案(房地產(chǎn)知識(shí)口播文案范文)
下列哪一個(gè)不是跨境電商平臺(tái)(下列哪一個(gè)不是跨境電商平臺(tái)的優(yōu)勢(shì))
包裝設(shè)計(jì)圖(包裝設(shè)計(jì)圖簡(jiǎn)單)
企業(yè)形象vi設(shè)計(jì)一整套(企業(yè)vi品牌形象設(shè)計(jì))
廣州三木空間裝飾設(shè)計(jì)工程有限公司(廣州三木空間裝飾設(shè)計(jì)工程有限公司歐宏生)
制作電子書(shū)的軟件(制作電子書(shū)的軟件有哪些)