併發、共享(同步、非同步、虛擬《物理分隔到邏輯分隔,實現多使用者訪問》)、非同步(走走停停的程序)
計算機系統中,通常cpu執行兩種不同性質的程式:一種是作業系統核心程式;另一種是使用者自編程式或系統外層的應用程式。
作業系統在具體實現上劃分了使用者態(目態)和核心態(管態),以嚴格區分兩類程式。
核心態:作業系統的各項功能分別被設定在不同的層次上。一些與硬體關聯較緊密的模組,諸如時鐘管理、中斷處理、裝置驅動等處於最底層。其次是執行頻率較髙的程式,諸如程序管理、儲存器管理和裝置管理等。
在作業系統中引入核心態和使用者態這兩種工作狀態後,就需要考慮這兩種狀態之間如何切換。途徑就是通過中斷或異常。
中斷(interruption),也稱外中斷,指來自cpu執行指令以外的事件的發生,如裝置發出的i/o結束中斷,表示裝置輸入/輸出處理已經完成,希望處理機能夠向裝置發下乙個輸入 / 輸出請求,同時讓完成輸入/輸出後的程式繼續執行。時鐘中斷,表示乙個固定的時間片已到,讓處理機處理計時、啟動定時執行的任務等。這一類中斷通常是與當前程式執行無關的事件,即它們與當前處理機執行的程式無關。
異常(exception),也稱內中斷、例外或陷入(trap),指源自cpu執行指令內部的事件,如程式的非法操作碼、 位址越界、算術溢位、虛存系統的缺頁以及專門的陷入指令等引起的事件。對異常的處理一般要依賴於當前程式的執行現場,而且異常不能被遮蔽,一旦出現應立即處理。
下面列舉一些由使用者態轉向核心態的例子:
注意:由使用者態進入核心態,不僅僅是狀態需要切換。而且,所使用的堆疊也可能需要由使用者堆疊切換為系統堆疊,但這個系統堆疊也是屬於該程序的。
作業系統概述
作業系統幾大管理 1 cpu管理 cpu是作業系統中最重要的部分之一。cpu管理又稱程序管理,即是如何將cpu真正地分配給每個任務。我們無法直接操控硬體,只能通過程式來控制硬體。程序排程有以下幾種主要的排程方法 a fifo b 時間片輪轉排程 c 短程序優先 類似1970年一篇 中得比率單調演算法...
作業系統概述
一.現代計算機系統由硬體和軟體兩部分組成.1.硬體包括處理器,暫存器,記憶體,外存及各種i o裝置.2.軟體包括系統軟體,支撐軟體和應用軟體.2.1系統軟體 作業系統 最接近硬體的一層,把硬體封裝起來,負責管理和控制計算機硬體並對其做首次擴充和改造 2.2支撐軟體層 建立在作業系統的封裝上,利用作業...
作業系統概述
作業系統提供的服務 程式執行 把指令和資料載入到記憶體,初始化io裝置和檔案。io裝置訪問 每個io裝置訪問都需要有特定的指令集,作業系統隱藏這些細節,提供統一介面。檔案訪問控制 作業系統區分儲存介質中資料結構,完成檔案io控制。對多使用者系統提供檔案訪問控制。系統訪問 作業系統控制對整個系統的訪問...