江苏大学京江学院操作系统课程设计

  • 格式:docx
  • 大小:493.36 KB
  • 文档页数:20

下载文档原格式

  / 20
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

前言:

这是我自己按照自己理解的设计方法设计的一份简易的Java操作系统的程序内容比较简单,目前互联网上还没有此类的课程设计报告,因为我也去查了的,哪些打着Java的名头,裤子穿着C++/C#,坑人。

之前我是准备用Java的Swing组件来写的,搞了三天,验证出现了问题,问老师,老师也不知道,故而我直接在console(控制台)里面输出,大家可以自由发挥,我不想有人直接原文照搬,参考是可以的,复制是学术的大忌,大家自觉遵守。我目前只会放PDF版的,Word版我博客中会放,不过还没建成。

2017年9月8日

于江苏大学

江苏大学京江学院

JIANGSU UNIVERSITY

操作系统课程设计

文件管理系统

学院名称:京江学院

专业班级:J计算机1401

学号:4141110023

学生姓名:谢舟

指导教师:林琳

2017年1月

目录

一、课设目的 (1)

二、课设题目 (1)

三、系统功能结构 (2)

四、主要数据结构 (3)

五、系统使用说明 (4)

六、课程设计中遇到的问题及解决方法 (8)

七、带注释的代码 (9)

一、课设目的

操作系统是计算机专业的一门专业课,也是计算机专业考研课程,但操作系统比较抽象,有的同学一学期完了都还很难理解进程、内存管理等一些概念和原理,操作系统课程设计的目的就是通过设计的实验,让同学们真正理解进程的实现,内存管理的机制,达到理解概念,了解实现原理。同时也进一步巩固程序设计与数据结构的实践技能,实现整个大学阶段实践技能不断线的目的。

二、课设题目

实现一个简单的文件管理系统

(1)具有文件目录(一级或者多级)

(2)对指定大小的磁盘(设共1GB,每个块为1MB),建立位示图进行管理

(3)文件操作,包括新建、查看属性、删除新建文件:给出文件名、大小、建立时间等信息,系统为其分配硬盘空间,并记录在文件目录中

查看属性:给出文件名,可以输出该文件的所有属性,以及该文件所占用的物理块号。

删除文件:给出文件名,实现文件的删除

(4)文件系统操作:显示文件列表、显示磁盘空间剩余大小、输出位示图。

三、系统功能结构

(使用语言或者图形方式表示所实现的所有功能)

进入Java简单的文件管理系统界面。

输入1,调用CiPan()函数,设置磁盘大小,指定大小的磁盘(设共1GB,每个块为1MB),建立位示图进行管理。

分块 n = disksize*1024/blocksize;

输入2,调用ChuangJian()函数,创建新文件,输入文件名和大

小,剩余内存等于原有内存减去创建的文件的大小,并在位示图中把占用的块置为1,标记插入的开头和结尾。

输入3,调用Delelte()函数,删除文件,输入要删除的文件名,在已经创建的文件中查找是否存在此文件,如果有则释放对应的文件及所占有的内存,剩余内存等于原有内存加上删除的文件的大小,并把位示图中对应的块置为0。

输入4,输出目录信息。

输入5,输出文件属性。

输入6,输出剩余的内存大小。

输入7,输出位示图。

四、主要数据结构

(说明各种管理中所采用的方法,设计的数据结构的含

义)

设置磁盘大小和盘块大小时,需要对初始的变量进行赋值,

对文件字符数组赋初值为空,创建的文件有数量限制。

创建文件时,需要对文件的名字进行标记,标记插入的位

置和大小,剩余内存等于原有内存减去此文件的大小,中间的

插入需要在位示图中寻找是否有空的盘块,如果有的话,则把

对应的盘块置为1。

删除文件时,需要先去寻找要删除的文件所对应的块的位

置和文件名所对应的数组。如果找到了,显示删除成功,删除对应的块、名字,释放对应的内存空间,把对应的位示图所使用的盘块置为0;若果没找到,则显示此文件不存在。

目录,直接把name[]字符串数组里面的东西按顺序输出。文件属性,把对应的name[]和arr[]输出。

剩余磁盘大小,在创建文件时,需要减去对应的文件的大小,在删除文件时,需要加上所删除的文件的大小。

输出位示图,在创建文件时,把对应的大小的数量在位示图上标记出来,使用了就标记为1,没有就是0;在删除文件时,把对应的文件的所使用的内存所对应的位示图的位置置为0,这样就在位示图上弄好了。

五、系统使用说明

(通过文字和主要功能截图的方式,大致说明系统的使用方法)

1、初始化,建立环境,输入磁盘大小和盘块大小(此处使用磁盘大小1GB和盘块大小1MB,用户可以随意改变参数)

2、新建文件,输入文件名,大小。(建立多个文件)

3、输出目录

4、输出属性

5、输出剩余磁盘大小

6、输出位示图

7、删除文件

六、课程设计中遇到的问题及解决方法

刚开始我拿到这个操作系统课程设计的题目时是很迷茫的,感觉什么都不会,开始花了大量的时间用在做Java图形界面上,试了很多次,发现用Java做图形界面时,输入的文字保存有问题,但是单个模块测试却是没有问题的,点击确认按钮时,创建文件是跳不出来主界面的,试了3天后我已经放弃用图形界面,转换为控制台里输入和显示,这样就避免了跨类调用等的问题。

虽然是这样,但也是在之前的程序上把图形界面的程序删除了,然后精简到一个类中。在这之中也遇到了一些小问题,输入的问题,我跟老师、同学交流了一下,那个同学用C语言做的,给了我很大的启发。我就对着程序添添补补,把那些不要的程序删除了,加上一些好的程序。就这样花了几个小时就完成了,虽然功能不是很完善,但是我已经尽力了!

这次课程设计对我的影响很大,我第一次凭借自己的努力用Java写出来一个规模较小程序,累是累但是收获很大。对我的人生产生了前进的动力。

在此感谢老师,感谢那位同学的意见!!!

七、带注释的代码

package a;

import java.util.Scanner;