基礎: 程式描述及控制
策略: 程式排程
實現: 互斥與同步
避免: 死鎖和飢餓
解決: 幾個經典問題
關於: 程式通訊
程式順序執行
- 程式:原始碼程式、目標程式和可執行程式;
- 程式執行:編輯、編譯、連結、執行
- 程式的結構:順序結構、分支結構和迴圈結構
- 程式順序執行的特徵:順序性、封閉性、可再現性
程式併發執行
- 多道程式設計技術:多個程式併發執行
- 程式併發執行時的特徵:間斷性、非封閉性、不可再現性
- 協調各程式的執行順序
例如,當輸入的資料還沒全部輸入記憶體時,計算必須等待。 - 多個執行程式共享資源,程式之間可能會影響,互相影響輸出結果
- 選擇哪些、多少個程式進入記憶體執行
- 記憶體中的執行程式水仙執行,
- 記憶體如何有效分配
- 定義:可併發執行的程式,在一個資料集合上的執行過程
- 申請/擁有資源 - 排程(執行緒)
- 程式:靜態概念,是指令和資料的集合,可長期儲存
- 程式和程式對應的關係
- 一個程式可以對應一個程式和多個程式
- 一個程式可以對應一個程式,或者一段程式
- 動態性
- 併發性
- 獨立性
- 非同步性
- 增加了空間開銷:為程式簡歷資料結構
- 額外的時間開銷:管理和協調、跟蹤、填寫和更新有關的資料結構、切換程式、保護現場
- 更難控制:
- 協調多個程式競爭和共享資源如何預防
- 解放多個程式因為競爭資源而出現的故障
- 處理機的競爭尤為突出
- 組成(程式映像):程式、資料集合、程式控制卡(PCB(process Control Block))
- PCB是程式存在的唯一標誌。建立程式時,建立PCB;程式結束時,系統將撤銷其PCB。
- 程式標識資訊:程式的內部和外部識別符號
- 處理機狀態資訊:通用暫存器值、指令計數器值、程式狀態字PSW值、使用者棧指標值
- 程式排程資訊:程式狀態、程式優先權、程式排程的其他資訊
- 其他資訊:程式及資料地址、程式同步和通訊機制、資源清單、連結指標
本作品採用《CC 協議》,轉載必須註明作者和本文連結