1928313_张家鸽_提优论文.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1928313_张家鸽_提优论文

操作系统原理课程设计 提优论文 题 目: 文件管理系统 姓 名: 张家鸽 朱沛 林海奇 学 院: 信息科学技术学院 专 业: 计算机科学与技术 班 级: 计科83 学 号: 1928313 1928311 1928321 指导教师: 姜海燕 职称: 副教授 2011 年3月 13日 模拟UNIX文件管理系统 摘要:UNIX是一个强大的多用户、多任务操作系统,而文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构,即在磁盘上组织文件的方法。为了更加深刻的理解UNIX文件管理系统,同时增强小组成员的软件设计能力,因此本小组根据UNIX文件系统的原理运用JAVA语言简单实现了对其的模拟,其中包括文件的创建、打开、读写和删除等功能。本系统虽然还没有实现界面操作,但是,它的数据结构清晰,各个板块间具有一定的独立性,程序可读性强。由于时间关系它还没能实现文件的共享功能。 关键字:UNIX系统;文件管理系统;JAVA语言i节点; 1 引言 UNIX操作系统是一种强大的多任务、多用户操作系统。是用高级语言C 来编写并有较高的运行效率的系统。通常被分成三个主要部分: 内核(Kernel) 、Shell 和文件系统。 文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:与文件管理有关软件、被管理文件以及实施文件管理所需数据结构。从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。 本文模拟UNIX 文件管理系统使用JAVA语言实现了一个多用户多目录文件系统,该系统只是一个模拟文件系统功能的虚拟文件系统。实现了基本的目录文件结构, 对目录和文件的操作都是在内存中完成。 2 设计与实现 2.1 实现思想 模拟UNIX 文件系统所利用的空间为1 M的内存, 这1 M内存分成1024 块, 每块为1024个字节, 这1024 块就是文件系统的可用块数, 文件系统的分配就是以块为单位来分配的, 空间块的管理用位示图的方法来管理。文件卷的组织是将其分块、用位视图来管理,块的大小设成1024字节, 块数为1024块, 用第0块作为位示图。位示图用以反映整个存储空间的分配情况, 用若干字节构成一张图, 每个字节中的每一位对应数据区中的一个物理块。存储块分配时, 只要把找到的空闲块所对应的位由0 改为1 , 而在释放时, 只要把被释放的物理块所对应的位由1 改为0 即可。分配和释放都可以在内存的位示图上完成, 而且速度较快。 本系统同时还以一个1M大小的.bat文件来模拟磁盘,以便下次可以再将它恢复到内存的虚拟磁盘空间中。 位图区 i节点区 数据区 磁盘i节点利用在内存中生成链表或者数组的方法来生成, 并且限制磁盘节点数的最大值。同样内存i节点利用数组的方法在内存中生成。同时在往文件中写或者读的时候我们都是对内存中有内容进行读写。例如你在文件中写的时候, 其实是对分配的文件块中相应的内存赋值。在此操作结束后,系统会自动将所做的操作保存在模拟磁盘中,以便在下次运行系统时可以恢复数据。 2.2 数据结构 (1) i节点结构,即在文件控制块中所包含的信息, 包括i节点号、文件名、文件类型、所属用户名、父节点号、文件数据长度和数据地址信息。 (2) 打开文件结构,即打开文件的属性信息,包括所属的i节点号、打开文件名和偏移量信息。 ( 3) 用户结构,包含用户名、用户密码等信息。 2.3 核心技术图 0 0 0 0 …… 0 0 0,”/”,1,user,0,0,-1,-1 1,”bin”,1,user,0,0,-1,-1 2,”a.txt”,2,user,1,8,0,-1 …… -1,…… 1,”bin”,3,0 2…… …… …… …… 在内存 3 系统流程图和函数间的关系 3.1 功能流程图如下: 3.2 主要函数列表 函数原型 功能 入口、出口参数说明 void login(void) 用户登陆 void init(void))

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档