/*
name: procnque.c 程序排程模擬實驗原始碼 儲存結構鍊錶
description:
實現乙個有 n級佇列的多級反饋佇列排程演算法。
*/#include "stdio.h"
#include
#include
#define getpch(type) (type*)malloc(sizeof(type))
#define n 3
struct pcb *ready=null,*p;
int space()
return(l);
} disp(pcb * pr) /*單個程序顯示函式*/
void printbyprio(int prio) }
check() /* 顯示所有程序狀態函式 */ */
} destroy() /*程序撤消函式(程序執行結束,撤消程序)*/
running() /* 執行函式。判斷是否完成,完成則撤銷,否則置就緒狀態並插入就緒佇列*/
if(p->rtime==p->ntime)
destroy(); /* 呼叫destroy函式*/
else }
void cteatpdisp()
/*顯示(執行過程中)增加新程序後,所有就緒佇列中的程序*/
void creatp()
}
main() /*主函式*/
printf("\n\n 程序已經完成.\n");
ch=getchar();
ch=getchar();
}實驗結果如下:
作業系統 實驗三
分析程序爭用臨界資源的現象,學習解決程序互斥的方法。linux 程序控制 lockf 利用系統呼叫lockf fd,mode,size 對指定區域 有size指示 進行加鎖或解鎖,以實現程序的同步或互斥。其中,fd是檔案描述字 mode是鎖定方式,mode 1表示加鎖,mode 0表示解鎖 size...
作業系統實驗三 (1)
作業系統課程設計 三 1 實現乙個模擬shell 編寫三個不同的程式 cmd1.c,cmd2.c,cmd3.c,每個程式輸出一句話,分別編譯成可執行檔案cmd1,cmd2,cmd3。然後再編寫乙個程式,模擬shell程式的功能,能根據使用者輸入的字串 表示相應的命令名 去為相應的命令建立子程序並讓它...
作業系統實驗
一 實驗目的 理解vi的三種執行模式及其切方法。學會使用vi的各種操作命令進行文字檔案的編輯。用vi編寫linux下c程式,會用gcc編譯。二 實驗環境 一台裝有linux的機器 這裡預設是red hat linux 9 系統裡面有gcc編譯器。三 實驗內容 寫出主要的內容 首先用合法使用者登入系統...