操作系统课程设计报告书

发布 2022-10-05 13:41:28 阅读 2746

目录。进程调度模拟程序 1

一.设计目的及要求 1

二.概要设计 1

三.算法流程图 2

四.源程序及注释 6

五.运行结果及分析 16

六.课程设计总结 19

七.参考文献 19

编写一个进程调度程序,允许多个进程并行执行。本次设计将采用三种算法实现进程。

的并行执行,分别是最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)

先来先服务算法、按时间片轮转调度算法。

每个进程有一个进程控制块(pcb)表示。进程控制块可以包含如下信息:进程名、

优先数、到达时间、需要运行时间、已用cpu时间、进程状态。

2 进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程。

的到达时间为输入进程的时间。进程的运行时间以时间片为单位进行计算。

3 每个进程的状态可以是就绪 w(wait)、运行r(run)、或完成f(finish)三种状。

态之一。 建立一个pcbobj的数组来存放进程队列。

建立一个类pcbobj存放进程的各种信息并对这些信息的操作。

建立一个类wait_manager 来对就绪进程进行管理。

建立一个类cpu_manager 来对运行的进程进行管理。

图1-1 主程序流程图。

图1-2 fcfs算法流程图。

图1-3 rr算法流程图。

图1-4 hpf算法流程图。

#include

using namespace std;

#ifndef pcbobj_h_

#define pcbobj_h_

enum pstatus;//定义进程的四种状态。

class pcbobj

int pcbobj::getexectime() const

return flag;

#include

#include

#include""

#ifndef waitmanager_h_

#define waitmanager_h_

class waitmanager

waitmanager::~waitmanager()

void waitmanager::add(pcbobj new_obj)else{

bool insert_info=false;//查看是否已经插入进去。

for(list::iterator it=wait_pcb_

if(new_obj->getid()>it)->getid())

wait_pcb_

new_obj->setstatus(wait);

操作系统课程设计报告书

题目1 连续动态内存管理模拟实现。1.1 题目的主要研究内容及预期达到的目标。1 针对操作系统中内存管理相关理论进行设计,编写程序并进行测试,该程序管理一块虚拟内存。重点分析三种连续动态内存分配算法,即首次适应算法 循环首次适应算法和最佳适应算法。2 实现内存分配和 功能。1.2 题目研究的工作基础...

操作系统课程设计报告

西安郵電大學。院系名称 计算机学院。专业名称 软件工程。班级 1104 学生姓名 赵大伟。学号 8位 04113124 指导教师 舒新峰。设计起止时间 2013.11.10 2013.11.20 1 通过观察 分析实验现象,深入理解进程及进程在调度执行和内存空间等方面的特点,掌握在posix 规范中...

操作系统课程设计报告

课程设计。课程名称操作系统。题目名称多级文件系统 2 学生学院计算机学院 专业班级。学号。学生姓名。指导教师。年月日。目录。一 课程设计 6 二 开发工具及环境 6 三 设计内容 6 四 结构图 8 五 部分 9 六 运行截图 11 七 参考文献 15 八 心得体会 15 本课程设计要求设计一个模拟...