操作系统实验指导书--实验一 基于优先级的进程调度
21页1、操作系统实验指导书实验一 基于优先级的进程调度一、 实验名称进程调度算法的模拟实现二、 实验目标进程调度是处理机管理的核心内容。本实验要求用高级程序设计语言编写和调试一个简单的进程调用程序,模拟完成进程控制及进程调度算法。进程控制包括进程的创建、阻塞、唤醒和撤销,进程调度算法包括先来先服务、优先级(包括动态和静态)和论证法。通过本实验可以使学生加深对进程控制块和进程队列的概念的理解,并了解循环轮转调度和优先级调度的实现方法。三、实验环境要求:1.PC机。2.Dos;Windows;Linux环境。3.Borland C+ for Dos;Visual C+ 6.0 for Windows;g+ for Linux。四、实验基本原理1设计进程控制块PCB结构,PCB结构包括以下信息:进程ID,用户ID, 进程状态,进程优先数(或轮转时间片),进程创建时间,进程开始执行时间,进程执行完的时间,进程所占用的CPU时间,进程预计执行时间,进程剩余的执行时间等。2模拟实现进程调度算法,包括:FCFS(先来先服务)、RoundRobin(轮转法)、PRI(优先级法,包括静态和动态优先级)。FCFS
2、调度算法:将进程按提交时间的先后顺序排成队列,并按照先来先服务(first come first serve)的方式进行调度处理。RoundRobin调度算法:其基本思想是让每个进程在就绪队列中的等待时间与享受服务的时间成一定的比例关系。系统给每一个进程分一段CPU时间,这段时间称为进程时间片。运行进程时间片用完后,系统将发生中断,强制该进程退出CPU,并释放相关资源,此进程进入就绪队列尾部等待CPU再次调度。PRI调度算法:其基本思想是每个进程都有一个优先权,在进程调度时,系统选取优先级最高的进程占有CPU。在dynamicPRI调度算法中,随着运行进程的执行,系统将不断地重新评估其优先级。而在StaticPRI调度算法中,进程优先级初始化后直到进程执行完毕不再发生改变。PRI算法的核心是,一旦就绪进程中有更高优先级的进程时,立即发生高优先级中断。运行进程按优先级序列插入就绪队列等待,高优先级的进程被调度,占有CPU。五、数据结构设计(1)进程控制块:系统中PCB块同操作系统中的PCB并不完全相同,考虑到调度算法的可行性问题,将PCB中的部分信息忽略,以简化算法;主要提取了进程描述和
3、控制信息,这些是算法实现所必需的基本信息。Class PCB/Process Control Blockint ID; /进程IDint userID; /用户IDint status; /进程状态 int priority; /进程优先级int submitTime; /进程创建时间int startTime; /进程开始执行时间int finishTime; /进程执行完的时间int totalCpuTime;/进程预计执行时间int leftCpuTime; /进程剩余的执行时间int oneCpuTime; /进程时间片(2)进程控制预处理信息保存类: 保存进程控制的基本信息,主要是进程ID和发生时间。进程控制包括进程阻塞、唤醒和撤销。Class BarrageWakeint id; /进程IDint time; /时间(3)进程队列控制类:最核心的数据类型,是进程调度算法的实现类。其功能有,初始化用户输入数据,创建预处理信息,管理各进程队列,实现进程调度算法。Class PCBQueuepublic:int initialize(); /读取输入文件信息,并进程预处理int
4、retractProcess(int); / 撤销进程int wakeProcess(int); /唤醒进程int barrageProcess(int); /阻塞进程void submitProcess(); /创建进程void inspector(); /CPU控制函数,检测进程控制信息void FCFS(); /先来先服务(first come first serive)void roundRobin();/轮转法(round robin)void staticPRI(); /静态优先级(static PRI)void dynamicPRI();/动态优先(dynamic PRI)private:int CPU_TIME; int currentTime; /当前时间int timeSlice; /时间片PCB *running; /运行进程PCB *submissionHead, *submissionTail;/预处理信息记录PCB *readyHead, *readyTail; /就绪队列头(尾)指针PCB *waitHead, *waitTail; /等待队列头(尾)指针
《操作系统实验指导书--实验一 基于优先级的进程调度》由会员liy****000分享,可在线阅读,更多相关《操作系统实验指导书--实验一 基于优先级的进程调度》请在金锄头文库上搜索。
仓前街道北片六村河道保洁项目招标文件
仓前街道污水管网巡查及养护项目招标文件
人民医院快速脑干诱发电位反应仪项目招标文件
人民医院巍山分院CT采购项目招标文件
千年古城复兴一期项目体育场地设施采购项目招标文件
乔司中学物业服务外包项目采购招标文件
“三色预警”河道水质保障服务采购项目招标文件
“甬有碧水”甬新河流域智慧治水人工采集服务项目招标文件
仓前街道2024-2026年余杭塘路以北道路综合养护项目招标文件
美术职业学校2024年物业管理服务项目招标文件
仁和第一幼儿园保安服务外包项目招标文件
人民医院电子内窥镜系统采购项目招标文件
公园区块道路综合养护项目招标文件
仁和第三幼儿园保安服务外包项目招标文件
中心幼儿园2024年物业(保洁及绿化养护)管理服务项目招标文件
工业垃圾打包车及叉车采购(重)招标文件
眼科医院信息化提升项目招标文件
瓶窑镇华兴社区未来社区创建服务采购项目招标文件
新城公园维护Ⅳ标段—2024年新接管公园绿地零星补种项目招标文件
公益中学安保服务项目招标文件
2024-01-03 50页
2024-01-03 57页
2023-12-29 56页
2023-12-19 80页
2023-12-19 371页
2023-12-15 43页
2023-12-15 14页
2023-12-15 30页
2023-12-15 28页
2023-12-15 16页