在教科書中閱讀主要有兩種文件訪問方法;順序和直接。我們在Linux中使用哪一個?Linux中的文件訪問方法
在讀取命令中,我們給出了要讀取多少字節以及哪個緩衝區。所以我們在Linux中進行順序訪問?
但物理上我們有文件存儲塊?我無法與它聯繫。
在Linux中是否可以直接訪問?
我讀過有關Galvin操作系統概念中的這些訪問模型
在教科書中閱讀主要有兩種文件訪問方法;順序和直接。我們在Linux中使用哪一個?Linux中的文件訪問方法
在讀取命令中,我們給出了要讀取多少字節以及哪個緩衝區。所以我們在Linux中進行順序訪問?
但物理上我們有文件存儲塊?我無法與它聯繫。
在Linux中是否可以直接訪問?
我讀過有關Galvin操作系統概念中的這些訪問模型
兩者都是可能的。
當您在普通文件上執行read
時,它會按順序讀取文件,每次將文件指針前移至正確的數量。您可以使用seek
移動到文件中的任意點。
並非所有文件都支持隨機/直接訪問。例如管道通常只有順序訪問(你不能後退或跳過)。
幾乎所有的事情都是可能的,但是一些文件類型有限制。
(直接I/O(O_DIRECT
標誌)文件訪問是不同的概念完全。)
你當然可以在一個開放的(光盤)文件中的任意位置的讀/寫。
有很多做隨機IO的方法,它們針對不同類型的使用進行了優化。