作业

一、实验目的

1)加深对处理机调度的作用和工作原理的理解。

2)进一步认识并发执行的实质。

二、实验要求:

本实验要求用高级语言,模拟在单处理器情况下,采用多个调度算法,对N个进程进行进程调度。语言自选。

并完成实验报告。

三、实验内容:

在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。

当就绪状态进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。

1. 进程及进程队列的表示。

2. 处理器调度算法:FCFS,SJF,RR,HRRN,MLFQ等

3. 跟踪进程状态的转化

4. 输出:系统中进程的调度次序,计算CPU利用率,平均周转时间和平均带权周转时间

四、实验过程与结果

1.FCFS:

1.1算法思想:按照作业进入系统后备作业队列的先后次序来挑选作业,先进入系统的作业将优先被挑选进入内存,创建用户进程,分配所需资源,然后移入就绪队列。

1.2算法设计

2.SJF:

2.1算法思想:以进入系统作业所需要求的CPU运行时间的长短为标准,总是选取预计计算时间最短的作业投入运行。

2.2算法设计:

收到作业->运行作业->收到第二个作业->比较哪个作业最短->运行最短作业->运行完成一个作业->运行下一个最短作业->如果队列中没有作业->结束

 

 

 

3.RR:

3.1算法思想:调度程序每次把CPU分配给就绪队列首进程/线程使用规定的时间间隔,称为时间片,通常为10ms~200ms,就绪队列中的每个进程/线程轮流的运行一个时间片,当时间片消耗尽时就强迫当前运行进程/线程让出处理器,转而排列到就绪队列尾部,等候下一轮调度。

3.2算法设计:

 

 

posted @ 2019-04-15 21:17  吕纯  阅读(152)  评论(0编辑  收藏  举报