网站大量收购独家精品文档,联系QQ:2885784924

(操作系统课程设计基于java二级文件系统.docVIP

(操作系统课程设计基于java二级文件系统.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(操作系统课程设计基于java二级文件系统

操作系统课程设计报告 题 目: 文件系统的模拟设计 姓名:崔峰海 学号:200925501132 指导老师:翟一鸣 学校:烟台大学 时间 一、设计目的学习完操作系统课程后进行的一次全面的综合训练,加深操作系统基础理论和的理解,加强学生的动手能力。设计内容(1)概述为Linux系统设计一个简单的二级文件系统。要求做到以下几点: 1.可以实现下列几条命令: login 用户登录 dir 列目录 create 创建文件 delete 删除文件 open 打开文件 close 关闭文件 read 读文件 write 写文件2.列目录时要列出文件名,物理地址,保护码和文件长度 3.源文件可以进行读写保护(2)设计原理文件系统 (3)详细设计 文件创建函数 算法:查找当前目录下是否有同名文件,是则退出,否则让用户输入文本文件内容,以‘###’结束。申请inode空间(ialloc函数),申请硬盘block空间(balloc函数),申请失败则结束。将文件内容写入inode空间和block空间。修改当前目录的结构,修改inode位图,block位图,写入模拟硬盘。详细过程如流程图1.2所示: ③、打开文件函数 对文件进行关闭操作,若此时文件不存在或处于读状态或写状态,则返回关闭失败信息;若此时文件处于空闲状态,则调用Close函数进行关闭操作。流程图如图1.3所示: ④、关闭文件系统函数 对文件进行打开操作,若此时文件不存在或已处于打开状态或读状态或写状态,则返回打开失败信息;若此时文件处于空闲状态,则调用Open函数进行打开操作。流程图如图1.4所示: (4) 程序结果如图1.5-1.7所示 图1.5 图1.6 图1.7 ()操作系统课程设计是本课程重要的实践教学环节。课程设计的目的,一方面使学生更透彻地理解操作系统的基本概念和原理,使之由抽象到具体;另一方面,通过课程设计加强学生的实验手段与实践技能,培养学生独立分析问题、解决问题、应用知识的能力和创新精神。与本课程的实验教学相比,课程设计独立设课,具有更多的学时,给学生更多自行设计、自主实验的机会,充分放手让学生真正培养学生的实践动手能力,全面提高学生的综合素质。()参考文献 12、显示列表函数dir( )和目录创建函数mkdir( )等(文件名dir.c) #include stdio.h #include string.h #include filesys.h _dir( ) /*dir*/ { unsigned int di_mode; int i,j,one; struct inode *temp_inode; printf(\nCURRENT DIRECTORY:\n); for(i=0;iDIRNUM;i++) {if(!(strcmp(dir.direct[i].d_name,))(dir.direct[i].d_ino==0)) { dir.size = i;break; }} for(i=0;idir.size;i++) {if (dir.direct[i].d_ino!=DIEMPTY) { printf(%14s ,dir.direct[%d].d_ino = %d, 属性:,dir.direct[i].d_name,i,dir.direct[i].d_ino); temp_inode=iget(dir.direct[i].d_ino); di_mode=temp_inode-di_mode; for(j=0;j12;j++) { one=di_mode%2; di_mode=di_mode/2; if (one) printf(x); el

文档评论(0)

shit0605 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档