操作系统实验报告实验一进程管理.pdf
《操作系统实验报告实验一进程管理.pdf》由会员分享,可在线阅读,更多相关《操作系统实验报告实验一进程管理.pdf(9页珍藏版)》请在三一文库上搜索。
1、. . 实验一进程管理 一、目的 进程调度是处理机管理的核心内容。本实验要求编写和调试一个简单的进程调度程序。通过本实验 加深理解有关进程控制块、进程队列的概念,并体会和了解进程调度算法的具体实施办法。 二、实验内容及要求 1、设计进程控制块PCB 的结构( PCB 结构通常包括以下信息:进程名(进程ID ) 、进程优先数、 轮转时间片、进程所占用的CPU 时间、进程的状态、当前队列指针等。可根据实验的不同,PCB 结构 的内容可以作适当的增删)。为了便于处理,程序中的某进程运行时间以时间片为单位计算。各进程的 轮转时间数以及进程需运行的时间片数的初始值均由用户给定。 2 、 系 统 资 源
2、(r1rw), 共 有w 类 , 每 类 数 目 为r1 rw。 随 机 产 生n 进 程Pi(id,s(j,k) , t),0= 0 b = b - jincheng.rb; c = c - jincheng.rc; jincheng.state = W; hready.Add(jincheng);/ 加入就绪队列 else jincheng.state = B; hblock.Add(jincheng);/ 加入阻塞队列 listBox1.Items.Add(“ 当前进程状态:“ + jincheng.state); /从数组起始地址开始输出该数组的内容 public void disp(
3、ArrayList list) ArrayList list1 = new ArrayList(); list1 = list; if (list1.Count 0) for (int j = 0; j = 0) hready.Add(p1); a = a - p1.ra; b = b - p1.rb; c = c - p1.rc; listBox1.Items.Add(“ID号为: “+p1.id + “ 的进程由阻塞队列转入就绪队列rn“); hblock.RemoveAt(m); m-; /检测是否有新的进程产生,随机产生新进程 public void testnew() int t;
4、if (r0)/r 为随机产生的进程数目 t = random.Next(9) + 1; if (t = 0 b = b - jincheng.rb; c = c - jincheng.rc; jincheng.state = W; listBox1.Items.Add(“ 进程状态为:“ + jincheng.state); hready.Add(jincheng);/ 加入就绪队列 listBox1.Items.Add(“ 资源满足新进程请求,该进程进入就绪队列rn“); . . else jincheng.state = B; hblock.Add(jincheng);/ 加入阻塞队列
5、listBox1.Items.Add(“ 进程状态为:“ + jincheng.state); listBox1.Items.Add(“ 资源不满足新进程请求,该进程进入阻塞队列rn“); r = r - 1; /系统三类资源变化情况的显示 public void rescore()/ 系统三类资源变化情况的显示 if (a a1) textBox1.Text = a1.ToString(); if (a = 0 if (b = 0 if (c = 0 running(); testblock(); testnew(); rescore(); else timer1.Enabled = fal
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 实验 报告 进程 管理
链接地址:https://www.31doc.com/p-5217335.html