云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 操作系统实验六_设备管理

操作系统实验六_设备管理

  • 62 次阅读
  • 3 次下载
  • 2025/6/3 11:22:40

始地址赋给t*/

while(!(equipment[t].status==1 && equipment[t].remain==0))

t++; /*该设备类型起始地

址加一*/

equiptype[i].remain--;

/*剩余设备数减一*/ /*状态改为已分配*/ /*strcpy为字符串拷贝函

equipment[t].remain=1;

strcpy(equipment[t].jobname,J);

数,把J中的字符串拷贝到equipment[t].jobname中*/

/**********************子函数:作业设备回收*****************************/ reclaim(char *J,char *type) {

int i,t,j,k,nn; i=0;

while(i

/*查找欲申请

equipment[t].lnumber=cc;

}

/*设备相对号写入cc*/

归还的设备类型,strcmp函数用于比较equiptype[i].type与type的大小,若相等则返回0*/

i++;

if(i>=n)

/*若没有找到该类设备*/

{ }

精品文档,供参考!

printf(\无该类设备,设备回收失败!\return(false);

t=equiptype[i].address; /*取出该

类设备在设备表中的起始地址赋给t*/

j=equiptype[i].count; /*取出

该类设备的数量赋给j*/

k=0; nn=t+j;

for(;t

if(strcmp(equipment[t].jobname,J)==0&&equipment[t].remain==1) /*

若占用某个设备的作业与欲回收的作业相同且状态为已分配*/

{

equipment[t].remain=0;

/*

则将其状态改为未分配*/

k++;

/*回收

设备计数*/

}

equiptype[i].remain= equiptype[i].remain+k;

/*

该类设备剩余设备数加k*/

if(k==0)

/*若回

收设备计数值k为0,*/ }

/**********************主函数*****************************/ void main( )

{

char J[4]; int i,mm,a; char type[10];

printf(\本作业没有占用这类资源!/n\

精品文档,供参考!

printf(\设备类初始化\\n \

for(i=0;i<4;i++) /*输入设备

类表初始信息*/ {

printf(\请输入相应设备名称:\ scanf(\ printf(\请输入相应设备的数量:\ scanf(\ printf(\请输入当前空闲设备数量:\ scanf(\ printf(\请输入设备表起始地址:\ scanf(\

}

for(i=0;i<10;i++) 备表*/ { equipment[i].number=i; equipment[i].status=1; equipment[i].remain=0;

} while(1) {

printf(\退出,1-分配,2-回收,3-显示\

面*/ printf(\请选择功能(0-3):\ scanf(\ switch(a)

{

case

0

精品文档,供参考!

/*初始化设

/*功能选择界

:

/*a=0程序结束*/

exit(0); case

1

:

/*a=1分配设备*/

printf(\请输入作业名、作业所需设备类型和设备相对号\\n\ scanf(\

allocate(J,type,mm); /*

分配设备*/

break; case

2:

/*a=2回收设备*/

printf(\请输入作业名和作业归还的设备类\\n\

scanf(\ /*输

入要回收的作业名及对应的设备类*/

reclaim(J,type); /*回

收设备*/

break; case

3:

/*a=3 输出设备类表和设备表的内容*/

printf(\输出设备类表!\\n\ /*输出设备类

表内容*/

printf(\设备类型 设备总量 空

闲好设备 起始地址\\n\

printf(\

for(i=0;i

uiptype[i].remain,equiptype[i].address); */

printf(\输出设备表:\\n\ /*输出设备表内容

精品文档,供参考!

搜索更多关于: 操作系统实验六_设备管理 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

始地址赋给t*/ while(!(equipment[t].status==1 && equipment[t].remain==0)) t++; /*该设备类型起始地址加一*/ equiptype[i].remain--; /*剩余设备数减一*/ /*状态改为已分配*/ /*strcpy为字符串拷贝函equipment[t].remain=1; strcpy(equipment[t].jobname,J); 数,把J中的字符串拷贝到equipment[t].jobname中*/

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com