下载此文档

优先级法、多级反馈轮转法进程调度模拟设计.docx


文档分类:通信/电子 | 页数:约45页 举报非法文档有奖
1/45
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/45 下载此文档
文档列表 文档介绍
学 号:
课 程 设 计
题 目
进程调度模拟设计——优先级法、多级反应轮转法
学 院
计算机学院
专 业
班 级
姓 名
指导教师
吴利军
int switch_time; // 切换队列的时间〔SRR专用〕
int used_run_time; // 已经用过的时间片数
short use_slices; // 每次占用CPU将消耗的时间片数不同队列中的进程的值不一样〔RRMF专用〕
struct PCB *next;
};
程序中主要函数
char get_command(); // 显示主菜单并接受用户令
void add_process(); // 添加一个PCB结构进入预先准备队列
void start_scheduling(); // 演示进程调度队列,SRR版
void start_scheduling_rrmf(); // RRMF版
void calculate_time_costs(); // 计算并显示平均周转时间,平均带权周转时间
void switch_algorithm(); // 切换调度算法〔线性优先级法,多级反应轮转法〕
void view_list(struct PCB *list); //查看队列中内容
void help_menu(); // 显示帮助菜单
void restart(); // 释放资源,重新开始
void man_auto(); // 手动自动切换
void append(struct PCB **head, struct PCB **node); // 添加于所指队列的队尾
void show_process(struct PCB *node); // 显示一个PCB的内容
void time_slice(); // 一个时间片
void proc_run(); // 进程执行
void proc_run_rrmf(); // RRMF版
void proc_switch(); // 进程切换
void proc_switch_rrmf(); // RRMF版
void try_wakeup_procs(); // 遍历等待队列,减少sleep_time,唤醒sleep_time降至进程

本次程序主要由三个局部组成:main函数局部,该局部主要包含main函数;LRU算法局部,该局部主要包含LRU函数、setm(int m,int n)函数和mini(int *b)函数;OPT算法局部,该局部主要包含OPT函数和getOpt(int inPage)函数。
main函数局部
main函数代码:
int main(int argc, char *argv[])
{
char command;
srand( (unsigned)time(NULL) );
restart();
while((command = get_command()) != '0');
}
进程调度方法局部

//进程执行〔RRMF算法〕
void proc_run_rrmf()
{
short slices_out = 0;
try_wakeup_procs();
printf("> ");
if(running == NULL) {
printf(没?有®D进?程¨¬到Ì?达ä?!\n");
return;
}
printf("进程正在运行 :", running->name);
running->used_run_time ++;
running->next = NULL;
show_process(running);
printf("\n");
if(running->used_run_time == running->run_time)
{
running->finish_time = sys_clock;
running->use_slices = (QUEUE_NUM+1) - running->priority;
append(&finished_list, &running);
slices_out = 1;
}
else if( (rand() % 100 + 1) < 30 ) {
running->sleep_time = (rand()%5+1);
running->use_sli

优先级法、多级反馈轮转法进程调度模拟设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数45
  • 收藏数0 收藏
  • 顶次数0
  • 上传人916581885
  • 文件大小225 KB
  • 时间2022-05-19