第十一章 i/o裝置和磁碟管理
11.1 i/o裝置
1. i/o裝置類別
人可讀
機器可讀
通訊2. i/o裝置差異
資料速率
應用 控制的複雜性
傳送單位
資料表示
錯誤條件
3. 執行i/o的三種技術
程式控制i/o
中斷驅動i/o
直接儲存器訪問(dma)
11.2.2 直接儲存器訪問
dma單元能夠模擬處理器,像處理器一樣獲得系統匯流排的控制權,利用系統匯流排與儲存器進行雙向資料傳送。
1. dma技術工作流程:
當處理器想讀或寫一塊資料時,通過向dma模組傳送以下資訊來給dma模組發出一條命令:
請求讀或寫操作的訊號,通過讀寫控制線傳送。
相關的i/o裝置位址,通過資料線傳送。
從儲存器中讀或往儲存器中寫的起始位址,在資料線上傳送,並由dma模組儲存在其位址暫存器中。
讀或寫的字數,通過資料線傳送,並由dma模組儲存在其資料計數暫存器中。
處理器繼續執行其工作;
dma模組直接從儲存器中或往儲存器中傳送整塊資料,一次傳送乙個字;
傳送結束後,dma模組給處理器傳送乙個中斷訊號。
2. dma機制的配置方法
11.3 作業系統設計問題
11.3.1 設計目標
效率
多道程式設計
交換技術
通用性
處理器看待i/o裝置的方式
作業系統管理i/o裝置和i/o操作的方式
11.3.2 i/o功能的邏輯結構
11.4 i/o緩衝
引入緩衝的目的
改善**處理器與外圍裝置之間速度不配的矛盾
提高cpu和i/o裝置的並行性
例:某個使用者程序需要從磁碟中讀入多個資料塊,對磁碟單元執行乙個i/o命令,並等待(忙等或程序掛起)資料傳送完畢。
存在的問題:
程式被掛起,等待相對比較慢的i/o完成。
干擾了作業系統的交換決策。
11.4.4 緩衝的作用
在多道程式設計環境中,當存在多種i/o活動和多種程序活動時,緩衝是提高作業系統效率和單個程序效能的一種方法。
但當程序的平均需求大於i/o裝置的服務能力時,緩衝再多也不能讓i/o裝置與這個程序一直並駕齊驅。
11.5 磁碟排程
11.5.1 磁碟效能引數
尋道時間
將磁頭臂移到指定磁軌所需要的時間。
旋轉延遲
將磁碟的待訪問位址區域旋轉到讀/寫磁頭可訪問的位置所需要的時間。
傳輸時間
讀或寫操作的資料傳輸所需的時間。
11.5.2 磁碟排程策略
題目:有乙個磁碟佇列,其i/o請求順序如下:
98,183,37,122,14,124,65,67
磁頭開始位於53
1、fifo排程
先進先出( fifo ):按請求到來的順序進行服務
優點:比較公平
缺點:通常不能提供最快的服務
fifo:平均尋道長度為640/8=80
2、sstf排程
最短尋道時間優先演算法(sstf)
從當前磁頭位置選擇最短尋道時間的請求,即選擇與當前磁頭位置最近的待處理請求。
優點:較fcfs大大提高了效能
缺點:可能會導致一些請求得不到服務,並不是最佳。
sstf:平均尋道長度為236/8=29.5
3、scan排程
scan演算法又稱電梯演算法
磁臂從磁碟的一端向另一端移動,同時當磁頭移過每個柱面時,處理位於該柱面上的服務請求。當到達另一端時,磁頭改變方向,處理繼續。
需要知道磁頭的當前位置和磁頭移動的方向。
某些請求處理可能不及時。
c-scan :平均尋道長度為322/8=40.25
4.其它磁碟排程方法
n-step-scan
把磁碟請求佇列分成長度為n的子佇列,每一次用scan處理乙個子佇列。在處理某乙個佇列時,新請求必須新增到其他某個佇列中。
fscan
使用兩個子佇列。當掃瞄開始時,所有請求都在乙個佇列中,而另乙個隊列為空。在掃瞄過程中,所有新到的請求都被放入另乙個佇列中。
第十一章 故障管理
可以通過事務程式本身發現的事務內部故障。對策 通過將事務回滾,撤銷對其資料庫的修改,從而使資料庫回到一致的狀態。不能由事務程式處理的,如運算溢位故障 併發事務死鎖故障 違反了某些完整性限制而導致的故障等。對策 通過將事務回滾,撤銷對其資料庫的修改,從而使資料庫回到一致的狀態。又稱軟故障,是指資料庫在...
第十一章,日誌管理
一,簡介 rsyslog 系統日誌管理 關心問題 哪類程式 產生的什麼日誌 放到什麼地方 logrotate日誌輪 將大量的日誌,分割管理,刪除舊日誌。二,任務一 1,處理日誌的程序 第一類 rsyslogd 系統專職日誌程式。處理絕大部分日誌記錄,系統操作有關的資訊,如登入資訊,程式啟動關閉資訊,...
第十一章 檢視和管理程序2
十 排程程序的後置執行 1.一次性任務是用at,迴圈任務是用crontab 2.沒有重定向的輸出被郵件至使用者 3.root可以為其他使用者修改任務 十一 crontab檔案格式 1.入口包括乙個命令列和隨後的由五個空間限定的域 2.域包括 分,小時,月份的第幾天,第幾月,星期幾 3.是用命令 ma...