实验5 进程调度算法的模拟实现(5.16实验)

时间:2025-04-14

实验四进程调度算法的模拟实现

【实验目的】

1.理解和掌握课堂上讲的进程调度算法,并编程模拟实现调度过程。

2.研究进程调度算法的实现方法。

【实验要求】

编程模拟实现传统的进程调度算法:FCFS调度算法、SPF调度算法、RR调度算法、优先级调度等算法。

【实验内容】

1.(基础必做题)编程模拟实现进程调度算法(FCFS与SPF算法,实现80分)

(1)设计一个具有n(5≦n≦10)个并发进程的进程调度程序。每个进程用一个进程控制块(PCB)表示。进程控制块一般包含下列信息:进程名,进程到达时间、进程要求服务的时间,还需占用CPU的时间、进程优先级数以及进程的状态等。具体参数可以根据调度算法的不同进行增删。

(2)调度程序应包含两种不同的调度算法:FCFS和SPF调度算法。运行时,可由用户通过终端任选一种,以便进行各种算法的分析比较。

(3)每个调度算法应能显示和打印:各个进程的PID,状态(运行态“R”、等待态“W”等)和参数(已运行时间/还需运行的时间等)的变化情况,便于观察进程的调度过程。

(4)所有进程结束后,要打印输出各进程的执行次序,各进程的完成时间,各进程的周转时间及带权周转时间等参数指标。

2.(进阶选作题)编程模拟实现进程调度算法(RR时间片轮转与PF优先级调度算法,实现90分)

(1)设计一个具有n(10≦n)个并发进程的进程调度程序。每个进程用一个进程控制块(PCB)表示。进程控制块一般包含下列信息:进程名,进程到达时间、进程要求服务的时间、进程优先级数、占用CPU的时间以及进程的状态等。具体参数可以根据调度算法的不同进行增删。

(2)调度程序采用RR时间片轮转调度算法进行调度。运行时,应能显示和打印:时间

片大小(可自定,或由随机函数确定),各个进程的PID,状态(运行态“R”、等待态“W”等)和参数(已运行时间/还需运行的时间等)的变化情况,便于观察进程的调度过程。

(4)所有进程结束后,要打印输出各进程的执行次序,各进程的完成时间,各进程的周转时间及带权周转时间等参数指标。

3.(进阶选做题)编程模拟实现进程调度算法(高响应比优先调度算法,实现100分)

(1)设计一个具有6个并发进程的进程调度程序,时间片自行设定。每个进程用一个进程控制块(PCB)表示。进程控制块一般包含下列信息:进程名,进程到达时间、进程要求服务的时间、进程优先级数、占用CPU的时间以及进程的状态等。具体参数可以根据调度算法的不同进行增删。

(2)每次进行调度时,调度程序应采用高响应比优先算法进行调度。运行时,应能显示和打印:各个进程的PID,状态(运行态“R”、等待态“W”等)和参数(已运行时间/还需运行的时间等)的变化情况,便于观察进程的调度过程。

(4)所有进程结束后,要打印输出各进程的执行次序,各进程的完成时间,各进程的周转时间及带权周转时间等参数指标。

【实验报告】

1.按实验内容调试运行通过程序。

2. 提交两类文档:①代码文件,例如:diaodu1.c,diaodu2.c ②说明文档(程序说明.doc),文档中要对程序运行结果进行截图,并分析、对比不同算法的特点。

3. 总结上机调试过程中所遇到的问题和解决方法及感想。

实验5 进程调度算法的模拟实现(5.16实验).doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219