linux中什麼是塊檔案

時間 2021-09-10 08:34:43

1樓:笨自己

實話,只瞭解一個檔案不形象,找了一點資料。相互聯絡的。希望對你有用。當然,裡面也有塊的解釋,而且說的還是不錯的。

系統中能夠隨機(不需要按順序)訪問固定大小資料片(chunks)的裝置被稱作塊裝置,這些資料片就稱作塊。最常

見的塊裝置是硬碟,除此以外,還有軟盤驅動器、cd-rom驅動器和快閃記憶體等等許多其他塊裝置。注意,它們都是以安裝檔案系統的方式使用的——這也是塊裝置

的一般訪問方式。

另一種基本的裝置型別是字元裝置。字元裝置按照字元流的方式被有序訪問,像串列埠和鍵盤就都屬於字元裝置。如果一個硬體裝置是以字元流的方式被訪問的話,那就應該將它歸於字元裝置;反過來,如果一個裝置是隨機(無序的)訪問的,那麼它就屬於塊裝置。

這兩種型別的裝置的根本區別在於它們是否可以被隨機訪問——換句話說就是,能否在訪問裝置時隨意地從一個位置跳轉到另一個位置。舉

個例子,鍵盤這種裝置提供的就是一個資料流,當你敲入「fox」

這個字串時,鍵盤驅動程式會按照和輸入完全相同的順序返回這個由三個字元組成的資料流。如果讓鍵盤驅動程式打亂順序來讀字串,或讀取其他字元,都是沒

有意義的。所以鍵盤就是一種典型的字元裝置,它提供的就是使用者從鍵盤輸入的字元流。對鍵盤進行讀操作會得到一個字元流,首先是「f」,然後是「o」,最後

是「x」,最終是檔案的結束(eof)。當沒人敲鍵盤時,字元流就是空的。硬碟裝置的情況就不大一樣了。硬碟裝置的驅動可能要求讀取磁碟上任意塊的內容,

然後又轉去讀取別的塊的內容,而被讀取的塊在磁碟上位置不一定要連續,所以說硬碟可以被隨機訪問,而不是以流的方式被訪問,顯然它是一個塊裝置。

核心管理塊裝置要比管理字元裝置細緻得多,需要考慮的問題和完成的工作相比字元裝置來說要複雜許多。這是因為字

符裝置僅僅需要控制一個位置—當前位置—而塊裝置訪問的位置必須能夠在介質的不同區間前後移動。所以事實上核心不必提供一個專門的子系統來管理字元裝置,

但是對塊裝置的管理卻必須要有一個專門的提供服務的子系統。不僅僅是因為塊裝置的複雜性遠遠高於字元裝置,更重要的原因是塊裝置對執行效能的要求很高;對

硬碟每多一分利用都會對整個系統的效能帶來提升,其效果要遠遠比鍵盤吞吐速度成倍的提高大得多。另外,我們將會看到,塊裝置的複雜性會為這種優化留下很大

的施展空間。

簡單來講,塊裝置可以隨機存取,而字元裝置不能隨機存取,那裸裝置又該如何解釋呢?

難道裸裝置,如磁碟裸裝置也不能隨機讀取嗎?那在資料庫中用裸裝置建一個2g的資料檔案,為了存取最後一個資料塊,難道oracle還要把前面的所有資料塊都讀一遍,顯然不符合事實,如果這樣解釋呢,作業系統不能隨機讀取,並不意味著資料庫也不能隨機讀取。

塊裝置通過系統快取進行讀取,不是直接和物理磁碟讀取。字元裝置可以直接物理磁碟讀取,不經過系統快取。(如鍵盤,直接相應中斷)

2樓:

以塊(block)為讀寫單位的檔案,通常讀寫儲存晶片時以塊為單位進行,例如二進位制檔案。

下面這個dd命令用於快速建立一個大檔案。

dd if=/dev/zero of=myfile bs=1000 count=100

其中,of - output file,檔名為myfile;

bs - block size,指定塊大小;

count - 指定塊數目。

建立出的檔案大小即為1000*100=100000 byte

在linux核心檔案中arch檔案作用

笨自己 arch 這個子目錄包含了此核心源 所支援的硬體體系結構相關的核心 如對於x86平臺就是i386。include 這個目錄包括了核心的大多數include檔案。另外對於每種支援的體系結構分別有一個子目錄。init 此目錄包含核心啟動 mm 此目錄包含了所有的記憶體管理 與具體硬體體系結構相關...

linux作業系統中,刪除檔案的命令是什麼

在linux中建立檔案很容易,系統中隨時會有檔案變得過時且毫無用處。使用者可以用rm命令將其刪除。該命令的功能為刪除一個目錄中的一個或多個檔案或目錄,它也可以將某個目錄及其下的所有檔案及子目錄均刪除。對於連結檔案,只是刪除了連結,原有檔案均保持不變。rm命令的一般形式為 rm 選項 檔案 如果沒有使...

LINUX中如何不經過排序刪除檔案中重複的行(相同行,只保留

樓上 uniq必須是連續的重複才行把 用awk肯定行 這是一個cu的精華帖,差不多,對於你的問題你給稍等我修改一下。ps感謝紅袖添香大姐 cu精華 經典回顧 假設我有如下檔案 cat aa 123 def1 456 345 def2 812 123 def3 563 322 def4 684 123...