1.需求分析
1.1设计系统目的:
本设计的目的是加深对进程概念及进程管理各部分内容的理解,熟悉进程管理中主要数据结构的设计及进程调度算法、进程控制机构、同步机构及通讯机构实施。
1.2设计系统要求:
设计一个允许n个进程并发运行的进程管理模拟系统。该系统包括有简单的进程控制、同步与通讯机构,其进程调度算法可任意选择。每个进程用一个PCB表示,其内容根据具体情况设置。各进程之间有一定的同步关系可选。系统在运行过程中应能显示或打印各进程的状态及有关参数的变化情况,以便观察诸进程的运行过程及系统的管理过程。
1.3系统分析
本系统实现的功能有
1 、进程控制和同步等
可以控制进程的就绪执行和阻塞三种状态等基本功能。
2 、进程调度
调度算法采用的是先来先服务算法。
3 、进程在运行过程中状态变化的屏幕输出
输出的内容包括—就绪的进程队列、当前正在执行的进程。
2.概要设计
2.1进程控制块结构体定义( PCB ):
struct pcb
{
char name[20];//进程名
string state;//状态:R运行、W等待
int super;//优先级
int alltime;//需要运行时间
int runtime;//已运行时间
struct pcb* Link;
}*Start=NULL,*K;
2.2其他模块函数定义:
void cininput();//输入进程函数
int len();//统计就绪队列
void permutation();//进程优先级排列函数
void running();//进程就绪函数
void show(PCB * pc);//进程显示函数:当前进程
void look();//进程查看函数
void finish();//进程撤消函数(进程运行结束)