计算机操作系统(课程设计)报告

操作系统课程设计

课程设计目的

本设计的目的是实现操作系统和相关系统软件的设计,其中涉及进程编程、I/O操作、存储管理、文件系统等操作系统概念。

课程设计要求

(1)对进行认真分析,列出实验具体步骤,写出符合题目要求的程序清单,准备出调试程序使用的数据。

(2)以完整的作业包的形式提交原始代码、设计文档和可运行程序。提交的光盘应当包括:设计题目,程序清单,运行结果分析,所选取的算法及其优缺点,以及通过上机取得了哪些经验。程序清单要求格式规范,注意加注释(包含关键字、方法、变量等),在每个模块前加注释,注释不得少于20%。课程设计要求同时上交打印文档,设计报告包括设计题目,算法分析,关键代码及其数据结构说明,运行结果分析以及上机实践的经验总结。

设计一:

设计任务:模拟Linux文件系统

在任一OS下,建立一个大文件,把它假象成一张盘,在其中实现一个简单的模拟Linux文件系统。

在现有机器硬盘上开辟100M的硬盘空间,作为设定的硬盘空间。

编写一管理程序simdisk对此空间进行管理,以模拟Linux文件系统,要求:

盘块大小1k

空闲盘块的管理:Linux位图法

结构:超级块, i结点区, 根目录区

该simdisk管理程序的功能要求如下:

info: 显示整个系统信息(参考Linux文件系统的系统信息),文件可以根据用户进行读写保护。目录名和文件名支持全路径名和相对路径名,路径名各分量间用“/”隔开。

cd …: 改变目录:改变当前工作目录,目录不存在时给出出错信息。

dir …: 显示目录:显示指定目录下或当前目录下的信息,包括文件名、物理地址、保护码、文件长度、子目录等(带/s参数的dir命令,显示所有子目录)。

md …: 创建目录:在指定路径或当前路径下创建指定目录。重名时给出错信息。

rd …: 删除目录:删除指定目录下所有文件和子目录。要删目录不空时,要给出提示是否要删除。

newfile …: 建立文件。

cat …: 打开文件。

copy …: 拷贝文件,除支持模拟Linux文件系统内部的文件拷贝外,还支持host文件系统与模拟Linux文件系统间的文件拷贝,host文件系统的文件命名为…,如:将windows下D:盘的文件\data\sample\test.txt文件拷贝到模拟Linux文件系统中的/test/data目录,windows下D:盘的当前目录为D:\data,则使用命令:

simdisk copy D:\data\sample\test.txt /test/data

或者:simdisk copy D:sample\test.txt /test/data

del …: 删除文件:删除指定文件,不存在时给出出错信息。

check: 检测并恢复文件系统:对文件系统中的数据一致性进行检测,并自动根据文件系统的结构和信息进行数据再整理。

程序的总体流程为:

初始化文件目录;

输出提示符,等待接受命令,分析键入的命令;

对合法的命令,执行相应的处理程序,否则输出错误信息,继续等待新命令,直到键入EXIT退出为止。

设计二:

设计任务:模拟文件系统的前端操作shell

实现一个简单的shell(命令行解释器)。

将设计一的管理程序simdisk作为后台进程运行,利用本设计任务的shell操作simdisk。

本设计任务在于学会如何实现在前端的shell进程和后端的simdisk进程之间利用共享内存进行进程间通信(IPC)。

设计三:

设计任务:模拟文件系统的操作管理

实现多个进程同时对模拟文件系统进行操作。设计管理程序simdisk的用户访问权限管理。访问模拟文件系统的每个进程都属于某个用户,管理程序simdisk根据其访问权限决定其对模拟文件系统的操作。

对模拟文件系统的操作要求做到:共享读,互斥写。

本设计任务在于学会如何实现信息的安全管理和进程同步。

设计题目

完成了设计一和设计二的大部分功能,模拟Linux文件系统的操作,并运行用户界面,用户可以对系统进行初始化,并且执行相关的操作。

课设原理

Liunx采用树型目录结构,每个目录表称为一个目录文件。

一个目录文件是由目录项组成的。每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;后14B为文件名,是该文件的外部标识。所以,文件目录项记录了文件内、外部标识的对照关系。根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。Linux的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。Linux中的文件系统磁盘存储区分配图

linux操作系统课程设计总结,计算机操作系统(课程设计)报告.docx相关推荐

  1. 计算机组成原理课程自评,计算机组成原理专周报告.docx

    实验报告 课程名称 计算机组成原理专周 班 级 1305012 姓 名 李鑫 学 号 23 指导教师 倪继烈 时间:2015.12.21-2015.12.27 计算机工程系 <计算机组成原理专周 ...

  2. 计算机组成原理课程设计总结,计算机组成原理课程设计的实验报告

    计算机组成原理课程设计的实验报告 长治学院课程设计报告课程名称: 计算机组成原理课程设计 设计题目: 设计一台性能简单的计算机 系 别: 计算机系 专 业: 计科1101班 组 别: 第三组 学生姓名 ...

  3. 计算机辅助设计在工业,【工业设计论文】工业设计专业计算机辅助设计课程的教学(共3476字)...

    摘要:本文在分析目前工业设计专业计算机辅助设计课程的教学所面临问题的同时,提出了一套在教学内容上进行整合,在教学方式上进行改进,在教学条件上进行优化的创新教学模式,从而大幅度提升教学质量及水平. 关键 ...

  4. Springboot科研项目申报网站设计6109r计算机毕业设计-课程设计-期末作业-毕设程序代做

    Springboot科研项目申报网站设计6109r计算机毕业设计-课程设计-期末作业-毕设程序代做 [免费赠送源码]Springboot科研项目申报网站设计6109r计算机毕业设计-课程设计-期末作业 ...

  5. 包装计算机辅助设计软件,包装设计专业计算机辅助设计课程体系研究

    包装设计专业计算机辅助设计课程体系研究 Update:2012-07-25 柯胜海,湖南工业大学 来源: <装饰>杂志2012年第5期 内容摘要 为凸显包装设计专业人才培养的优势,湖南工业 ...

  6. 计算机基础课程教学创新,计算机基础课程教学学生创新能力的培养-计算机基础论文-计算机论文(12页)-原创力文档...

    计算机基础课程教学学生创新能力的培养-计算机基础论文-计算机论文 --文章均为WORD文档,下载后可直接编辑使用亦可打印-- 摘要:作为高校教育中一门具有基础性的重要课程,计算机基础课程对于发展学生综 ...

  7. 计算机课程布置作业,计算机基础课程作业布置与批改方式-计算机基础课程有哪些.pdf...

    最新资料欢迎阅读 计算机基础课程作业布置与批改方式 | 计算 机基础课程有哪些 计算机基础课程包括计算机基础. c 语言程序设计. office 高级 应用.access 数据库程序设计,大部分作业采 ...

  8. 模型计算机控制器的设计,模型计算机控制器的设计.pdf

    第 0 页模型计算机控制器的设计 <计算机组成原理> 课 程 设 计 报 告 设计题目 : 模型计算机控制器的设计 学 生: 学 号: 专业班级: 13 计师 X 班 指导教师: 麦 山 ...

  9. 环境艺术设计是计算机,【艺术设计论文】环境艺术设计计算机辅助设计研究(共5097字)...

    摘要:文章首先简要分析了环境艺术设计的内涵,在此基础上从AutoCAD.3DMAX和Photoshop三个方面,对计算机辅助设计在环境艺术设计中的应用进行论述.期望能够对环境艺术设计水平的提升有所帮助 ...

  10. 西电java实验报告 界面_西电计算机Java上机实验报告.docx

    西电计算机Java上机实验报告.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. ...

最新文章

  1. 基于区块链的健康链系统设计与实现(3)系统设计
  2. 让你的原创设计作品展示给世界|设计师的舞台
  3. 关于虚拟化 云计算
  4. Hibernate Session中的save(),update(),delete(),saveOrUpdate() 细粒度分析
  5. ​​​​​​​​CloudMounter:挂载云存储作为在 Mac 的本地磁盘
  6. Windows10安装sql2016配置iis问题
  7. 数学建模之TOPSIS法
  8. 【转帖】八类网线与六类网线有什么区别呢?
  9. 20220520数据结构绿皮书读书笔记
  10. 【老九】【Python】函数与模块
  11. 加州理工学院计算机研究生申请条件,加州理工学院研究生申请条件
  12. Java-opts变量没生效,使用JAVA_OPTS env变量运行java无效
  13. cad隐藏图层命令快捷键_CAD隐藏当前图层和只显示当前图层的快捷键是什么快捷键?...
  14. vim报错E45: ‘readonly‘ option is set (add ! to override)
  15. antd 表格加y轴滚动时行与行间错位问题
  16. HTTPSConnectionPool(host=‘finance.yahoo.com‘, port=443解决方案
  17. 【有利可图网】小白设计师该如何创作电商广告Banner图?内附精华教程
  18. MSN 9.0 同时登陆多个账号
  19. access身份证号掩码_关于二级access的输入掩码!
  20. 贾树森_(第一章)手机摄影拍摄详解_(第一课)手机摄影四个真相

热门文章

  1. 二维彩虹二维码产品功能更新:增加“赞赏”、“重置”功能
  2. 638-字符串模式匹配-KMP算法
  3. 深圳地铁五号线联网监控!
  4. Day10【LeetCode每日一题】781. 森林中的兔子
  5. Windows10无法修改图标字体和菜单栏字体问题 —— regedit注册表修改
  6. Date Wed Mar 17 2021 13:52:00 GMT+0800 (中国标准时间) 转标准的日期格式
  7. 用VBA将尾注改为脚注
  8. java mian是什么_java mian方法详解
  9. String类实例化
  10. Python指数运算