一、课程设计(综合实验)的目的与要求
1. 理解和掌握操作系统的基本概念、基本组成与工作原理;
2. 理解和掌握操作系统中主要功能模块的工作原理及其实现算法;
3. 掌握软件模块设计技能;熟悉并能较好地利用软件开发环境独立编程、调试和分
析程序运行情况,逐渐形成创新思维和从事系统软件的研究和开发能力。
二、设计正文
实验 1:单处理器系统的进程调度
1.1 实验目的
在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就绪进
程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。本实
验模拟在单处理器情况下的处理器调度,帮助学生加深了解处理器调度的工作。
1.2 实验要求
1.设计一个按时间片轮转法实现处理器调度的程序,每个程序由一个 PCB 表示。
2.程序执行中应能在屏幕上显示出各进程的状态变化,以便于观察调度的整个过程。
1.3 实验原理和设计
进程控制块 PCB 的格式为:
进程名
指针
要求运行时间
已运行时间
状态
指针——进程按顺序排成循环队列,用指针指出下一个进程的进程控制块的首地
址,最后一个进程的指针指出第一个进程的进程控制块首地址。
要求运行时间——假设进程需要运行的单位时间数。
已运行时间——假设进程已经运行的单位时间数,初始值为“0”。
状态——有两种状态,“就绪”和“结束”,初始状态都为“就绪”,用 0 表示。当一个
进程运行结束后,它的状态为“结束”,用 1 表示。
(1) 运行处理器调度程序前,输入进程数并且为每个进程设置所需的服务时间;
(2) 把各个进程按顺序排成循环队列,用指针指出队列连接情况;
(3)由于是模拟程序,在时间片轮转的前提下,每次使得相应进程:执行时间 =已
执行时间+1;
(4)输出运行细节。
1.4 实验结果
评论1
最新资源