操作系统实验讲义

2019-07-14 09:35发布

 《操作系统》实验讲义 一、 进程控制 目的:利用简单的结构和控制方法模拟进程结构、进程状态转换和进程控制。 方法:用PCB表示整个进程实体,利用键盘交互式命令控制方法模拟进程执行中产生的事件。 实现过程: 1、 定义PCB(可以采用静态结构或动态结构):包括理论PCB中的基本内容,如ID、进程状态、队列指针。由于无法实现真正的进程创建功能,在实验中只需建立PCB,用它代表完整的进程。 2、 定义进程状态转换方式:进程的状态转换是由进程内部操作或操作系统的控制引起,由于无法实现这些功能,学生可以采用随机数方法或键盘控制方法模拟,并实现对应的控制程序。随机方法指产生1-6的随机数,分别代表创建进程(c)、结束进程(e)、进程阻塞(b)、激活进程(w)、调度进程(p)、时间片到(t)等事件;键盘模拟方法指定义6种按键代表以上6种事件。 3、 根据四种事件处理就绪队列、阻塞队列和当前执行中的进程。 4、 每次事件处理后应形象地显示出当前系统中的执行进程是哪一个,就绪队列和阻塞队列分别包含哪些进程。 二、 进程调度 目的:在实验一的基础上实现FCFS、SJF以及时间片调度算法。 方法:实现FCFS、SJF以及时间片调度算时,在进程创建时自动随机或手工指定到达时间和服务时间,并将该值保存到PCB中。根据该值对各个进程进行调度。实现时间片调度算法时,如果进程不阻塞,在指定的时间片q(如5秒)后调度下一个进程。 实现过程:在调度就绪队列中的进程时按FCFS、SJF以及时间片调度算法进行调度。在时间片调度算法中,可以继续用按键控制进程阻塞事件,如果在规定时间片内不阻塞,自动调度下一个就绪进程。 三、 分页式存储管理 目的:实现分页式存储地址转换过程,在此基础上实现请求分页的地址转换。实现请求页式地址转换中出现的缺页现象中,用到的FIFO、LRU、OPT置换算法。 方法:利用键盘输入本模拟系统的物理块的大小,作业的页表中的块号;完成逻辑地址转换成相应的物理地址的过程。利用键盘输入本模拟系统分配给作业的内存物理块个数,作业在执行过程中的页面调度次序。计算出三种算法的缺页次数和缺页率。 实现过程: 1、 输入块(页)的大小,本作业的页表(长度不定); 2、 录入逻辑地址转换成相应的物理地址 3、 扩充页表,变成请求式的二维页表(增加存在位等)完成地址转换。 4、 输入分配给本作业的块数,本作业的页面调度次序; 5、 分别采用OPT、FIFO、LRU置换算法,利用堆栈结构完成页面置换;记录被换出的页面和新换入的页面。 四、 设备管理 目的:模拟实现包括设备的添加和删除,设备的分配和回收,体现设备分配中的设备独立性。使学生掌握外围设备的体系结构和管理方法。 方法:假定模拟系统中有KMTP设备,采用安全分配方式。 实现过程: 1、设备管理子系统涉及到系统设备表(SDT)、通道控制表(CHCT)、控制器控制表(COCT)和设备控制表(DCT)来体现输入输出系统的四级结构和三级控制。我们模拟这样的数据结构来完成对外围设备的管理。 1)添加设备:增加对应的设备控制表和系统设备表中的表项,如果需要新建对应的控制器控制表。 2)删除设备:删除对应的设备控制表和系统设备表中的表项,如果需要删除对应的控制器控制表。 2、独占设备的分配与回收,创建进程申请独立设备名称,建立起连接通路或阻塞到设备、控制器或通道上面,等待其他归还设备的进程后唤醒; 3、申请设备时,可以通过申请某一类设备来实现设备独立性,将逻辑设备名映射为物理设备。 五、 文件系统管理 目的:利用文件内容和命令实现树型目录结构。利用位示图表示外存的分配情况,新建文件时分配必要的空间,模拟文件分配表(FAT)记录文件在外存上的存储方式。 方法:在文件中保存目录内容,创建文件或子目录可以用命令行命令:MD、CD、RD、MKNOD(创建文件)、DEL(删除文件)和DIR。目录项包括文件或目录名称、类型(文件、目录或空目录项)、创建日期以及下一个目录项指针、下一级目录项指针。建立目录文件所对应的位示图,并在目录项创建和删除过程中应用。目录文件长度可以固定(如最多256个目录项),并为该文件建立对应的位示图文件。 实现过程: 1、创建初始文件,建立根目录的“.”和“..”目录项。 2、显示命令提示符“$”。 3、输入命令后根据命令含义完成相应文件操作: MD:在目录文件中创建子目录,同时搜索当前目录最后一个目录项,并保存指针信息; CD:根据当前目录切换到指定目录; RD:搜索所要删除的目录是否为空目录,若是则删除; MK:在当前目录中创建文件名称; DEL:搜索所要删除的文件是否存在,若是则删除; DIR:列出当前目录的所有目录项。 4、利用位示图模拟外存的空闲空间的情况。 5、在创建文件的时候分配空闲的磁盘空间,采用显示链接的方式,利用文件分配表(FAT)记录文件在外存上的存储情况。 6、当删除文件时,回收外存上的空间,修改位示图和文件分配表。 实验成绩评定: 实验成绩占期末考试成绩20分,上述五个实验每个实验为4分。在检查学生程序的时候相应的打出优、良和差;分别对应432分;最后累计得出本学期的实验成绩。