天天看點

淺談Linux的裝置檔案

linux下的檔案分為正常檔案和裝置檔案,正常檔案一定在某一個裝置上被存儲,不論這個裝置是真實的還是虛拟的,這裡的裝置是linux中vfs層中的 裝置,也就是前面所說的裝置檔案中的裝置,vfs層的裝置分為字元裝置和塊裝置,字元裝置可以類比為一個fifo的隊列,無論讀還是寫都必須順序進行,而 塊裝置就可以随機進行讀寫,正常的檔案一般都在塊裝置上被存儲,包括裝置檔案本身也在一個塊裝置上被存儲着,可以說vfs層解決了這種混亂,它提供給上面 的操作者一個十分統一的接口,實際上vfs下面十分不雅,敗絮其中嗎?等你看了linux源代碼就不會這麼認為了,linux核心是分層次的,vfs僅僅 是其中的一個罷了,即使下面很亂也不是很無序的亂,總體看來是很亂,那是因為你混合看所有裝置那當然混亂,因為字元裝置和塊裝置的管理方式就不同,如果理 一下思路就會很自然的想到在vfs接口下面有三條線,一條是正常檔案,一條是字元設别檔案,另一條就是塊裝置檔案。 

 本文轉自 dog250 51CTO部落格,原文連結:http://blog.51cto.com/dog250/1273397

繼續閱讀