多道程式

多道程式,此種設計技術是在計算機記憶體中同時存放幾道相互獨立的程式,使它們在管理程式控制下,相互穿插運行。

多道程式設計技術是在計算機記憶體中同時存放幾道相互獨立的程式,使它們在管理程式控制下,相互穿插運行。
道程序運行的特徵是:
1多道:即計算機記憶體中同時存放幾道相互獨立的程式。
2巨觀上並行:同時進入 系統的幾道程式都處於運行過程中,即它們先後開始了各自的運行,但都未運行完畢。
3微觀上串列:從微觀上看,記憶體中的多道程式輪流地或分時地占有處理機。
多道程式轉換
作業、進程調度
一、 創建作業:
作業是以檔案的方式存放在磁碟上的。在創建作業時,數據按照一定的格式寫入檔案,檔案標以相同的類型(後綴名為*.job)存放在同一路徑os\book\中。模擬運行時,程式在該路徑上自動搜尋所有的同類型(*.job)檔案,從中讀出數據,並整理出其它相應的信息,提供給調度程式使用。
下圖給出了創建作業的流程圖,它是一個單獨的單元,為了便於操作,程式將隨機模式作業創建放在統一圖形界面上操作,而指定模式由後備程式creatjob.exe在DOS模式下以文本方式創建。

創建作業有指定模式、隨機模式,對隨機模式可以在設定參數後根據設定自動生成作業檔案。檔案的格式為:命令詞、執行時間。其中命令詞定義如下:
C:在CPU上運行;
D: 程式延遲
I:接受輸入
O:程式輸出
W:程式等候
H:程式退出
作業的第一組數據不是提供給程式執行的命令行,而是一組特殊的數據,該組數據中的第一個數據表示所設定的作業優先權,用字元表示,按照字元的序號遞增比較級較高的方法來設定。“程式延遲”是指程式在CPU上的睡眠時間,是執行時間,而“程式等候”是將進程送入等候排列等候,是等候時間。這兩者是有區別的。
三、 進程調度:
前面已經講過作業調度,並簡要地介紹了作業調度與進程調度及整個程式之間的協調關係,下面我們重點來說一說進程調度的驅動作用,因為沒有這種驅動作用,程式的自動調度是不可能實現的。

從上面這幅圖可以看出,程式的驅動源是位於CPU處理單元的時間片輪轉(這是一種最簡單的進程調度策略),CPU處理單元是一個真正的模擬中央處理機的單元,所有的信息都反饋到這裡,然後由它統一控制其它各種模組,各個功能模組根據CPU處理單元傳送過來的信息,獨立實施它應該完成的動作,怎么樣?真有點DCS(集散控制系統)的味道吧!
CPU處理單元處理信息的依據是當前各個作業、進程的狀態,進程控制塊的信息和作業數據,這三個方面的內容是缺一不可的,當前各個作業、進程的狀態為它提供動作決策,進程控制塊的信息提供動作的實施方案,而作業數據則為動作的實施提供數據資源。

相關詞條

相關搜尋

熱門詞條

聯絡我們