2019操作系统课程大作业

发布 2020-02-28 15:14:28 阅读 3795

1. (起评分75分)动态分区存储分配方案实现模拟练习。

假设一个系统的初始态下,可用内存空间为640k,并全部为空闲。现有下列请求序列发生,请分别用最先适应算法和最佳适应算法为作业分配和**内存块,并编程模拟分配**过程,程序运行时要显示出每次分配和**后的空闲分区链的情况以及内存占用情况图(哪个作业占用、起始地址和终止地址)。

作业1申请130k

作业2申请60k

作业3申请100k

作业2释放60k

作业4申请200k

作业3释放100k

作业1释放130k

作业5申请140k

作业6申请60k

作业7申请50k

作业6释放60k

实验要求: 给出相关数据结构的定义和详细说明;

给出实现思想和设计流程;

调试完成的源程序以及适当注释;

运行结果;

最后需提交的内容包括:源程序(关键**需要注释说明)、可运行程序、算法思路及流程图、心得体会。

编程工具及操作系统平台不限。

2、(起评分80分)写一个linux虚拟字符设备驱动程序。

主要思想是在内核空间申请一块内存(静态或者动态内存),并假设它是一个字符设备。通过编写相应的驱动函数来操作这个“虚拟字符设备”。这样就可以避免与硬件相关的具体细节,达到简化程序编写的目的。

主要要实现的目标如下:

实现对该“虚拟字符设备”read、write、ioctl(清零命令)等基本操作。

要求实现基本的并发控制, 实现异步io。

通过模块加载的方式添加该模块到内核中。

要求在linux或unix操作系统平台下用c语言实现。

要求详细的**注释、设计文档、编译运行方式、运行平台、对该驱动程序的测试方式、你的测试用例。

可附加你的对内核编程的心得体会。

3、(起评分85分)编写虚拟文件管理系统。

通过一个文件或者内存空间来虚拟一块“硬盘”,给这个“硬盘”编写一个虚拟文件系统,虚拟linux/unix文件系统的操作和管理。进一步熟悉操作系统中文件系统部分的原理以及linux/unix文件系统的管理方式。

需要实现的功能有:

用户登录:需要正确的用户名、密码,方可登录系统。

文件操作:包括文件的创建、读取、存储、删除等操作。

目录操作:包括目录的创建(mkdir)、删除(rmdir),进入目录(cd),列出目录文件(ls)等操作。

要求在linux或unix操作系统平台下用c语言实现。

要求详细的**注释、设计文档、编译运行方式、运行平台、对该驱动程序的测试方式、你的测试用例。

可附加你的对内核编程的心得体会。

说明:必须采用linux/unix的文件管理方式,需要实现超级块、索引节点、目录等数据结构。使用c/c++编程,在linux或者windows环境中编程均可。

可以参考linux文件系统相关源码。

大作业完成要求:

1) 以上题目任选其中一个完成,可以是一人独立完成也可以是以小组形式完成。若以小组方式完成,组内最多不能超过3人,而且要求有明确的分工和任务,在提交文档和作业内容时给出明确说明。

2) 题目中给出的起评分是指:完成题目中要求的任务和基本功能可获得的分数,若没有完成题目要求则不能给起评分,完成的比较出色的给予加分。

3) 要求学生独立完成作业及编程,严禁同学间或从网络上直接抄袭,发现有此类现象者将记0分。

4) 以小组形式提交的作业,每个人的具体分工和工作量将作为基本评分值,并且组内只有一人可拿到本题目的最高分。

5) 提交作业时,要保证所完成的程序可以现场编译、运行,同时要提交相应的设计说明文档和程序运行说明文档,可以现场回答老师的有关提问。这些也属于作业评分的内容。

6) 本大作业从现在布置,到本学期的第15周结束(12月15日)期间为设计、编程、调试及写文档阶段,从第16周开始为提交作业时间。鼓励提早完成并保证质量的提交大作业,并酌情予以加分。本次大作业的最后提交时间为2024年12月22日,过期不交者将按0分记。

操作系统大作业a

一 填空 14分 1 在设备管理中,为了克服独占设备速度较慢 降低设备资源利用率的缺点,引入了虚拟分配技术即用共享设备模拟独占设备。2 常用的内存管理方法有和。3 动态存储分配时,要靠硬件地址变换机构实现重定位。4 在存储管理中常用虚拟存储器方式来摆脱主存容量的限制。5 在页式管理中,页式虚地址与内...

操作系统大作业a

一 填空 14分 1 在设备管理中,为了克服独占设备速度较慢 降低设备资源利用率的缺点,引入了即用共享设备模拟独占设备。2 常用的内存管理方法有和。3 动态存储分配时,要靠硬件地址变换机构实现。4 在存储管理中常用方式来摆脱主存容量的限制。5 在页式管理中,页式虚地址与内存物理地址的映射是由和完成的...

操作系统大作业

学号 091401223 姓名 高玉林 本次上机作业使用的软件是microsoft visual studio community 2017 rc,版本 15.0.26020.0,使用的语言是c 第一题 编写求f x 值的程序。f x f1 x f2 x f3 x f1 x 10 x f2 x 10...