《操作系统课程设计文件管理二级文件系统》.docxVIP

《操作系统课程设计文件管理二级文件系统》.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
本文档分别包含linux和windows两套程序 >课程设计的目的 二、 课程设计的内容及要求 内容 要求 三、 实现原理 流程图 关键算法 软件运行环境及限制 结果输出及分析 心得体会 参考文献 课程设计的目的 本课程设计是学习完《计算机操作系统》课程后,进行的一次全而的综合训 练,通过课程设计,让我更好地掌握操作系统的原理及实现方法,加深对操作系 统基础理论和重要算法的理解,加强了我的动手能力。 课程设计的内容及要求 内容:为LINUX设计一个简单的二级文件系统。要求做到以下几点: 1、 可以实现下列几条命令(至少4条)。 Login 用户登录 Dir 列文件目录 Create 创建文件 Delete 删除文件 Open 打开文件 Close 关闭文件 Read 读文件 Write 写文件 2、 列目录时要列出文件名、物理地址、保护码和文件长度。 3、 源文件可以进行读写保护。 从课程设计的目的出发,通过设计工作的各个环节,达到以下教学要求: 1、 鼓励并优先个人独立选题设计,可从下面设计题目中选择,也可以自拟 相关题目;如要合作,每组最多两名同学,且设计文档不能相同; 2、 可以在我们实验课最后布置的实验设计基础上进行完善和改进,但不能 相同。 3、 题目选定后报给班长,班长要注意班级内题目的平衡,根据所选题目进 行协调,不要都选一样的题。 4、 设计完成后报请老师答辩,答辩时不能对自己提供的设计进行讲解的同 学,视为抄袭; 5、 要求写岀一份详细的设计报告(A4纸)。 6、 每位同学在周五将自己的设计报告和电子文档(包括报告和源程序)交 给学习委员,并由学习委员统一刻盘后上交。 实现原理 首先,实现Login用户登录,(用户名:admin密码:admin)必须登录成功才能进入 文件系统进行查看,进入后,通过树状展示文件目录(默认文件目录是C: \Program Files), 右侧显示文件夹图标或者文件图标,选屮节点鼠标右击弹出菜单,有新建目录,新建文件, 删除文件,打开文件,属性菜单项,并分别实现其功能。 关键算法实现流程图 流程图: 关键算法: 1. 新建目录功能的实现 private class MenuAction2 implements ActionListener { public void actionPerformed(ActionEvent argO) { try { String Name=JOpt ion Pane ? show Input Di a log (”仓建目录名称:n ); if (!Name.equals(””)) { //得到树状视图的被选择节点路径 TreePath path = tree ? getSelectionPath(); //得到树状视图的被选择节点 MutableTreeNode node = (MutableTre一Node) path ? getLastPathcomponent(); II得到树状视图的模型类变量 DefaultTreeModel model (DefauItTreeModel) tree-getModel(); //新建子节点,标题为新目录名称 MutableTreeNode newNode = new DefaultMutableTr一一Node(Name); //先展开树状视图,触发展开树状视图事件,给 当前节点追加下级节点 tree ? fireTreeExpanded(path); //如果当前节点允许存在下级节点,则在树状视 图的模型类变量中插入新子节点,位置是第一个,否则显示消息并退 出该函数 if (node ? getAllowsChildren ()) model? insertNodelnto(newNode, node 0); else { JOptionPane ? showMessageDialog(nullr ,不能给文件追加下级冃录!”); return; } //得到被选择节点对应文件的完整路径信息 String fullPath = H ; for (Object obj : path.getPath()) { String str = obj?toString (); //处理盘符根目录问题 if (str.endsWith(n\\n)) str = str.substring(O, str ?length() - 1); if (fullPath.equals(n)) fullPath += str; else fullPath += n\\n + str; } //System.out.printin(n fullpath=n +fullPath); //生成被选择节点对应的文件类

文档评论(0)

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

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

1亿VIP精品文档

相关文档