文档详情

操作系统课程设计任务书132.pdf

发布:2025-06-03约6.37千字共8页下载文档
文本预览下载声明

inttype;/*0代表,1代表普通文件*/

structDirectoryNode*next;/*指向下一个兄弟结点的指针*/

structDirectoryNode*preDirFile;/*指向父结点的指针*/

structDirectoryNode*subFile;/*指向第一个子结点的指针*/

intsize;/*如果是文件则表示文件的大小*/

intfirst;/*起始盘块号*/

intlast;/*末尾盘块号*/

intorder;/*备用*/

};

//连续分配

structFileSys{

intVacTable[NumDisk];//空闲表,0为空闲,1为被用

structDirectoryNoderoot;//根

structDirectoryNodeDirectory[NumDisk];

}*filesys;

typedefstruct{

structDirectoryNode*DirFile;

charname[9];

}DataType;//包含一个指向的指针和名字

typedefstruct{//队列结构的实现

DataTypedata[MaxSize];

intfront,rear;//分别表示队列的头结点和尾结点

}Tp;

voidInitQueue(Tp*sq)//队列初始化

intEnAddQueue(Tp*sq,DataTypedata)//在队列中增加元素

DataTypeEnDelQueue(Tp*sq)//从队列中删除一个元素

intEmpty(Tp*sq)//判断队列是否为空,返回0表示队列为空

①.Dir:显示内容命令,显示当前下的文件和子。

②.Md:创建操作。

③.Create:创建文件,在当前下创建一个文件。

④.all:显示从根开始的所有和文件及其层次结点。

⑤.Cd:改变。

⑥.Del:删除文件操作。

⑦.Rd:删除操作,删除当前下的子。

⑧.Ren:重命名函数

⑨.Exit:命令

开发环境:VC++6.0

小组成员:

2.题目:进程调度算法的设计(3人/组)

设计要求:

①设计进程控制块PCB表结构,分别适用于不同的进程调度算法。

②建立进程就绪队列。对以下不同的算法编制入链子程序。

③编制如下进程调度算法:

1)循环轮转调度算法;

2)高响应比优先调度算法;

3)多级反馈队列调度算法

开发环境:VC++6.0

设计技术参数

①本程序用三个算法对五个进程进行调度,每个进程可有三个状态,并假设初始状态

为就绪状态。

②为了便于处理,程序中的某进程运行时间以时间片为单位计算。各进程的轮转时间

数以及进程需运行的时间片数的初始值均由用户给定。

③在轮转算法中,采用固定时间片(即:每执行一次进程,该进程的执行时间片数为

已执行了2个单位),这时,CPU时间片数加2,进程还需要的时间片数减2,并排列到

就绪队列的尾上。

开发环境:VC++6.0

小组成员:

3.题目:银行家算法设计(3人/组,不超过7组)

设计要求:编制银行家算法通用程序,并检测所给状态的系统安全性。

设进程I提出请求Request[N],则银行家算法按如下规则进行判断。

显示全部
相似文档