- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
行程(process)
第三章 行程(process) 行程觀念(Process Concept) 行程排班(Process Scheduling) 行程上的操作 行程間的合作(Cooperating Processes) 行程間的通訊(Interprocess Communication) Client-Server系統的通訊 行程(process)概念 行程與程式主要的不同點: 程式是被放在外部的儲存裝置如磁碟上,而行程則被放在記憶體中。 程式在儲存裝置中是靜態的,而行程在記憶體中是動態的,它會隨著一些事件的發生而產生相對的改變。 行程指的是正在執行的程式。行程不只是程式碼 (有時也稱為本文區,text section)而已。它還包含代表目前運作的程式計數器 (Program counter)數值和處理器的暫存器內容。 行程觀念 一個作業系統執行各式程式: 批次系統(batch systems) – jobs 分時系統(Time-shared systems) – 使用者程式或or tasks 書中的job及行程(process)幾乎是互用. 行程 – 執行中的一個程式; 行程執行必須是順序執行. 一個行程包含了: 程式計數器(program counter) 堆疊(stack) 資料區(data section) 行程狀態 Process Control Block行程控制區塊(PCB) 每個行程所擁有的相關資訊. 行程狀態(Process state) 程式計數器(Program counter) CPU暫存器 CPU排程資訊 記憶體管理資訊 執行記錄資訊(Accounting information) I/O狀態資訊 Process Control Block (PCB) 行程控制區塊 行程控制區塊(PCB),儲存行程在執行時相關的資訊。 PCB 中通常包括了 行程狀態 CPU 暫存器 排程資訊 I/O 狀態 當行程進行切換時,需要將目前行程的相關資訊記錄在該行程的 PCB 中,並將另一個行程的 PCB 載入至系統中,這個動作稱為內容切換(context switch)。 CPU 在行程與行程間的切換 行程排班 多元程式規劃系統的主要目的,是隨時保有一個行程在執行,藉以提高CPU的使用率。分時系統的目的是將CPU在不同行程之間不斷地轉換,以便訣使用者可以在自己的行程執行時與它交談。 為了達到這個目的,行程排班程式(process scheduler)為CPU上執行程式選擇一個可用的行程(可能由一組可用行程)。 在單一處理器系統裏,不可能有一個以上的行程同時執行。如果有多個行程,其它的都必須在旁邊等待一直到CPU有空,才可能重新排列。 Ready Queue 及各類I/O Device Queues 行程排班的示意圖 排班者(Scheduler) 長程排班者(Long-term scheduler or job scheduler) 選擇哪一個行程應該被置入ready queue. 短程排班者(Short-term scheduler or CPU scheduler) 選擇哪一個行程應該交給CPU執行. 一個新的行程最初是置於就緒佇列中。它就一直在就緒佇列中等待,直到選來執行或被分派 (dispatched)。一旦這個行程配置CPU並且進行執行,則會有若干事件之一可能發生: 行程可發出1/0要求,然後置於一個1/0佇列中。 行程可產生出一個新的子行程並等待後者的結束。 行程可強行地移離CPU(如用中斷的結果一樣),然後放回就緒佇列中。 中程排班的加入 一個行程在它整個生命期裏將在各個不同的排班佇列間遷移。作業系統必須按排班次序從這些佇列選取行程。行程的選取將由適當的排班程式 (scheduler)來執行。 排班者 (Cont.) 短程排班者會常常被呼叫(milliseconds) ? (must be fast). 長程排班者不常被呼叫(seconds, minutes) ? (may be slow). 長程排班者控制多程式化的程度(the degree of multiprogramming). 行程可以以下擇一描述: I/O-bound process – 行程中花去的I/O時間比計算時間來得多, 許多短的CPU bursts. CPU-bound process –行程中花去的計算的時間比I/O時間來得多; 一些常非常長的CPU bursts. 內容切換Context Switch 當CPU切換到另一個行程, 系統必須儲存舊行程的狀態,然後將新行程的儲存狀態載入. Context-switch時間是耗時;當作切換時系統無法做有用的工作. 耗去的時間要看硬體的支援程度. Context-switch是一種中斷,它的處理方式與發
您可能关注的文档
最近下载
- 1.3.2空间向量运算的坐标表示(导学案)原卷版 -高二数学同步备课系列(人教A版2019选择性必修第一册).docx VIP
- 剑桥国际少儿英语KB3期末试卷.docx VIP
- 精品解析:山东省实验中学2024-2025学年高一上学期12月月考物理试题(原卷版).docx VIP
- NYT 3129-2017 棉隆土壤消毒技术规范.pdf VIP
- ddbd低温等离子体废气处理技术介绍.pdf VIP
- JTS168-2017_港口道路与堆场设计规范.pdf VIP
- KB3期末试卷(文档).doc VIP
- 和差、二倍角公式习题.doc VIP
- 基于核心素养的初中物理探究性实验教学策略研究.pdf
- 4.11三角函数和差公式练习-含答案.pdf VIP
文档评论(0)