最近在寫作業系統的實驗報告,順帶寫篇部落格~
題目:用c++程式設計來模擬 程序狀態的轉換
備註都在上面,一看就懂哈~
#include
#include
#include
struct jincheng_type
;struct jincheng_type neicun[20];//記憶體容量,最大20個程序
int shumu = 0, guaqi = 0, pid, flag = 0;
/***********建立新的程序***********/
void create()
printf("\n請輸入新程序pid\n");
scanf("%d", &(neicun[i].pid));
for(int j = 0; j < i; j++)
if(neicun[i].pid == neicun[j].pid)
printf("\n請輸入程序優先順序\n");
scanf("%d", &(neicun[i].youxian));
printf("\n請輸入程序大小\n");
scanf("%d", &(neicun[i].daxiao));
printf("\n請輸入新程序的內容\n");
scanf("%s", &(neicun[i].info));
neicun[i].zhuangtai = 1;
shumu++;
}}/***********檢視執行程序***********/
void run()
}if(!flag)
}/***********喚出某個程序***********/
void huancun()
printf("\n輸入喚出程序的id值");
scanf("%d", &pid);
for(int i = 0; i < 20; i++)
else
if(neicun[i].zhuangtai == 0)
printf("\n要喚出的程序不存在\n");
else
printf("\n要喚出的程序已被掛起\n");
flag = 1;
break;}}
if(flag == 0)
printf("\n要喚出的程序不存在\n");
}/***********殺死執行程序***********/
void kill()
printf("\n輸入殺死程序的id值");
scanf("%d", &pid);
for(int i = 0; i < 20; i++)
else
if(neicun[i].zhuangtai == 0)
printf("\n要殺死的程序不存在\n");
else
printf("\n要殺死的程序已被掛起\n");
flag = 1;
break;}}
if(!flag)
printf("\n要殺死的程序不存在\n");
}/***********喚醒某個程序***********/
void huanxing()
printf("\n輸入pid\n");
scanf("%d", &pid);
for(int i = 0; i < 20; i++)
else
if(neicun[i].zhuangtai == 0)
printf("\n要喚醒的程序不存在\n");
else
printf("\n要喚醒的程序已被掛起\n");
break;}}
if(flag)printf("\n要喚醒的程序不存在\n");
}int main()
flag = 0;}}
執行結果就是這樣,之後我們再來對其進行各種操作,請自行嘗試,這裡不做過多介紹~
python模擬程序狀態
1.引入外部變數 from transitions import machine 2.定義乙個我自己的屬性 class xqc object 3.建立物件及定義 states new ready waiting running terminated 4.定義狀態轉移 transitions 5.初始...
程序的狀態
三態模型 在多道程式系統中,程序在處理器上交替執行,狀態也不斷地發生變化。程序一般有3種基本狀態 執行 就緒和阻塞。1 執行 當乙個程序在處理機上執行時,則稱該程序處於執行狀態。處於此狀態的程序的數目小於等於處理器的數目,對於單處理機系統,處於執行狀態的程序只有乙個。在沒有其他程序可以執行時 如所有...
程序的狀態
執行狀態 當乙個程序在處理機上執行時,則該程序處於執行狀態。處於次狀態的程序的數目小於等於處理器的數目,在單處理系統中,處於執行態的程序只有乙個。就緒狀態 當乙個程序獲得了除cpu以外的任何資源,一旦獲得cpu,便可立即執行,則該程序處於就緒狀態。乙個系統中處於就緒狀態的程序可能有多個,通常它們按優...