作業系統(一) 概述

2021-09-13 08:59:41 字數 2947 閱讀 3427

作業系統是緊貼硬體之上,所有其他軟體之下(是其它軟體的環境),用來管理硬體(使cpu、i/o裝置和儲存空間能夠有效利用,管理分配軟硬體資源,合理組織計算機工作流程(作業管理,程序管理)),實現使用者介面(彌補硬體系統的型別和數量的差別)。將覆蓋了軟體的機器稱為擴充機器或虛擬機器,因此,os是擴充套件機/虛擬機器

2、管理硬體資源:處理器管理(cpu)、儲存器管理(內外存)、i/o管理、檔案管理。

管理內容:資源當前狀態(數量的使用情況)、資源的分配、**、訪問操作,相應管理策略(包括使用者許可權)

3、使用者介面

--使用者使用os的方式,也就是通過作業系統來管理檢視硬體資源的方式有:命令列cmd(命令介面)、選單式、命令指令碼式,這些方式都是要通過圖形使用者介面實現(圖形、視窗等)

--程式設計師使用os的方式,也就是程式設計師編寫程式的時候用到檔案資源時,用到的是:系統呼叫(程式介面,形式上類似於過程呼叫,在應用程式設計中使用)。

4、os的基本特徵:併發性(併發應區別於並行,併發指的是同一時間段內發生,而並行指的是同一時刻發生。在多道程式處理時巨集觀上併發,微觀上交替並行(單處理器情況),程式的靜態實體是可執行的檔案也就是要使用的資源,動態實體是程序或稱為任務,併發指的是程序或執行緒的併發)

共享性(這裡的共享指的是系統中的資源可供記憶體中的多個併發執行的程序(執行緒)共同使用。從這裡就可以看出os併發和共享的特徵是相互依存的。因資源屬性不同,對資源共享的方式也不同,分為互斥共享(音訊裝置,印表機)、同時訪問(可重入**,磁碟檔案))

非同步性 (不確定性,程序的執行順序和執行時間的不確定性)

5、關於作業系統的執行環境(也就是cpu的狀態:核心態和使用者態)

特權指令:為編制系統管理程式專門設定的,只有作業系統才能使用,如果使用者誤用這些特權指令,會被看作非法指令而引起故障中斷。

以上這些管理硬體裝置的指令只能作業系統通過系統呼叫來使用。

為了讓cpu知道當前執行的指令是否應該被執行,或者讓作業系統知道哪些指令是應該被執行的,我們把cpu分為兩個狀態,目態(又稱使用者態,普態;較低的特權級別,程式執行時不可使用特權指令,i/o指令,時鐘設定,中斷機制,系統管理等)和管態(又稱核心態,核心態,系統態,特權態;執行系統管理程式,可以使用特權指令)

現在問題來了,cpu是如何判斷使用者程式和系統程式從而確定當前所處的狀態的呢

根據程式狀態字psw(如進製標誌位(cf)、溢位標誌位(of)、結果正負標誌位(sf)、結果是否為0標誌位(zf)、奇偶標誌位(pf)這些都是反映指令執行結果的各種狀態資訊,稱為狀態標誌,還有中斷標誌位(if),cpu的工作狀態位(核心態還是使用者態)等這些存放控制資訊稱為控制狀態)記錄cpu的執行模式和狀態資訊,

還有乙個問題是使用者態和核心態這兩個狀態之間是如何轉變的,

核心態到使用者態直接修改psw就可以,

使用者態到核心態因為使用者不能修改psw,因此只能通過系統呼叫(本質上也是利用訪管指令)和訪管指令 採用中斷機制來實現

6、中斷與異常

中斷指的是程式執行過程中,當發生某個事件時,中止cpu上現行程式的執行,引出處理該事件的程式這樣乙個執行過程。

根據中斷性質和啟用手段分為:

強迫性中斷事件(機器故障中斷、程式性中斷、外部中斷、輸入輸出中斷

自願性中斷事件(例如執行某段程式產生缺頁時將會中斷,這時要等待作業系統去外存找到該頁調入記憶體)。

外中斷(中斷):來自處理器和主存之外的中斷,包括:電源故障中斷、時鐘中斷、控制台中斷、i/o中斷。不同的中斷有不同的中斷優先順序,處理高一級中斷時,往往會遮蔽部分或全部低階中斷。

內中斷(異常):來自處理器和主存內部的中斷,包括:通路效驗錯、主存奇偶錯、非法操作碼、位址越界、頁面失效、除錯指令、訪管中斷、算術操作溢位等各種程式性中斷。異常是不能被遮蔽的,一旦出現應立即響應並加以處理。

中斷和異常的區別:

中斷是由與現行指令無關的中斷訊號觸發的(非同步的),等現行指令執行完後再去響應它,中斷的發生與cpu所處的狀態(使用者態還是核心態)無關。中斷處理程式提供的服務不是為當前程序所需的,如時鐘中斷、硬碟讀寫服務請求中斷。

異常是由處理器正在執行現行指令而引起的,一條指令執行期間允許響應異常,異常處理程式為當前程序服務。異常包括很多方面,有出錯(fault),也有陷入(trap).

硬中斷:中斷和異常要通過硬體設施來產生中斷請求。

軟中斷:不必由硬體發訊號而引發,而是利用軟體方式進行模擬,實現巨集觀上的非同步執行效果。

軟中斷是由核心或程序對某個程序發出的中斷訊號,可看作核心與程序或程序與程序直接用來模擬硬中斷的一種訊號通訊方式。

中斷處理程式的主要任務:處理中斷事件、恢復正常操作。不同的中斷源對應不同的中斷處理程式,所以快速找到中斷處理程式的入口位址是乙個關鍵的問題,中斷處理程式主要做四項工作:

作業系統(一)概述

學習資料 作業系統 清華大學出版社 2012 一 功能 1.管理系統的各個部件,使它們能夠正常運轉 2.給上層的應用軟體提供乙個易於理解和程式設計的介面 二 角色 對於作業系統的設計者,作業系統是系統資源的管理者 如何管理cpu 記憶體 i o裝置等系統部件 對於應用程式開發人員,作業系統是一組抽象...

通過Linux理解作業系統(一) 概述

通過linux理解作業系統 一 概述 用了那麼多年電腦,作業系統從winxp vista 再到win7 然後是現在用的ubuntu 這麼長的時間裡,一直沒有搞明白這作業系統是個什麼東西,為什麼這麼神奇,只要點一點,按一按,那些一塊一塊的硬體就可以完成我們的工作。直到學了作業系統這門課程,才開始有點朦...

作業系統總結一概述

作業系統是指控制和管理整個計算機系統硬體和軟體資源,並合理的組織和排程計算機的資源分配,以提供給使用者和其他軟體方便的介面和環境的程式集合 程式介面 程式設計人員可以使用它們來請求作業系統服務,有一組系統呼叫命令組成 核心包括 系統呼叫類指令和一些對時鐘管理 中斷機制 原語 資料結構及處理的操作指令...