檔案系統管理
檔案用於透過作業系統提供統一的資料儲存檢視。所有檔案都對映到通常是非易失性的物理裝置上,因此在系統故障的情況下資料是安全的。
檔案屬性
檔案的屬性在不同的作業系統上可能略有不同。但是,常見的檔案屬性包括:
名稱
表示檔案的符號名稱。檔名是唯一易於人類讀取的屬性。
識別符號
表示系統中的檔名。它通常是一個數字,並在檔案系統中唯一標識一個檔案。
型別
如果系統中存在不同型別的檔案,則型別屬性表示檔案型別。
位置
指向特定檔案儲存所在的裝置,以及檔案在裝置上的位置。
大小
此屬性以位元組、字或塊定義檔案的大小。它還可以指定允許的最大檔案大小。
保護
保護屬性包含檔案的保護資訊,例如誰可以讀取或寫入檔案。
檔案操作
可以對檔案執行的操作包括:
建立檔案
要建立檔案,檔案系統中應該有空間。然後必須在目錄中為新檔案建立條目。此條目應包含有關檔案的資訊,例如其名稱、位置等。
讀取檔案
要讀取檔案,系統呼叫應指定檔案的名稱和位置。應該在讀取發生的位置有一個讀取指標。讀取過程完成後,應更新讀取指標。
寫入檔案
要寫入檔案,系統呼叫應指定檔案的名稱和需要寫入的內容。應該在寫入發生的位置有一個寫入指標。寫入過程完成後,應更新寫入指標。
刪除檔案
要刪除檔案,應在目錄中找到該檔案。之後,所有檔案空間都將被刪除,以便可以被其他檔案重用。
在檔案中重新定位
這也被稱為檔案查詢。要重新定位檔案,當前檔案值將設定為相應的條目。這不需要任何實際的 I/O 操作。
截斷檔案
這會刪除檔案中的資料,而不會破壞其所有屬性。僅將檔案長度重置為零,並擦除檔案內容。其餘屬性保持不變。
檔案訪問方法
檔案中的資訊可以透過多種方式訪問。其中最常見的是使用順序訪問或直接訪問。有關這些的更多詳細資訊如下:
順序訪問
使用順序訪問按順序處理檔案中的資訊。檔案記錄一個接一個地訪問。大多數檔案系統(如編輯器、編譯器等)使用順序訪問。它基於檔案的磁帶模型,因此也可以與順序訪問裝置以及隨機訪問裝置一起使用。
說明順序訪問的圖表如下:
如影像所示,檔案中的讀寫操作只能以順序方式進行。但是,可以根據需要將檔案重置到開頭或倒帶。
直接訪問
在直接訪問或相對訪問中,可以隨機訪問檔案以進行讀寫操作。直接訪問模型基於檔案的磁碟模型,因為它允許隨機訪問。在這種方法中,檔案被分成編號的塊。可以讀取或寫入任何這些任意塊。例如,我們可以讀取塊 8,然後寫入塊 10,然後讀取塊 15。直接訪問系統非常有用,大多數資料庫都是這種型別。
說明直接訪問的圖表如下:
如上圖所示,檔案指標可以根據需要隨機定位以進行讀寫操作。這可以在定位時沒有任何特定順序地完成。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP