程序排程屬於低階排程,用來決定就緒佇列中的那個程序獲取處理器,然後有分派程式將執行把處理器分派給該程序的具體操作。程序排程的方式有兩個非搶占式排程和搶占式排程
1、非搶占方式(non-preemptive mode)
(1)概念 當某一程序正在處理機上執行時,即使有某個更為重要或緊迫的程序進入就緒佇列,該程序仍繼續執行,直到其完成或發生某種事件而進入完成或阻 塞狀態時,才把處理機分配給更為重要或緊迫的程序
(2) 引起程序排程的因素
正在執行的程序執行完畢, 或因發生某事件而不能再繼續執行
執行中的程序因提出i/o請求而暫停執行;
在程序通訊或同步過程中執行了某種原語操作,如wait、block、wakeup原語
(3)優點:演算法簡單,系統開銷小
缺點:緊急任務不能及時響應;短程序到達要等待長程序執行結束
適用於大多數批處理系統環境
2、搶占方式(preemptive mode)
(1)概念
當某一程序正在處理機上執行時,若有某個更為重要或緊迫的程序進入就緒佇列,則立即暫停正在執行的程序,將處理機分配給這個更為重要或緊迫的程序
(2)搶占式排程主要有以下原則
優先權原則 允許高優先權的新到程序搶占當前程序的處理機
短作業(程序)優先原則允許執行時間短的新到程序搶占當前程序的處理機
時間片原則 時間片用完後停止執行,重新進行排程,適用於分時系統
(3)優點:適於時間要求嚴格的實時系統
缺點:排程演算法複雜,系統開銷大
程序排程方式
批處理作業的四種狀態 1 提交狀態 程式設計師把已儲存作業實體的某種介質,例如,卡片 紙帶 軟盤等,提交給機房後或使用者通過終端鍵盤向計算機鍵入其作業時所處的狀態,稱為提交狀態。2 後備狀態 系統操作員把載有作業實體的某種介質,放在相應的輸入裝置上,並轉儲到計算機系統硬碟的輸入井 相應的磁碟區域專門...
程序排程的時機切換與過程排程方式
程序排程和切換程式是作業系統核心程式。請求排程的事件發生後,才可能執行程序排程程式,排程了新的就緒程序後,才會進行程序的切換。理論上這三件事情應該順序執行,但在實際設計中,作業系統核心程式執行時,若某時發生了程序排程的因素,則不一定能夠馬上進行排程與切換。不能進行程序的排程與切換的情況有以下情況 1...
程序 執行緒間的通訊方式?程序排程方法?
1.共享記憶體 可以說這是最有用的程序間通訊方式。它使得多個程序可以訪問同一塊記憶體 空間,不同程序可以及時看到對方程序中對共享記憶體中資料得更新。這種方式 需要依靠某種同步操作,如互斥鎖和訊號量等。2.訊息佇列 訊息佇列 是在訊息的傳輸過程中儲存訊息的容器。具有寫許可權得程序可 以按照一定得規則向...