JavaShuo
欄目
標籤
【重學計算機】操做系統D2章:處理器管理
時間 2019-12-08
標籤
重學計算機
系統
d2
處理器
管理
简体版
原文
原文鏈接
1. 指令與處理器模式
算法
指令執行週期
:取指、譯碼、執行
指令分類
(根據權限)
特權指令
:只能被操做系統內核使用(啓動IO,置PC值)
非特權指令
:全部程序都能使用
處理器模式
:
共有四種
:0內核模式,1系統調用,2共享庫程序,3用戶模式
通常來講
:只有0內核模式(能執行所有指令)和3用戶模式(只能執行非特權指令)
模式切換
:
用戶模式 --> 內核模式(系統調用、異常、響應中斷)
內核模式 --> 用戶模式(中斷返回指令)
2. 中斷
數據結構
概念:
操做系統是
中斷驅動
的。即
中斷是激活操做系統的惟一方式
廣義中斷
:中止CPU正在執行的進程,轉而執行中斷處理程序,處理完後返回原進程或調度新進程
狹義中斷
:源於處理器以外的中斷事件,IO中斷、時鐘中斷、外部信號中斷
中斷源:
處理器硬件故障中斷事件
:內存故障
程序性中斷事件
:除0異常、缺頁異常
自願性中斷事件
:系統調用
IO中斷事件
:IO完成
外部中斷事件
:鼠標點擊
中斷系統:
實現
:硬件完成中斷響應,軟件完成中斷處理
中斷裝置
:
處理器外中斷
:由中斷控制器實現
處理器內中斷(陷阱)
:由指令控制邏輯實現
系統調用(系統陷阱)
:執行陷入指令時直接觸發,即系統陷阱
中斷處理流程
多中斷處理
:中斷屏蔽、中斷優先級、中斷嵌套
3. 進程
多線程
進程
:操做系統進行資源分配和調度的獨立單位
進程解剖
:OS管理進程的數據結構P + 內存代碼 + 內存數據 + 通用寄存器R + PSW
進程狀態
:
進程數據
:
進程控制塊PCB
:是OS用於記錄進程狀態和環境信息的數據結構
標識信息
:進程標識(進程標識號、進程組標識號)
現場信息
:用戶可見寄存器內容、控制/狀態寄存器內容、棧指針內容
控制信息
:進程調度信息、進程組成信息、隊列指引元、通訊相關、進程特權信息、處理器使用信息、資源清單信息
進程映像
:某一時刻進程的內容及執行狀態集合
進程控制塊、進程程序塊、進程數據塊、核心棧
進程上下文
:進程執行的環境支持(CPU現場、Cache中的執行信息)
用戶級、寄存器級、系統級
進程的管理
進程實現的隊列模型
進程控制流程
進程建立
:進程表增長一項,申請PCB並初始化,生成標識,創建映像,分配資源,移入就緒隊列
進程撤銷
:從隊列中移除,歸還響應資源。。。
進程阻塞
:保存現場,修改PCB,移入等待隊列
進程喚醒
:從等待隊列移出,修改PCB,進入就緒隊列
進程掛起
:修改進程狀態並出入相關隊列,收回內存等資源送至對換區
進程激活
:分配內存,修改狀態並出入相關隊列
原語
概念
:由若干指令構成的完成某種特定功能,有原子性
應用
:修改OS核心數據結構(進程表、PCB池)
進程切換與模式切換
流程
: 倆進程上下文切換(保存被中斷的上下文、進程調度、恢復待運行的上下文)
模式切換
:用戶態到內核態這種。進程切換必須在內核態完成,因此必須經理模式切換
4. 線程
spa
多線程技術:
一個進程內有多個線程
思路:
將進程的兩個功能「獨立分配資源」和「調度執行」功能分開
分類:
KLT:
內核級多線程
ULT:
用戶級別多線程
多線程實現的混合策略
一個ULT綁定多個KLT
5. 處理器調度
操作系統
處理器調度的層次:
高級、中級、低級
處理器調度算法
原則
:資源利用率、響應時間、週轉時間(進入系統到出系統時間)、吞吐量(單位時間處理進程數)、公平性
算法
:優先數算法、時間片輪轉、分級調度算法、彩票算法
相關文章
1.
【重學計算機】操做系統D3章:存儲管理
2.
【重學計算機】操做系統D4章:設備管理
3.
【重學計算機】操作系統D3章:存儲管理
4.
【重學計算機】操做系統D1章:計算機操做系統概述
5.
【重學計算機】操做系統D5章:文件系統
6.
第九章—單處理器調度【計算機操作系統】
7.
操作系統 第2章 處理機管理 (學習筆記)
8.
計算機操做系統之存儲器管理
9.
計算機系統012 - 操做系統以內存管理
10.
計算機操做系統原理
更多相關文章...
•
操作系統(OS)平臺 統計
-
瀏覽器信息
•
錯誤處理
-
RUST 教程
•
Docker容器實戰(七) - 容器眼光下的文件系統
•
Docker 清理命令
相關標籤/搜索
處理系統
系統管理
計算機操做系統
操做系統
操做系統原理
LVS管理系統
計算機系統
重學計算機
處理器
微處理器
MySQL教程
瀏覽器信息
網站主機教程
計算
文件系統
算法
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
Duang!超快Wi-Fi來襲
2.
機器學習-補充03 神經網絡之**函數(Activation Function)
3.
git上開源maven項目部署 多module maven項目(多module maven+redis+tomcat+mysql)後臺部署流程學習記錄
4.
ecliple-tomcat部署maven項目方式之一
5.
eclipse新導入的項目經常可以看到「XX cannot be resolved to a type」的報錯信息
6.
Spark RDD的依賴於DAG的工作原理
7.
VMware安裝CentOS-8教程詳解
8.
YDOOK:Java 項目 Spring 項目導入基本四大 jar 包 導入依賴,怎樣在 IDEA 的項目結構中導入 jar 包 導入依賴
9.
簡單方法使得putty(windows10上)可以免密登錄樹莓派
10.
idea怎麼用本地maven
本站公眾號
歡迎關注本站公眾號,獲取更多信息
相關文章
1.
【重學計算機】操做系統D3章:存儲管理
2.
【重學計算機】操做系統D4章:設備管理
3.
【重學計算機】操作系統D3章:存儲管理
4.
【重學計算機】操做系統D1章:計算機操做系統概述
5.
【重學計算機】操做系統D5章:文件系統
6.
第九章—單處理器調度【計算機操作系統】
7.
操作系統 第2章 處理機管理 (學習筆記)
8.
計算機操做系統之存儲器管理
9.
計算機系統012 - 操做系統以內存管理
10.
計算機操做系統原理
>>更多相關文章<<