六、可再入程序( 識記 )
(1) 什么是 可再入程序 . 一個能被 多個用戶同時調用 的程序稱做“ 可再入 ”的程序。
(2) 可再入程序的性質。
可再入程序必須是純代碼,在執行時自身不改變;
一個可再入程序要求調用者提供工作區,以保證程序以同樣方式為各用戶服務。
編譯程序 和 操作系統程序 通常都是“可再入”程序,能同時被不同用戶調用而構成不同的進程。
七、中斷及中斷響應( 領會 )
1、 中斷 的定義。
一個進程占有處理器運行時,由于自身或者外界的原因(出現了事件)使運行被打斷,讓操作系統處理所出現的事件,到適當的時候再讓被打斷的進程繼續運行,這個過程稱為“中斷”。
2、 中斷 的類型。
從中斷事件的性質出發,中斷可以分為兩大類:
。 強迫性中斷事件 包括硬件故障中斷,程序性中斷,外部中斷和輸入輸出中斷等
。 自愿性中斷事件 是由正在運行的進程執行一條訪管指令用以請求系統調用而引起的中斷,這種中斷也稱為“訪管中斷”。
自愿中斷 的斷點是確定的,而 強迫性中斷 的斷點可能發生在任何位置。
3、中斷的響應和處理。
中斷響應 (硬件即中斷裝置操作)
處理器每執行一條指令后,硬件的中斷位置立即檢查有無中斷事件發生,若有中斷事件發生,則暫停現行進程的執行,而讓操作系統的中斷處理程序占用處理器,這一過程稱為“中斷響應”。
中斷響應過程中,中斷裝置要做以下三項工作:
是否有中斷事件發生
判別自愿性中斷,只要檢查操作碼是否為訪管指令。
判別強迫性中斷,則要檢查中斷寄存器內容。若為0,則無中斷;若非0,則表示有中斷事件發生。
若有中斷發生,保護斷點信息
每個程序都有一個程序狀態字(PSW)來反映本狀態的執行狀態,如基本狀態、中斷碼和中斷屏蔽位等內容。處理器設有一個“程序狀態字寄存器”用來存放當前運行程序的PSW.程序狀態字可分為當前PSW、舊PSW和新PSW.
當出現中斷事件后,把被中斷進程的PSW保存為舊PSW,即完成斷點信息保護。
啟動操作系統的中斷處理程序工作
中斷裝置通過“交換PSW”過程完成此項任務,即把出現的中斷事件存放到當前PSW中斷碼位置,然后把該當前PSW保存為舊PSW,再把操作系統中斷處理程序的新PSW送到程序狀態字寄存器中,成為當前的PSW.
中斷處理 ( 軟件即操作系統操作 )
操作系統的中斷處理程序對中斷事件進行處理時,大致要做三方面的工作:
保護被中斷進程的現場信息
把中斷時的通用寄存器,控制寄存器內容及舊PSW保存到被中斷進程的進程控制塊中。
分析中斷原因
根據舊PSW的中斷碼可知發生該中斷的具體原因。
處理發生的中斷事件
一般只做一些簡單處理,在多數情況下把具體的處理交給其他程序模塊去做。
相關推薦:2010年自考數據庫及其應用重點知識講解匯總