iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 28
0
自我挑戰組

非本科系也能懂和該懂得作業系統系列 第 28

Day 28 - Directory Structure

  • 分享至 

  • xImage
  •  

當檔案數量多的時候,為了方便管理所以產生directory這個概念,對人跟系統來說,檔案(file)皆是放在directory底下。

把一顆新的硬碟做成檔案系統需要經過幾個步驟,

  1. partition,把硬碟的空間分割成一或多個。
  2. 格式化(formatted),檔案系統被建立。
  3. partition後的空間就成為volumn,裡面就能夠儲存directory和file。

directory有幾種不同的實作:

  • Single-Level Directory: 在早期的作業系統比較小型,資料夾底下沒有任何資料夾,一層的結構。
  • Two-Level Directory: 由Single-level演化,在資料夾底下又放了一層資料夾,變成兩層的結構。
  • Tree-Structured Directory: 我們比較熟悉的資料夾結構,在資料夾底下又有資料夾底下又有資料夾.......。
  • Acyclic-Graph Directory: 為了讓不同的人去分享相同的檔案,能夠讓資料夾下層又去指到另一個資料夾,有點類似reference的概念。
  • General-Graph Directory: 比Acyclic-Graph更進階,但可以做出cycle(子資料夾又去指到父資料夾)。

Mounting

使用一個檔案系統的時候,第一件事情是要把他mount到系統裡面,讓系統可以access到device上面的資料。

Mount timing:

  • Boot time: 一打開機就mount好了。檔案系統也是存在作業系統裡面的
  • automatically at run-time: 自動地去mount,就像我們插USB一樣,他會自己去mount,幫你下載驅動程式
  • manually at run-time: 比較早期或者特殊的device,就只能透過手動的方式去把divce mount進到檔案系統裡面

Sharing

Sharing的功能主要是希望同樣的檔案可以在多個使用者之間去使用,因此權限的保護就非常重要。對於權限的管理有分為user與group,user擁有user的權限,group有group的權限,並且user可以被加入group。至於權限方面分為三個類型read, write, execute。

將權限與user、group合起來以後發展了一套表示權限的方法 - Access-Control List。

透過九個英文字母來定義這個檔案所開放的權限,舉例說明:
在mac或linux的某個資料夾底下輸入ls-l,可以看到檔案的前面會有一串英文字母rwxr-xr-x,依照順序可拆成rwx r-x r-x
r代表具有read的權限,w代表write,x則是execute,依照順序則是owner, group, 與other,
代表這個檔案的擁有者能夠做所有的事情,group與other僅能執行與read。


上一篇
Day 27 - File System
下一篇
Day 29 - File system structure
系列文
非本科系也能懂和該懂得作業系統30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言