文档详情

(os实验指导.doc

发布:2017-01-18约5.12万字共51页下载文档
文本预览下载声明
计算机操作系统 实 验 指 导 书 2011年9月 目 录 实验一 进程管理 1 实验二 进程调度 4 实验三 存储管理 15 实验四 文件系统设计 23 实验五 操作系统接口 43 实验一 进程管理 1.目的和要求 加强对进程概念的理解。 2.实验内容 至少要有:创建新的进程;查看运行进程;换出某个进程;杀死运行进程以及进程之间通信等功能。 3.实验环境 ①PC兼容机 ②Windows、DOS系统 ③TC语言 4.实验提示 PCB结构通常包括以下信息:进程名,进程优先数,轮转时间片,进程所占用的CPU时间,进程的状态,当前队列指针等。可根据实验的不同,PCB结构的内容可以作适当的增删。 主体程序 #include conio.h #include stdio.h #include stdlib.h struct jincheng_type { int pid; int youxian; int daxiao;……… }; struct jincheng_type neicun[20]; int shumu=0,pid_l; main() { int n,m,i; char a; n=1; while(n==1) { clrscr(); printf(\n********************************************); printf(\n* 进程演示系统 *); printf(\n********************************************); printf(\n 1.创建新的进程 2.查看运行进程 ); printf(\n 3.换出某个进程 4.杀死运行进程 ); printf(\n 5.进程之间通信 6.退出系统 ); printf(\n********************************************); printf(\n请选择(1~6)); a=getche(); switch(a) { case1: create( ); break; case2: run( ); break; case3: huanchu(); break; case4: kill( ); break; case5: tongxun( ); break; case6: exit(0); default: n=0; } } } create( ) /* 创建一个进程的示例(不完整的程序) */ { if(shumu=20) { printf(\n内存已满,请先结束或换出进程\n); } else { printf(\n请输入新进程的pid\n); scanf(%d,neicun[shumu-1].pid); printf(\n请输入新进程的优先级\n); scanf(%d,neicun[shumu-1].youxian); printf(\n请输入新进程的大小\n); scanf(%d,neicun[shumu-1].daxiao); shumu++; } } 5.实验运行结果 ******************************************** * 进程演示系统 * ******************************************** 1.创建新的进程 2.查看运行进程 3.换出某个进程 4.杀死运行进程 5.进程之间通信 6.退出系统 ********************
显示全部
相似文档