2.1前趨圖和程序執行#
前趨圖##
指一個有向無循環圖,可記為DAG,用于進程之間執行的先后順序
程序順序執行##
程序并發執行##
只有在不存在前趨關系的程序之間才有可能并發執行,否則無法并發執行
雖然可以提高吞吐量和資源利用率,但由于它們共享系統資源,以及它們為完成同一項任務而相互合作,致使這些并發執行的程序之間將形成相互制約的關系
特性:
1.間斷性 執行——暫停——執行
2.失去封閉性
3.不可再現性
2.2進程的描述#
定義##
進程控制塊,系統用PCB描述進程的基本情況和活動過程,今兒控制和管理進程。由程序段、相關數據段和PCB三部分構成了進程實體簡稱進程
定義:進程是進程實體的運行過程,是系統進行資源分配和調度的獨立單位
特性##
1.動態性“它由創建而產生,由調度而執行,由撤銷而消亡”,進程實體是有一定的生命周期的,但是程序只是一組有序指令的集合,并存放于某種介質上
2.并發性
3.獨立性
4.異步性
進程的基本狀態及轉換##
進程的三種基本狀態##
1.就緒狀態
2.執行狀態
3.阻塞狀態
三種狀態的轉換###
創建狀態和終止狀態###
掛起操作和進程狀態的轉換##
引入掛起原語操作后的三個進程狀態的轉換
1.活動就緒——靜止就緒
2.活動阻塞——靜止阻塞
3.靜止就緒——活動就緒
4.靜止阻塞——活動阻塞
進程管理中的數據結構##
進程控制塊PCB的作用
1.作為獨立運行基本單位的標志
2.能實現間斷性運行方式
3.提供進程管理所需要的信息
4.提供進程調度所需要的信息
5.實現與其他進程的同步與通信
進程控制塊中的信息
1.進程標識符
2.處理機狀態
處理機狀態信息也稱為處理機的上下文,主要是由處理機的各種寄存器中的內容組成的
3.進程調度信息
1)進程狀態
2)進程優先級
3)進程調度所需的其他信息
4)事件
4.進程控制信息
1)程序和數據的地址
2)進程同步和通信機制
3)資源清單
4)鏈接指針
進程控制塊的組織方式
1.線性方式
2.鏈接方式
2.3進程控制#
操作系統內核##
進程的創建##
進程的終止##
進程的阻塞與喚醒##
進程的掛起與激活##
2.4進程同步#
進程同步的基本概念##
硬件的同步機制##
信號量機制##
信號量的應用##
管程機制##
2.5經典進程的同步問題#
生產者——消費者問題##
哲學家進餐問題##
讀者——寫者問題##
2.6進程通信#
進程通信的類型##
四大類:共享存儲器系統、管道通信系統、消息傳遞系統以及客戶機-服務器系統
消息傳遞通信的實現方式##
直接消息傳遞系統實例##
2.7線程的基本概念#
線程的引入##
線程——作為調度和分派的基本單位