實驗3程序管理

2022-09-19 04:33:02 字數 796 閱讀 8029

一. 實驗目的:

(1)加深對程序概念的理解,明確程序和程式的區別。

(2)進一步認識併發執行的實質。

(3)分析程序競爭資源現象,學習解決程序互斥的方法。

二. 實驗內容:

1、程序建立;2、程序控制。

三. 實驗作業:

(1)程序的建立

除錯下面源程式:系統呼叫fork()建立兩個子程序,當此程式執行時,在系統中有乙個父程序和兩個子程序活動。讓每乙個程序在螢幕上顯示乙個字元:

父程序顯示字元「a」;子程序分別顯示字元「b」和字元「c」。試觀察紀錄螢幕上的顯示結果,並分析原因。

〈程式〉源**:

#include<>

main()

}《執行結果》:

結果分析:

原因:(2)程序的控制

1、除錯下面程序控制源程式:試觀察紀錄螢幕上的顯示結果,並分析原因。

〈程式1〉源**

#include<>

main()

else

else}}

〈執行結果〉:

結果分析:

原因:2、修改上面源**,將每個程序輸出乙個字元改為每個程序輸出一句話,在觀察程式執行時螢幕出現的現象,並分析原因。如果在程式中使用呼叫lockf()來給每乙個子程序加鎖,可以實現程序之間的互斥,觀察並分析出現的現象。

〈程式**〉

《執行結果〉:

結果分析:

原因:電腦科學與技術系

實驗報告

課程名稱

實驗名稱

班級學號

姓名2023年月日

第3章程序管理 第3講

作業系統 主講人 黃伯虎 上一講內容回顧 程序間的相互作用 基本概念 同步 互斥 臨界資源 臨界區帶來的問題 解決方案 鎖變數法 測試和設定指令 訊號量和p v操作 訊號量的物理含義 s 0 表示可用資源數目。s 0 表示沒有資源可用。s 0 其絕對值表示因為此訊號量而被阻塞的程序數。p ss為訊號...

核心實驗一程序管理

實驗1 程序管理 一 實驗目的 1 加深對程序概念的理解,明確程序和程式的區別。2 進一步認識併發執行的實質。3 分析程序爭用資源的現象,學習解決程序互斥的方法。4 了解linux系統中程序通訊的基本原理。二 實驗預備知識 1 閱讀linux的sched.h原始碼檔案,加深對程序管理概念的理解。2 ...

程序管理模擬實驗報告

實驗三程序管理模擬實驗 關鍵問題 閱讀後面的c語言例項,修改程式,使其優先數在執行期間可以變化 動態優先數 例如 當某程序被時間片中斷次數增加到一定數目時,提高其優先權。設計思路 首先在程序控制塊中增加乙個記錄程序被中斷的次數的整形變數sum 然後在初始化函式中對它初始化賦值為0 然後在block ...