操作系統原理之文件系統(第五章)

来源:https://www.cnblogs.com/jalja/archive/2019/09/05/11469585.html
-Advertisement-
Play Games

UNIX中採用的目錄結構非常簡單,每個目錄項只包含一個文件名及其i結點 號。有關文件類型、長度、時間、所有者和簇號等信息都放在i結點。 ...


一、文件

1、⽂件系統的⽤戶接⼝包括⽂件的命名、類型、屬性和對⽂件的操作

2、⽂件命名:所有操作系統都允許⽤1~8個字⺟組成的字元串

3、⽂件擴展名:多數操作系統都⽀持⽂件名⽤圓點隔開分為兩部分,圓點後⾯的部分稱為⽂件擴展名

4、⽂件結構:

  • ⽆結構位元組序列 (流式⽂件)

    

  • 固定⻓度記錄序列  

  

 

  • 樹形結構

   

 5、⽂件類型

 

 

 ******************************************⽂件存取*****************************************

 

 **********************************************文件屬性**************************************

 

 *******************************************⽂件操作**************************************

 

二、目錄

⽬錄是⽂件系統中實現按名訪問的重要數據結構;文件系統通常提供目錄或文件夾用於記錄文件,很多系統中目錄本身也是文件, 目錄是文件系統中實現按名訪問文件的重要數據結構。

⽬錄⽂件有兩種常⻅的結構:屬性放在⽬錄項中和放在i結點中

 

 1、⽬錄結構:

******************************************單層次目錄**********************************

 

 ******************************************兩級目錄*******************************************

 

 ***************************************樹形目錄*************************************************

 

 2、路徑名:採⽤樹形⽬錄時,需要有某種⽅法指明⽂件

 3、⽬錄操作

三、 文件系統的實現

實現⽂件

⽂件系統通常是以2的n次⽅個連續的扇區為單位對⽂件進⾏磁碟空間的分配, 把分配給⽂件的連續扇區構成的磁碟塊稱為簇

 

 ⽂件存儲的4種常⽤⽅式:

*********************************************************連續分配***************************************

把每個⽂件作為⼀連串的數據塊放在磁碟上

 

 **********************************************磁碟鏈接表**********************************************

 

 *******************************************記憶體的鏈接分配表****************************************

不適合大容量的磁碟:磁碟容量大,記憶體連接表就越大,占用記憶體。

 

 

 

 *******************************************************i-結點***********************************************

 

 ************************************************i-結點 計算題*******************************************

 

 *******************************************計算題 2*****************************************************

 

 

2、實現⽬錄

*********************************************CP/M(一種操作系統)中的目錄************************************************

 

*********************************************MS-DOS中的目錄***********************************************************

 

 

************************************************UNIX中的目錄******************************************************

UNIX中採用的目錄結構非常簡單,每個目錄項只包含一個文件名及其i結點 號。有關文件類型、長度、時間、所有者和簇號等信息都放在i結點。

 

3、磁碟空間管理

磁碟空間管理是文件系統的重要功能,包括記錄空閑磁碟信息、設計文件的 存放方式,以及規定文件系統的簇大小等內容

 

4、記錄空閑塊的方式

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 場景 Winform中自定義xml配置文件後對節點進行讀取與寫入: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100532137 在上面已經對xml配置文件對節點能進行讀取與寫入之後 ,實現對節點元素的 添加與刪除。 關註公眾 ...
  • 前提 入行已經7,8年了,一直想做一套漂亮點的自定義控制項,於是就有了本系列文章。 GitHub:https://github.com/kwwwvagaa/NetWinformControl 碼雲:https://gitee.com/kwwwvagaa/net_winform_custom_contr ...
  • 介紹 .NET工程化、AOP、異常處理、緩存、日誌、響應優化、上傳下載、健康檢查、後臺任務、認證和授權、安全性、EF Core 等等 ...
  • 關於 Natasha 動態構建已經成為了封裝者們的家常便飯,從現有的開發趨勢來看,普通反射性能之低,會迫使開發者轉向EMIT/表達式樹等構建方式,但是無論是EMIT還是表達式樹,都會依賴於反射的元數據。 Natasha 通過使用 Roslyn技術,已經解決了上述的問題,在保證高效可靠的同時,提供了一 ...
  • 場景 Winform中自定義xml配置文件,並配置獲取文件路徑: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100522648 上面已經實現自定義配置文件的配置和讀取的基礎上,繼續對配置文件進行讀取與寫入。 xml配置文件如下 ...
  • 操作系統的文件數據除了實際內容之外,通常含有非常多的屬性,例如 Linux 操作系統的文件許可權與文件屬性。文件系統通常會將這兩部分內容分別存放在 inode 和 block 中。 ...
  • 我們知道,之前的運維告警多通過mail 等方式通知到相應的人員,難以實現隨時隨地的查看。隨著手機APP的發展,很多告警開始發送到IM軟體上去。目前比較常用的是發送到微信和釘釘上,今天我們將重點放在釘釘上。群機器人是釘釘群的高級擴展功能,群機器人可以將第三方服務的信息聚合到群聊中,實現自動化的信息同步 ...
  • [toc] 性能優化概述 1、瞭解每個服務 2、需要瞭解業務模式 3、最後我們需要考慮性能與安全 壓力測試工具 瞭解影響性能指標 系統性能優化 文件句柄,Linux一切皆文件,文件句柄可以理解為就是一個索引,文件句柄會隨著我們進程的調用頻繁增加,系統預設文件句柄是有限制的,不能讓一個進程無限的調用, ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...