??操作系統(tǒng)(Operating System, OS)是指控制和管理整個計算機系統(tǒng)的硬件和軟件資源,并合理地組織調(diào)度計算機的工作和資源的分配;以提供給用戶和其他軟件方便的接口和環(huán)境;它是計算機系統(tǒng)中最基本的系統(tǒng)軟件。
10年積累的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有秀山土家族苗族免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。1.2 四大特征并發(fā)、共享、虛擬、異步。
1. 并發(fā)只在同時發(fā)生,微觀上是交替發(fā)生。
2. 并發(fā) 是指同一時間間隔內(nèi)發(fā)生,并行 是指同一時刻發(fā)生。
3. 單核cpu同一時刻只能執(zhí)行一個程序,各程序只能并發(fā)執(zhí)行。
?多核cpu同一時刻可同時執(zhí)行多個程序,多個程序可并行執(zhí)行。
4. 并發(fā)與共享是兩個最基本的特征,二者互為存在條件。
5. 共享 分為:互斥共享方式和同時共享方式:
?互斥共享方式:在一段時間內(nèi)只允許一個進程訪問該資源。
?同時共享方式:允許在一段時間內(nèi)有多個進程同時訪問。
6. 虛擬技術(shù) 分為:空分復(fù)用技術(shù)(如虛擬存儲器技術(shù))和時分復(fù)用技術(shù)(如虛擬處理器技術(shù))
作為系統(tǒng)資源的管理者
提供功能:處理機管理、存儲器管理、文件管理、設(shè)備管理
目標:安全、高效
向上層提供方便易用的服務(wù)
給 一般用戶直接使用的接口:
???圖形接口:如 GUI
???命令接口:聯(lián)機命令接口、脫機命令接口(區(qū)別在于一行和一堆)
給 應(yīng)用程序/編程人員 使用的接口:
???程序接口(系統(tǒng)調(diào)用),即通過程序間接使用。
最接近硬件的軟件
?
??
??單道批處理與多道批處理的區(qū)別:
??
??注:多道批處理的并行,對于單核cpu指的是I/O與CPU并行。
兩種指令:特權(quán)指令 和 非特權(quán)指令
操作系統(tǒng)內(nèi)核作為 “管理者”,有時會讓CPU執(zhí)行一些特權(quán)指令,這些指令只允許 “管理者” 來執(zhí)行。
常見的特權(quán)指令:
?① 開中斷指令、關(guān)中斷指令
?② 寫時鐘指令(置時鐘指令)
?③ 寫入/輸出指令(I/O指令)
?④ 寫 PSW 寄存器指令(訪問程序狀態(tài)指令)
?⑤ 內(nèi)存清零指令
兩種處理器狀態(tài):內(nèi)核態(tài) 和 用戶態(tài)
處于內(nèi)核態(tài)時,說明正在運行的是內(nèi)核程序,即可執(zhí)行特權(quán)指令,又可執(zhí)行非特權(quán)指令。
處于用戶態(tài)時,說明正在運行的是應(yīng)用程序,只能執(zhí)行非特權(quán)指令。
其中,內(nèi)核態(tài)又稱目態(tài),內(nèi)核態(tài)又稱管態(tài)。
內(nèi)核態(tài)→用戶態(tài):一條修改 PSW 的特權(quán)指令。
用戶態(tài)→內(nèi)核態(tài):由中斷引起,硬件自動完成。觸發(fā)中斷信號意味著 OS 將強行奪回CPU的使用權(quán)。
???如:① 請求系統(tǒng)內(nèi)核服務(wù),CPU在用戶態(tài)下執(zhí)行陷入指令,引發(fā)中斷,意味著應(yīng)用程序主動將 CPU 控制權(quán)還給操作系統(tǒng)。
?????② 試圖在用戶態(tài)下執(zhí)行特權(quán)指令,引發(fā) OS 變成內(nèi)核態(tài),奪回 CPU 使用權(quán)等
注:陷入指令 = 訪管指令 = trap指令
兩種程序:內(nèi)核程序 和 應(yīng)用程序
三者關(guān)系:操作系統(tǒng)的內(nèi)核程序,即可運行特權(quán)指令,又可運行非特權(quán)指令,程序運行在核心態(tài)。普通應(yīng)用程序只能運行非特權(quán)指令,運行在用戶態(tài)。
注:中斷處理程序一定是內(nèi)核程序,其運行在內(nèi)核態(tài)。
中斷是讓操作系統(tǒng)奪回CPU使用權(quán)的唯一途徑。
中斷的分類:
注:故障(Fault)和自陷(Trap)統(tǒng)稱為 軟件中斷,終止(Abort)是 硬件中斷。
中斷機制的基本實現(xiàn)原理:
1. 檢查中斷信號:
???內(nèi)中斷:CPU在執(zhí)行指令時,會檢查是否有異常發(fā)生。
???外中斷:每個指令周期末尾,CPU都會檢查是否有外中斷信號需處理。
2. 找到相應(yīng)的中斷處理程序:
???硬件向量法(中斷向量法)、軟件查詢法
中斷處理時保存的數(shù)據(jù):
1. 硬件負責(zé):PC、PSW
2. OS負責(zé):其他有 “必要” 保存的數(shù)據(jù)(如:通用寄存器)、中斷屏蔽字
????? 若此類寄存器在中斷處理中不使用,則不用保存。
中斷處理完整流程:
① 當(dāng) CPU 檢測到中斷信號后,由硬件自動保存被中斷程序的斷點(即程序計數(shù)器 PC)。
② 硬件找到該中斷信號對應(yīng)的中斷向量,中斷向量指明中斷服務(wù)程序入口地址(各中斷向量統(tǒng)一存放在中斷向量表中,該表由操作系統(tǒng)初始化)。
③ 開始執(zhí)行中斷服務(wù)程序,保存 PSW、中斷屏蔽字、各通用寄存器的值,并提供與中斷信號對應(yīng)的中斷服務(wù),中斷服務(wù)程序?qū)儆诓僮飨到y(tǒng)的內(nèi)核。
操作系統(tǒng)完成: 提供中斷服務(wù)、初始化中斷向量表、保存中斷屏蔽字(來源:20年408第25題)
??系統(tǒng)調(diào)用是操作系統(tǒng)給 編程人員/應(yīng)用程序 使用的接口,可以理解為一種可供應(yīng)用程序調(diào)用的特殊函數(shù),應(yīng)用程序可以通過系統(tǒng)調(diào)用來請求獲得操作系統(tǒng)內(nèi)核的服務(wù)。
系統(tǒng)調(diào)用與庫函數(shù)的區(qū)別:
庫函數(shù)有時會對系統(tǒng)調(diào)用進行封裝,以隱藏系統(tǒng)調(diào)用的一些細節(jié),如“創(chuàng)建一個新文件”的函數(shù)。但也存在不涉及系統(tǒng)調(diào)用的庫函數(shù),如“取絕對值”的函數(shù)。編程人員調(diào)用庫函數(shù),會使得編程更加方便。
涉及系統(tǒng)調(diào)用的功能:
應(yīng)用程序通過系統(tǒng)調(diào)用請求操作系統(tǒng)的服務(wù)。而系統(tǒng)中的各種共享資源都由操作系統(tǒng)內(nèi)核統(tǒng)一掌管,因此凡是與共享資源有關(guān)的操作(如存儲分配、I/O操作、文件管理等),都必須通過系統(tǒng)調(diào)用的方式向操作系統(tǒng)內(nèi)核提出服務(wù)請求,由操作系統(tǒng)內(nèi)核代為完成。這樣可以保證系統(tǒng)的穩(wěn)定性和安全性,防止用戶進行非法操作。
系統(tǒng)調(diào)用過程:
過程: 傳遞系統(tǒng)調(diào)用參數(shù) → 執(zhí)行陷入指令(用戶態(tài))→ 執(zhí)行相應(yīng)的內(nèi)請求核程序處理系統(tǒng)調(diào)用(內(nèi)核態(tài))→ 返回應(yīng)用程序
注意: ①陷入指令是在用戶態(tài)執(zhí)行的,執(zhí)行陷入指令之后立即引發(fā)一個內(nèi)中斷,使CPU進入核心態(tài)
??? ②發(fā)出系統(tǒng)調(diào)用請求是在用戶態(tài),而對系統(tǒng)調(diào)用的相應(yīng)處理在核心態(tài)下進行
??? ③陷入指令 = 訪管指令 = trap指令
操作系統(tǒng)的內(nèi)核
注:① 宏內(nèi)核,又名:大內(nèi)核、單內(nèi)核
??② 操作系統(tǒng)內(nèi)核需要運行在內(nèi)核態(tài)
??③ 操作系統(tǒng)的非內(nèi)核功能運行在用戶態(tài)
操作系統(tǒng)內(nèi)核功能
分層法是將操作系統(tǒng)分為若干層,最底層是硬件,最高層是用戶接口,煤層智能調(diào)用緊鄰它的低層的功能和服務(wù)(單向依賴)。
??
優(yōu)點: ①便于調(diào)試和驗證,自底向上逐層調(diào)試驗證。
??? ② 易擴充和易維護,各層之間調(diào)用接口清晰固定。
缺點: ① 僅可調(diào)用相鄰低層,難以合理定義各層的邊界。
??? ②效率低,不可跨層調(diào)用,系統(tǒng)調(diào)用執(zhí)行時間長。
模塊化是將操作系統(tǒng)按功能劃分為若干個具有一定獨立性的模塊,各模塊之間相互協(xié)作。
內(nèi)核 = 主模塊 + 可加載內(nèi)核模塊
主模塊:只負責(zé)核心功能,如:進程調(diào)度、內(nèi)存管理等
可加載內(nèi)核模塊:可以動態(tài)加載新模塊到內(nèi)核而無需重新編譯整個內(nèi)核,如:設(shè)備驅(qū)動程序
??
優(yōu)點: ① 模塊間邏輯清晰易于維護,確定模塊間接口后即可多模塊同時開發(fā)。
??? ②支持動態(tài)加載新的內(nèi)核模塊(如:安裝設(shè)備驅(qū)動程序、安裝新的文件系統(tǒng)模塊到內(nèi)核),增強OS適應(yīng)性。
??? ③任何模塊都可以直接調(diào)用其他模塊,無需采用消息傳遞進行通信,效率高。
缺點: ① 模塊間的接口定義未必合理、實用。
??? ② 模塊間相互依賴,更難調(diào)試和驗證。
內(nèi)核負責(zé)進程調(diào)度、進程通信等功能,外核負責(zé)為用戶進程分配未經(jīng)抽象的硬件資源,且由外核負責(zé)保證資源使用安全。
優(yōu)點: ①外核可直接給用戶進程分配 “不虛擬、不抽象” 的硬件資源,使用戶進程可以更靈活的使用硬件資源。
??? ②減少了虛擬硬件資源的 “映射層”,提升效率。
缺點: ① 降低了系統(tǒng)的一致性。
??? ② 使系統(tǒng)變得更加復(fù)雜。
引導(dǎo)流程:
① 激活的 CPU 讀取 ROM 中的自舉程序,開始執(zhí)行 BIOS 程序中的指令,并開始進行硬件自檢。
② 將磁盤的第一塊,主引導(dǎo)記錄 MBR 讀入內(nèi)存,執(zhí)行磁盤引導(dǎo)程序,其會掃描分區(qū)表,得知活動分區(qū)位置。
③ 從活動分區(qū)(又稱主分區(qū),即安裝了操作系統(tǒng)的分區(qū) C盤)讀入分區(qū)引導(dǎo)記錄 PBR,執(zhí)行其中的程序,負責(zé)找到 “啟動管理器”。
④ 從根目錄下找到完整的操作系統(tǒng)初始化程序(即 啟動管理器)并執(zhí)行,完成開機的一系列動作。
注:操作系統(tǒng)最終被加載到 RAM 中。
理解: 第一類操作系統(tǒng)直接運行在硬件之上,第二類操作系統(tǒng)類似在 win 系統(tǒng)下安裝的 VMware 軟件。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧