《操作系统课程设计说明书》参考样版资料下载.pdf

上传人:b****2 文档编号:16119985 上传时间:2022-11-20 格式:PDF 页数:19 大小:454.94KB
下载 相关 举报
《操作系统课程设计说明书》参考样版资料下载.pdf_第1页
第1页 / 共19页
《操作系统课程设计说明书》参考样版资料下载.pdf_第2页
第2页 / 共19页
《操作系统课程设计说明书》参考样版资料下载.pdf_第3页
第3页 / 共19页
《操作系统课程设计说明书》参考样版资料下载.pdf_第4页
第4页 / 共19页
《操作系统课程设计说明书》参考样版资料下载.pdf_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

《操作系统课程设计说明书》参考样版资料下载.pdf

《《操作系统课程设计说明书》参考样版资料下载.pdf》由会员分享,可在线阅读,更多相关《《操作系统课程设计说明书》参考样版资料下载.pdf(19页珍藏版)》请在冰豆网上搜索。

《操作系统课程设计说明书》参考样版资料下载.pdf

1、命令解释器2、列目录命令3、显示时间命令4、显示日期命令5、回显字符串命令6、创建目录命令7、删除目录命令8、更改路径命令9、显示当前工作目录命令10、删除文件命令11、打印文本命令12、文件重新命名13、显示文本命令14、显示版本命令15、显示目录结构命令16、清除当前显示内容命令上述内容中,所有命令通过命令解释器能够执行,即启动命令解释器以后,输入相应命令,按照输入指令执行相应功能,并在屏幕上显示相应结果。

三、三、具体要求具体要求本设计的目的是通过设计一些简单的操作系统的命令接口,使学生掌握操作系统接口的设计方法。

要求学生在熟悉操作系统的命令接口及程序接口的基础上,利用C语言设计简单的命令接口。

命令接口基于DOS的命令行接口。

佛山科学技术学院课程设计用纸四、四、进度安排进度安排依照教学计划,课程设计时间为:

2周。

1.要求讲解、资料查找、系统分析,概要设计(2天)2.系统详细设计、功能设计(2天)3.算法实现、编程调试(5天)4.功能演示、资料整理、课程设计说明书编写。

(1天)五、五、完成后应上交的材料完成后应上交的材料课程设计说明书纸质文档六、六、总评成绩总评成绩指导教师指导教师签名日期签名日期年年月月日日系系主主任任审核日期审核日期年年月月日日佛山科学技术学院课程设计用纸目录一、程序概述.11.1完成的任务.11.2解决的问题.1二、概念原理.12.1基本概念.12.2基本原理.2三、总体设计.23.1实现方法.23.2技术路线.2四、详细设计.24.1主要函数.24.2引用函数.3五、完成情况.3六、使用说明.3七、设计总结.47.1系统特色.47.2经验教训.57.3实践感受.5参考资料.6附录.7佛山科学技术学院课程设计用纸1一、一、程序概述程序概述1.11.1完成的任务完成的任务本设计是要求编写一个简单的命令解释器,利用C语言、DOS中断中21H与屏幕显示相关的中断调用进行设计的,主要完成要求中所提到的功能如:

可打开提示符,并获取用户输入的指令、可解析指令、可寻找命令文件、可执行基本的命令。

在本设计中,设计了一个dos命令提示行,初步实现了系统登陆、用户帐户管理、命令解析、基本命令的实现。

1.21.2解决的问题解决的问题在设计过程中主要遇到了两个难题,一个是有关文件的操作,另一个是有关系统调用问题。

由于课题是要模拟命令处理器功能,命令处理器命令中有大部分是文件的操作,有关文件夹的创建与删除,文件的操作,当前目录等一系列问题都是有待解决的;

并且由于本身做的就是一个命令处理器那么就不能再使用系统中原有的命令处理器命令,通过与老师讨论,可以使用系统调用解决这一问题。

在查阅了库函数后基本确定了,可以使用包含在“doc.h”和“dir.h”中的findfirst()、findnext()、dir()、dir()完成以上功能,并且它们会将文件信息保存在一个Structffolk结构体中,定义如下:

structffblkcharff_reserved21;

/*DOS保留字*/charff_attrib;

/*文件属性*/intff_ftime;

/*文件时间*/intff_fdate;

/*文件日期*/longff_fsize;

/*文件长度*/charff_name13;

/*文件名*/二、二、概念概念原理原理2.12.1基本概念基本概念命令接口处理器命令接口处理器命令处理器是一个读入并解释你输入的命令的程序,它是介于使用者和操作系统之核心程序(kernel)间的一个接口。

它是一个交互性命令解释器。

命令处理器独立于操作系统,这种设计让用户可以灵活选择适合自己的命令处理器。

命令处理器让你在命令行键入命令,经过命令处理器解释后传送给操作系统(内核)执行。

命令提示符命令提示符“命令提示符”也就是Windows95/98下的“MS-DOS方式”,虽然随着计算机产业的发展,Windows操作系统的应用越来越广泛,DOS面临着被淘汰的命运,但是因为它运行安全、稳定,有的用户还在使用,所以一般Windows的各种版本都与其兼容,用户可以在Windows系统下运行DOS,中文版WindowsXP中的命令提示符进一步提高了与DOS下操作命令的兼容性,用户可以在命令提示符直接输入中文调用文件。

消息循环消息循环通过这个循环机制应用程序从消息队列中检索消息,再把它分派给适当的窗口,然后继续从消息队列中检索下一条消息,再分派给适当的窗口,依次进行。

系统调用系统调用系统调用,顾名思义,说的是操作系统提供给用户程序调用的一组“特殊”接口。

用户程序可以通过这组“特殊”接口来获得操作系统内核提供的服务,比如用户可以通过文件系统相关的调用请求系统打开文件、关闭文件或读写文件,可以通过时钟相关的系统调用获得系统时间或设置定时器等。

从逻辑上来说,系统调用可被看成是一个内核与用户空间程序交互的接口,它好比一个中间人,把用佛山科学技术学院课程设计用纸2户进程的请求传达给内核,待内核把请求处理完毕后再将处理结果送回给用户空间。

2.2.22基本原理基本原理首先系统登陆,在这一块采用文件的形式保存用户信息。

登陆通过后进入提示符界面,同时,此时已进入一个消息循环,不断地接收消息,根据输入的命令进行解析,然后执行命令,遇exit命令退出。

基本流程图:

三、总体设计三、总体设计3.13.1实现方法实现方法程序主要通过文件来存储帐户信息。

登陆时,根据用户名查找帐号名,核对密码。

进入提示符后,首先初始化。

在消息循环中运用了一个while

(1)循环,连续的获取用户输入,直到用户输入exit退出循环,结束程序。

在处理文件或文件夹过程中,没有使用系统当前文件夹变量,只是在程序中单独设定了一个变量作为系统当前目录,每次获得的目录路径,如果是相对路径,则自动在前面加上当前目录路径。

3.23.2技术路线技术路线整个程序的设计流程,围绕着消息循环这一主线,根据消息判断调用不同的功能函数来完成相应的功能,主要使用了一些文件操作的函数。

四、详细设计四、详细设计4.14.1主要函数主要函数voidinit()显示系统信息,版权信息等,初始化当前目录等信息。

intlogin()显示登陆界面,以及登陆成功与否的判断与结果。

正常登陆返回1。

intgetcmd()命令获取函数,在消息循环中获取用户输入的命令,并将命令通过空格分隔开,分别存放在一个命令数组中。

voiddir()列出目录及文件开始系统登陆合法?

获取命令解析命令处理命令结束三次?

佛山科学技术学院课程设计用纸3voidcd()改变当前文件夹voidclear()清屏voidnewdir()新建目录voiddeldir()删除目录voiddel()删除文件voidcopy()复制文件voidcut()剪切文件voidaccount()更改用户信息以上均为一般的实现命令处理器功能的命令函数,可以通过相应的调用来实现一般的功能,也可以在其后面加入“/?

”来获得帮助。

voidhelp()帮助信息,当用户在提示符下直接输入“/?

”或在一个命令处理器命令后输入“/?

”转至此函数处,显示相关命令的帮助信息。

4.24.2引用函数引用函数intchdir(char*path)使指定的目录path(如:

“C:

WPS”)变成当前的工作目录,成功返回Ointfindfirst(char*pathname,structffolk*ffolk,intattrib)查找指定的文件,成功返回0intfindnext(structffolk*ffolk)取匹配finddirst的文件,成功返回0intmkdir(char*pathname)建立一个新的目录pathname,成功返回Ointrmdir(char*pathname)删除一个目录pathname,成功返回0五、完成情况五、完成情况在用户登陆方面,完成了简单的,用户名和用户密码的保存更改,核对等操作,对密码文件采用的是记录式的读写。

但是,本程序中并未实现记录的删除以及用户信息的加密。

在命令处理机命令方面,基本实现了几个比较常用的命令,但参数还不够非富,并且对参数的输入,以及路径等的解析还不够智能化,输入命令时必输按固定的格式。

在当前目录方面,没有使用系统调用中的设置当前目录的函数,而是自己定义了一个变量用于存入当前目录,每次操作文件或文件夹时,都要将相对目录转化为绝对目录才能进行操作。

另外还有一个问题,就是命令对大小写敏感,这对于基于“Windows”平台的命令处理机是一大缺点。

因为在命令解析中用了简单的字符串比较,所以对大小写敏感。

六、使用说明六、使用说明启动程序,首先会出现下图所示的登陆界面,在Login后面输入用户名,在Password后面输入密码,如果用户名密码正确,那么进入系统,否则返回到登陆界面,如果连续输错三次,那么程序自动退出。

佛山科学技术学院课程设计用纸4进入系统后,首先出现版权信息等,然后就是出现提示符了如下图,用户可以输入“/?

”查看当前系统支持的命令及作用等信息。

如果想使用某个命令,那么可以先查看使用帮助,方法为:

先在提示符后输入命令名,加空格后输入“/?

”就会出现如下图所示的命令帮助提示,它会告诉用户可以使用哪些参数,各参数的作用等信息。

在命令提示符下输入exit可以退出系统。

七、设计总结七、设计总结7.17.1系统特色系统特色在本系统中已初步实现一个完整命令处理器的功能,能够正常的解析命令并执行,在解析命令方面,佛山科学技术学院课程设计用纸5采用指针加数组的形式,既可以节约内存资源,又可以自动扩充命令参数。

7.27.2经验教训经验教训在编程过程中要多使用库函数中自带的内容,不必另外再去编写已有的功能,这样不仅能节省时间,也能提高程序的可靠性。

要多了解库函数,可以阅读相应的帮助文件来获得有用的信息。

遇到问题多与老师同学讨论,可以帮助自己跳出思维定势。

7.37.3实践感受实践感受每次的课程设计都是对我们所学知识的一个深化,在实践过程中能遇到许多的问题,遇到问题分析问题解决问题,这样对知识的理解得到一个升华。

实践过程中学到的都是印象非常深刻的,所以以后要多参加这样的实践,认真对待每一次机会。

佛山科学技术学院课程设计用纸6参考资料参考资料1、计算机操作系统教程(第2版)张尧学史美林编著清华大学出版社2、操作系统实验指导任爱华李鹏刘方毅清华大学出版社3、操作系统实验教程核心技术与编程实例顾宝根王立松顾喜梅科学出版社4、C+编程思想Bruck著侯捷译机械工业出版社5、C语言程序中清除键盘缓冲区的方法杨长虹益阳职业技术学院学报佛山科学技术学院课程设计用纸7附附录录#include#include#include#include#include#include#include/*定义全局变量*/charroot_dir3;

charpre_dir255;

char*cmd_line255;

charcuruser10;

structuserinfcharusername10;

charuserpass10;

/*函数申明*/voidinit();

intlogin();

intgetcmd();

voiddir();

voidcd();

voidclear();

voidnewdir();

void

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1