linux下基于内存的虚拟文件系统设计与实现.doc

linux下基于内存的虚拟文件系统设计与实现.doc

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摘 要 近几年来,计算机的CPU、内存和显卡等主要配件的性能都提升得很快,而与之相对应的磁盘系统性能正越来越严重地成为整个电脑系统性能提升的瓶颈。故将一部分内存拿出做虚拟磁盘,并在虚拟磁盘上实施文件管理系统,以加快文件的管理速度,并方便用户进行各种用户操作。基于内存的文件管理系统,顾名思义,就是将一部分内存拿出来当硬盘用,可以极大的提高在其上进行的文件访问的速度。 。 关键词:虚拟内存磁盘 文件管理系统 linux/qt/C++ 目 录 第一章 课题背景 1.1课题实现的背景及意义 第二章 项目总体设计 2.1基本功能 2.2目的和要求 详细设计 3.1 程序整体框架和主要算法 3.2类的设计与声明 3.3程序流程图 第四章 实验内容 4.1 运行环境 4.2 运行要求 4.3 核心代码 设计结果与分析 总结 参考文献 第一章 课题背景: 1,需求概述 近年来,随着操作系统内存容量的不断地增加,然而相当一部分的操作系统内存却是浪费了。为此出现了虚拟硬盘的概念,希望能借此实现不同情况的磁盘转储和合理利用内存。 由于操作系统的虚拟内存很大,因此可以利用这些内存开辟一块空间作为虚拟磁盘。在此虚拟硬盘上,进行模拟Windows文件管理系统的对系统之中的真实的文件的管理。 我们采用linux/qt 作为我们的开发环境,并实现了可视化界面,所有操作无需输入命令,而是通过点击按钮实现相应的功能。 2,需求分析 2.1需求理解与模块图 对用户需求的理解:该模拟文件系统包括四大模块:磁盘状态显示模块、存储模块、读取模块、文件管理模块。 一:磁盘状态显示模块:通过点击查看磁盘信息按钮可以查看磁盘的信息,其中包括显示磁盘总容量,剩余空间大小以及当中的文件总个数。通过饼图图示,显示所用空间和剩余空间的比例,帮助用户方便的了解磁盘空间的使用情况。 二:存储模块:用户点击导入文件按钮,弹出导入文件对话框,可将指定路径的文件导入到内存磁盘中。 三:读取模块:用户点击导出文件按钮,弹出导出文件对话框,可将内存磁盘中的文件导出到指定路径的真实的物理磁盘上。 四:文件管理模块:对文件进行各种操作,包括查看,备份,重命名,删除等操作。用户只需点击相应的按钮即可进行操作,无需以命令行的方式输入命令,方便快捷。 2.2用例分析 通过对在上面进行测试的主机的硬件参数的考察和测试,因为是在虚拟机下ubuntu系统进行代码编写和运行的,收集到系统的内存大小只有512M,发现当为虚拟内存磁盘分配大小为256M的空间时,测试效果比较好。因此,在程序中,我们没有再允许用户输入所要分配的虚拟磁盘的大小,而是在程序初始化的时候就为其分配大小为256M的空间,每个内存块的大小设定为16K,然后程序初始化。之后用户可以进行各种模拟真实磁盘的操作,当用户点击退出程序按钮后,内存信息以及一些程序运行的一些参数都将保存到外部磁盘上,程序退出。 第二章 项目总体设计: 程序大致划分为四个模块:磁盘状态显示模块、存储模块、读取模块、文件管理模块等。 磁盘状态显示模块:显示磁盘当前的信息,包括磁盘总容量大小,剩余可用空间大小,磁盘中包含的文件个数。 存储模块:当用户导入新文件或者对文件进行备份的时候,其中的数据都是要存储在内存虚拟磁盘中的。该模块的功能就是把用户导入或备份的数据通过一种合理(保证该文件数据不会被破坏掉)的方式分配到内存中。 读取模块:把内存磁盘中的文件导出到用户指定路径的真实物理磁盘上,功能和创建文件类似。 文件管理模块:实现对文件的查看,备份,重命名,删除等操作,因为我们建立的目录系统是一级目录,所以不提供创建文件夹的操作,而关于创建文件的操作实质上和从硬盘上导入文件的操作是一样的,因此我们把创建文件并入到文件读取模块里。 2.1基本功能: 1. 显示磁盘信息(总容量,剩余可用空间,文件个数) 2. 导入文件(支持把指定路径的物理磁盘中的文件导入到内存中) 3. 导出文件(支持把内存中选定的文件导出到物理磁盘上指定路径的位置) 4. 文件查看、备份、重命名、删除操作 5. 文件有哪些信誉好的足球投注网站 6. 关机备份,开机加载 2.2目的和要求: 本课程设计的目的是设计一个基于内存的文件管理。以加强对内存系统和文件管理系统和理解,同时也可加深对linux操作系统的了解以及熟悉linux下的各种命令,并对linux下QT可视化编程有进一步了解和掌握。 3. 详细设计 程序整体框架和主要算法 在qt自动生成的窗口下通过添加控件并赋予每个控件一个实现方法来实现可视化操作,其中用到的一些算法主要有: 文件和内存空间分块解决外部碎片问题并实现空间的高效利用 在block类里定义

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档