欢迎来到天天文库
浏览记录
ID:39097564
大小:142.50 KB
页数:12页
时间:2019-06-24
《模拟操作系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、模拟操作系统设计文档BY:胡波2003-7-5第一部分:文字阐述一.进程调度的设计与实现,各个调度算法的比较与分析,提出自己的看法并通过计算机模拟实现。进程是一个具有一定独立功能的程序关于某个数据集合的一次活动。另外有一种定义方法是“程序在处理器上的执行”。为了模拟的方便,本设计姑且采用这种定义。简单地说,进程包括包括三个状态:运行状态(Running),就绪状态(Ready),等待状态或阻塞状态(Blocked);状态变换图如下:RunningReadyBlocked等待事件被调度时间片用完事件发生严格地说,有五个状
2、态,除了上面的三个状态,还有挂起就绪(Readya)和挂起等待(Blocked)。为了模仿的方便,本设计中就用上面的三状态模型。通常操作系统用一个称为程序控制块(PCB)的数据结构来记录进程的属性信息。一般的说,PCB应包含以下信息:进程标识信息(本进程的标志ID,父进程的标志ID,用户标识),处理器状态信息(用户使用的寄存器,控制和状态寄存器,堆栈指针),进程控制信息(进程的状态,进程的调度优先级,进程已等待时间,已使用的处理器时间,进程在有关队列中的链接指针,分给进程的主存大小和位置,进程使用的其他资源信息,进程得
3、到有关服务的优先级)。本设计中用到以下属性信息:进程的标志ID,父进程的标志ID,程序预计执行时间(在本模拟设计中用来代替控制和状态寄存器即程序计数器PC和程序状态字PSW),进程的状态(Ready,Running,Blocked),调度优先级,已等待时间,已用处理器时间,内存使用情况(包括占用内存大小,占用内存的相对起始位置),资源信息,运行进程表,等待进程表。进程调度算法:1。先进先出调度算法(FIFO),按照进程的到达顺序调度进程,属于不可抢占策略。2。优先级调度算法,按照进程的优先级大小来调度,是高优先级进程得
4、到优先的处理的调度策略,可使用非抢占或可抢占两种策略。3。时间片轮转算法,也就是按照FIFO原则进行调度,每个进程轮流执行一个有限的时间片。4。最短进程优先级调度算法,主要是从就绪队列中挑选那些所需的运行时间(估计时间)最短的运行,只是一个非抢占策略。另外还有最短剩余时间优先级调度算法,最高响应比优先调度算法,多级反馈队列调度算法。由于时间关系,本设计中采用最容易实现的FIFO调度算法。一.内存管理的设计与实现,各个分配和回收算法的比较与分析,提出自己的看法并通过计算机模拟实现。存储器的管理技术分为固定分区存储器管理技
5、术和可变分区多道管理技术。固定分区存储管理技术的基本概念是把主存分成若干个固定大小的存储区(存储块),每个存储区分给某一个作业使用,直到该作业完成后才把该存储区归还系统。在多道固定分区的情况下,所有相关的存储器信息都被保存在存储分配表(MBT)中,该表具体包括:大小,指出存储块的大小;位置,指出存储块在主存中的起始位置;状态,表明该块是否已被使用。由于此方法的主存利用率太低,所以,本设计中不采用此方法。可变分区是指主存事先并未划分成一块块分区,而是在作业进入主存时,按该作业的大小建立分区,分给作业使用。可变分区存储器管
6、理中各功能模块要用的数据基可以有以下几种组织方法:1.位图法。在位图方法中,存储器按分配单位划分,分配单位可以小至几个字节,大至nk字节。对应每一个分配单位,采用一个二进制位予以指示,该位为0表示分配单位是空闲的,为1表示已使用。2.链表。利用链表结构把已分配和尚未分配的存储器段链接起来,以便查找。链表中每一结点包含四个域,分别说明该段是装有过程或是空闲。起始地址,长度和指向下一结点的指针。1.伙伴系统。如果把链表中的空闲段结点做为一个独立链表,且以段的大小排序链表,则分配算法执行速度会很快,但在释放存储段时,速度会变
7、慢。其原因是为了寻找释放段的邻接段必须搜索空闲链表。本节介绍的伙伴(buddysystem)内存管理算法,利用了计算机二进制数寻址的优点,来加速相邻空闲段的归并。进程A退出内存,伙伴系统比较那些按块大小,但不要求块地址是2的整数倍的算法,其优点是当一个大小为2k个字节的块释放时,存储器管理模块只需搜索大小为2k字节的块,看其是否可以合并,而其它算法则必须搜索所有的空闲块。因此,伙伴系统速度快。综合考虑组织方法的优劣和实现的难易度,本设计中使用链表来组织内存管理的数据。存储分配算法,主要有三种:1。最佳适应法,从所有位分
8、配的分区中挑选一块最接近作业尺寸且大于或等于作业大小的分区分给要求的作业。2。最先适应法,按分区序号从存储分块表的第一个表目起查找该表,把最先找到的且大于或等于作业大小的未分配分区分给作业。本设计中采用最先适应法。3。最坏适应法,从未分配的分区中挑选最大的且大于或等于作业大小的分区分给要求的作业。一.设备管理的设计与实现,各个资源
此文档下载收益归作者所有