File Operations
File operations 是 OS 對 file ADT 提供的基本操作。
Basic Operations
- Create:建立新的 file 與 metadata。
- Open:檢查 permission,建立 runtime handle。
- Read:從 current offset 或指定 offset 取資料。
- Write:把資料寫入 file,必要時讓 file 變大。
- Reposition / seek:改變 current file offset。
- Close:釋放 open-time state,必要時寫回 metadata。
- Delete:移除 name,並在沒有 reference 時回收 storage。
- Truncate:保留 file,但把內容清空或縮短。
Open Before Use
多數 OS 要先 open() 再 read / write,因為 pathname lookup 和 permission check 很貴。Open 後,process 用 file descriptor 代表這個 opened file。
Related:D-OS-Ch13aba-Open_File_Table_Interface、D-OS-Ch13abb-File_Locking