首页 操作系统实验课堂介绍2010

操作系统实验课堂介绍2010

举报
开通vip

操作系统实验课堂介绍2010操作系统实习南京工业大学信息学院计算机系实验题目文件管理系统的设计实验目的了解有关文件管理的知识;理解FAT16的存储格式;掌握文件管理系统的开发方法。基本要求目录操作命令:cd[]改变当前目录create[]deldir[[]]mdrd设计并实现以下文件和目录系统操作命令:文件操作命令:openwrite[][insert]read[[]]closetypecopyrenattrib[]程序初始化时构造如图1所示的目录结构。binusrdevuserlibbinlimaauto图1初始目录树目录文件普通文件【图例...

操作系统实验课堂介绍2010
操作系统实习南京工业大学信息学院计算机系实验题目文件管理系统的 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 实验目的了解有关文件管理的知识;理解FAT16的存储格式;掌握文件管理系统的开发方法。基本要求目录操作命令:cd[<目录名>]改变当前目录create<文件名>[<属性>]del<文件名>dir[<目录名>[<属性>]]md<目录名>rd<目录名>设计并实现以下文件和目录系统操作命令:文件操作命令:open<文件名>write<文件名>[<位置>][insert]read<文件名>[<位置m>[<字节数n>]]close<文件名>type<文件名>copy<源文件名><目标文件名>ren<原文件名><新文件名>attrib<文件名>[<文件属性>]程序初始化时构造如图1所示的目录结构。binusrdevuserlibbinlimaauto图1初始目录树目录文件普通文件【图例说明】根目录sun设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 采用FAT文件格式:shortFAT[5000]为了设计程序方便,本系统的FAT 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 用short型数组FAT[K]表示。FAT[0]中存储空闲盘块数。磁盘空间用字符数组Disk[K][SIZE](其中K为盘块号,SIZE为每个盘块的字节数,即盘块的容量)表示。本系统设定磁盘块容量为SIZE=64。目录项(FCB)结构文件名属性首块号文件长度(11字节)(1字节)(2字节)(2字节)structFCB//每个目录项16个字节{charFileName[11];//文件名最多10个字符且以'\0'结尾charFattrib;//文件属性shortintAddr;//文件首块号shortintFsize;//文件长度};详细说明参见《指导书》D7D6D5D4D3D2D1D00000/100/10/10/11表示目录1表示系统1表示隐藏1表示只读目录项中的属性字节:当前目录curpath数据结构structCurPath{shortintfblock;//当前目录的首块号charcpath[PATH_LEN];//当前目录路径名};当前目录用全局变量CurPathcurpath存储。根目录的路径字符串cpath是“/”,首块号为1。删除文件恢复表udtab数据结构structUnDel//恢复被删除文件信息表的数据结构{chargpath[PATH_LEN];//被删除文件的全路径名(不含文件名)charufname[FILENAME_LEN];//被删除文件名shortufaddr;//被删除文件的首块号shortfb;//存储被删除文件块号的链表头指针};本系统的被删除文件恢复表用全局数组udtab存储,定义为:UnDeludtab[40];退出系统时,该数组以文件名“UdTab2008.dat”存盘,以便下次启动时调入使用。fb所指的盘块中记录了对应的被删除文件的所有盘块号(包括文件首块号)。由于只用一个盘块存储被删除文件的块号,因此只适用于盘块数不超过31的情况(以-1作为结束标记)。功能完整程序"OS实验.exe"中已作了如下改进:udtab表存于Disk[][]的一片连续盘块空间;修改了structUnDel,使之包含FCB的全部信息,这样即使原先的目录项位置已被占用,仍可能恢复该文件;文件的块号允许用多个盘块存储,即被删除文件长度不受最多31个盘块的限制。盘块大小改为256B,UnDel表项128B,每个盘块存储2个表项,UnDel表占20个连续盘块。全局变量ffbp和UdelpshortUdelp;它是udtab表的第一个空表项的下标,系统初始化时为0。shortffbp;它是分配盘块时FAT表的起始指针(下标),这样使得分配盘块类似于分区存储管理的“循环首次适应”分配算法,这有利于被删除文件的恢复。退出系统时,Udelp和ffbp保存到0号盘块Disk[0]中。“功能完整程序”中,udtab表的首块号以及回收站recycled的首块号也存储在0号盘块中。定义的若干符号常量#defineS32//假设最多同时打开32个文件#defineK5000//假设磁盘共有5000个盘块#defineSIZE64//假设磁盘的大小是64字节#defineCK8//命令分解后的段数#defineINPUT_LEN128//输入缓冲区长度#defineCOMMAND_LEN11//命令字符串长度#defineFILENAME_LEN11//文件名长度#definePATH_LENINPUT_LEN-COMMAND_LEN#defineDM40//恢复被删除文件表的表项数命令行缓冲区charcmd[INPUT_LEN];用于存储输入的命令。全局数组charcomd[CK][PATH_LEN];用于存储分解命令后各个参数。其中CK=8,因此本系统的命令最多允许有8段。执行语句k=ParseCommand(cmd);分解命令后comd[0]中为命令字符串;comd[1]中为命令的第一个参数;comd[2]中为命令的第二个参数;……comd[7]中为命令的第七个参数;k=参数个数。例如,输入的命令为copytestbox,则分解该命令后comd[0]="copy",comd[1]="test",comd[2]="box"k=2主程序的简单流程如下:等待输入命令cmd显示提示符调用ParseCommand(cmd)分解命令调用ExecComd(k)执行命令ParseCommand(cmd)中以空格或"/"作为分隔符来分解命令;ExecComd(k)中用comd[0]匹配命令表,然后执行匹配的命令或报错。ExecComd(k)函数的程序清单示意如下:本系统命令不区分大小写,但文件名和子目录名区分大小写。同学们很容易修改程序,使后者也不区分大小写。同学们在自己编写程序前,除了搞清程序的总体结构、读懂有关命令函数外,还应仔细读懂一些重要的函数,例如FindPath()、FindFCB()等与目录查找有关的函数。例如执行命令:copy/usr/user/abc/bin/xyz此命令的功能是将根目录下usr子目录中user子目录中的文件复制到根目录下bin子目录中,新文件名为xyz。命令执行过程中要调用目录查找函数。实验任务《指导书》的4.1~4.17实验任务中,每个学生可在4.1~4.8中任选6项任务(浦计学生可任选4项)。4.9~4.17为“选做内容”,能力较强的学生可在完成上述必做题目基础上,选择几项“选做”任务并努力完成之。4.1~4.17中的各项功能,在“OS实验.exe”程序都已实现,同学们可运行该程序,观察各项功能的执行情况并模仿之。学生应提交的实验材料每个学生至少应提交如下三种材料:实验 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 源程序清单程序测试、运行的结果上述材料以电子文档形式发送到下列邮箱中:qjiang_njut2004@163.com发送时请将多个电子文档打包压缩成一个文件。压缩文件、实验报告、源程序、程序测试运行结果(文本文件)的文件名统一使用学号命名。如:计080140.rar、计080140实验报告.doc、计080140.cpp、计080140测试结果.txt另外,邮件的标题也一定要包含自己的学号!
本文档为【操作系统实验课堂介绍2010】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
于于
暂无简介~
格式:ppt
大小:572KB
软件:PowerPoint
页数:0
分类:建筑/施工
上传时间:2021-10-25
浏览量:4