操作系统类有关论文范例,与计算机专业课程Java,课程教学的探析相关论文目录怎么自动生成
本论文是一篇操作系统类有关论文目录怎么自动生成,关于计算机专业课程Java,课程教学的探析相关专升本毕业论文范文。免费优秀的关于操作系统及计算机系及计算机操作系统方面论文范文资料,适合操作系统论文写作的大学硕士及本科毕业论文开题报告范文和学术职称论文参考文献下载。
华北科技学院计算机系综合性实验
实验报告
课程名称计算机操作系统
实验学期2006至2007学年第二学期
学生所在系部计算机系
年级2004级专业班级信息管理与信息系统B043
学生姓名周志勇学号200407034311
任课教师任占营
实验成绩
计算机系制
《计算机操作系统》课程综合性实验报告
开课实验室:软件开发实验室2007年5月17日
实验题目银行家算法一,实验目的
理解死锁基本概念,掌握产生死锁的原因和必要条件以及处理死锁的几种方法,体会银行家算法是避免死锁的一种行之有效的方法.通过编写程序实现银行家算法,进一步理解银行家算法的原理和避免死锁的过程,掌握银行家算法的描述和应用,进一步熟练掌握处理处理机死锁的方法.PC兼容机,Windows操作系统,编程语言等.(1)首先对银行家算法原理进行深刻的理解和掌握,
(2)选择一种熟悉的编程语言来实现对N个进程和M种系统资源进行银行家算法判定和资源分配,
(3)根据银行家算法的要求设计相应的数据结构,如:可利用资源向量,最大需求矩阵,分配矩阵和需求矩阵,其中进程的个数N和资源的种类数目用户可以任意交互输入,
(4)安全性判定要显示过程,要给出找到的安全序列.I,j]:等于Need[i,j]-requesti[j]
系统执行安全性算法,检查分配后是否安全.若安全,则正式分配资源,否则,Pi等待.
安全性算法
设置2个工作向量:work表示系统可供进程继续运行所需的各类资源数目,算法执行前令work:等于Available,Finish表示系统是否有足够的资源分配给进程,使之运行完成,开始时先令Finish[i]:等于False,当有足够资源时在做Finish[i]等于True.
找到满足finish[i]等于flase,need[I,j]<,等于work[j]的进程,找到则执行(3),否则转(4)
Pi获得资源,顺利执行直到完成,并释放资源
work[j]:等于work[j]+Allocation
finish[i]:等于true
gotostep2
(4)如所有进程的Finish[i]等于true都满足,则系统安全,否则为不安全.
算法的具体实现如下:
流程图:
主要代码:
/**************************申请资源函数***********
操作系统类有关论文范例
intapply()
{intv等于1,
for(i等于0,i<,等于2,i++)
{if(need[proc][i]<,request[i]){v等于0,break,}
if(available[i]<,request[i]){v等于0,break,}}
if(v等于等于1){for(i等于0,i<,等于2,i++)
{stay[0][i]等于allocation[proc][i],
stay[1][i]等于need[proc][i],
stay[2][i]等于available[i],
allocation[proc][i]+等于request[i],
need[proc][i]-等于request[i],
available[i]-等于request[i],}
}
return(v),
}
/**************************安全检查函数***************************/
inttest()
{intwork[3],finish[5]等于{0,0,0,0,0},v,k等于0,t等于0,
for(i等于0,i<,p,i++)
if(result[i]等于等于0){finish[i]等于1,k1--,}
for(i等于0,i<,等于2,i++)work[i]等于available[i],
while(1)
{for(i等于0,i<,等于4,i++)
{if(finish[i]等于等于0)
{v等于1,
for(j等于0,j<,等于2,j++)
if(need[i][j]>,work[j])
{v等于0,break,}
if(v等于等于1)
{finish[i]等于1,
for(j等于0,j<,等于2,j++)work[j]+等于allocation[i][j],
process[k]等于i,k++,
}
}
}
if(t等于等于k)break,
elset等于k,
if(k等于等于k1)break,
}
if(k等于等于k1)return(1),
elsereturn(0),
}
/**************************主函数***************************/
有关论文范文主题研究: | 操作系统类论文范文 | 大学生适用: | 电大毕业论文、电大毕业论文 |
---|---|---|---|
相关参考文献下载数量: | 41 | 写作解决问题: | 如何怎么撰写 |
毕业论文开题报告: | 论文任务书、论文总结 | 职称论文适用: | 刊物发表、职称评中级 |
所属大学生专业类别: | 如何怎么撰写 | 论文题目推荐度: | 优质选题 |
main()
{
while(1)
{Output(),
k1等于5,
printf("InputtheprocessID(0~4):P"),
scanf("%d",&,proc),
if(proc<,0||proc>,4)break,
printf("P%drequestSourcsare:",proc),
scanf("%d,%d,%d",&,request[0],&,request[1],&,request[2]),
if(apply()等于等于0)
{printf("TheP%drequestisoutofavailable!\n",proc),
printf("Plaseputdownanykeytocontinue!"),}
elseif(test()等于等于0)
{printf("itisnotsafe,P%dshouldbewait!\n",proc),
for(i等于0,i<,等于2,i++)
{allocation[proc][i]等于stay[0][i],
need[proc][i]等于stay[1][i],
available[i]等于stay[2][i],}
printf("Plaseputdownanykeytocontinue!"),}
else
{Output(),
printf("Systemissafe!Thesafequeueis:"),
for(i等于0,i<,k1-1,i++)
printf("P%d->,",process[i]),
printf("P%d",process[k1-1]),
这篇论文网址:http://www.sxsky.net/xie/070688395.html
printf("\nPlaseputdownanykeytocontinue!"),}
if(need[proc][0]等于等于0&,&,need[proc][1]等于等于0&,&,nee
操作系统类有关论文范例,与计算机专业课程Java,课程教学的探析相关论文目录怎么自动生成参考文献资料: