作業系統——裝置驅動和檔案系統
L26 顯示器
IO裝置:鍵盤和顯示器,磁碟(抽象出一個檔案)
讓外設工作起來,cpu發出指令給顯示卡中的一個暫存器(視訊記憶體),顯示器根據顯示卡中的資訊來讓顯示器工作。所以讓外設工作,只需要向對應的暫存器中傳送指令,完成操作。外設去做對應的工作,外設服務程式執行結束後向cpu傳送一箇中斷,cpu進行中斷處理。
類似於out xxx, al這樣的指令讓外設工作,然後等外設完事後寫中斷處理程式。
向裝置控制器等暫存器寫的過程比較麻煩,為了讓out做的統一,讓使用者使用起來方便,內部隱藏很多細節,形成統一的檔案介面:檔案檢視。
總結:三件事,形成檔案檢視、發出out指令、形成中斷處理
操作外設的程式:
開啟外設檔案(open),不論什麼裝置都是open、read、write、close。區別在檔名,不同的檔名對應不同的裝置。根據裝置檔案找到控制器地址、內容格式等等。
printf記憶體寫到顯示器,fprintf記憶體寫到磁碟
從write開始分支,1是顯示器,
寫裝置驅動:寫出核心out指令,將相應的函式註冊在這些表上,建立dev什麼檔案和登錄檔對上,就行了。
編寫檔案驅動,是一個很重要的技能
L27 鍵盤
cup向外設發指令,原理簡單,細節複雜,統一的檔案檢視,檔名,檔案描述結構。
裝置讀寫後的中斷處理。鍵盤對應的是中斷處理。
如何使用鍵盤?
使用者:敲鍵盤、看結果
OS:“等待”使用者敲鍵盤,敲了就中斷(21號中斷)
處理中斷,根據掃描碼得到ASCII碼,ASCII碼放入緩衝佇列,等著程式去拿資料
L28 生磁碟的使用
原理一樣:檔案檢視、out、中斷,但是比前面顯示器和鍵盤複雜很多。包裝(抽象)層次複雜。
讓磁碟工作起來,就是生磁碟
磁碟結構:盤面、磁軌、扇區、磁頭
磁碟資料訪問的基本單位是大小為512位元組的扇區
扇區的大小是傳輸時間和碎片浪費的折中
磁碟資料讀寫過程:移動磁頭到相應的磁軌上,旋轉磁碟到相應的扇區上,和記憶體快取配合進行讀寫。(控制器—>尋道—>旋轉—>傳輸)
OS的核心就是向控制器中寫柱面、磁頭、扇區、快取位置
out指令寫這些資料,首先要知道這些資料,下面要把這一過程封裝一下
通過盤塊號讀寫磁碟(一層抽象)
磁碟驅動負責從block(一維地址)計算出cyl、head、sec(CHS)
OS內部實現一維地址到三維地址到編址,我們希望相鄰的盤塊可以快速讀出。
L29 從生磁碟到檔案
引出檔案就是熟磁碟了,
L30 檔案使用磁碟的實現
L31目錄與檔案系統
L32 目錄解析程式碼實現
相關文章
- 無作業系統時的裝置驅動和有作業系統時的裝置驅動作業系統
- 408 知識點筆記——作業系統(檔案系統、裝置管理)筆記作業系統
- 作業系統裝置管理作業系統
- Linux作業系統支援的檔案系統有哪些?Linux作業系統
- 檔案系統&&磁碟管理(六)–swap分割槽、迴環裝置、檔案系統配置檔案fstab
- 作業系統學習筆記:裝置管理作業系統筆記
- 作業系統中檔案系統的實現和分配方式探析(下)作業系統
- 樹莓派作業系統安裝和啟動樹莓派作業系統
- 檔案和檔案系統
- 作業系統-記憶體、檔案管理作業系統記憶體
- 作業系統(一):作業系統概述作業系統
- 作業系統(1)——作業系統概述作業系統
- 探索作業系統:核心、啟動和系統呼叫的奧秘作業系統
- 作業系統封裝操作作業系統封裝
- rootfs -根檔案系統製作
- Linux系統篇-檔案系統&虛擬檔案系統Linux
- Java 和作業系統互動細節Java作業系統
- Java和作業系統互動細節Java作業系統
- Linux驅動之GPIO子系統和pinctrl子系統Linux
- 作業系統(二):作業系統結構作業系統
- 【作業系統2】作業系統啟動過程與異常/中斷,系統呼叫作業系統
- Linux作業系統定時備份檔案方法Linux作業系統
- 作業系統第四章-檔案管理作業系統
- 醫療裝置管理系統-智慧裝置管理系統平臺
- win10系統odbc驅動怎麼安裝_win10系統odbc驅動如何安裝Win10
- 作業系統2—作業系統概論(下)作業系統
- 作業系統1—作業系統概論(上)作業系統
- U盤裝CENTOS作業系統CentOS作業系統
- RedHat 7.6作業系統安裝Redhat作業系統
- 檔案描述符和檔案系統
- 作業系統作業系統
- [作業系統]作業系統
- 《作業系統》作業系統
- 系統 HIVE 檔案是 Windows 登錄檔中的資料檔案,儲存系統級的配置資訊和設定。它們儲存作業系統的配置、驅動程式資訊、硬體設定以及系統服務的引數。這些檔案在 Windows 啟動時載入,用於系統的正常執行和管理。HiveWindows作業系統
- 分散式檔案系統(HDFS)與 linux系統檔案系統 對比分散式Linux
- 計算機作業系統|作業系統引論計算機作業系統
- 作業系統: Unix作業系統演進簡史作業系統
- 檔案系統