ImageVerifierCode 换一换
格式:PDF , 页数:19 ,大小:454.94KB ,
资源ID:16119985      下载积分:15 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16119985.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《操作系统课程设计说明书》参考样版资料下载.pdf)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

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

1、1、命令解释器2、列目录命令3、显示时间命令4、显示日期命令5、回显字符串命令6、创建目录命令7、删除目录命令8、更改路径命令9、显示当前工作目录命令10、删除文件命令11、打印文本命令12、文件重新命名13、显示文本命令14、显示版本命令15、显示目录结构命令16、清除当前显示内容命令上述内容中,所有命令通过命令解释器能够执行,即启动命令解释器以后,输入相应命令,按照输入指令执行相应功能,并在屏幕上显示相应结果。三、三、具体要求具体要求本设计的目的是通过设计一些简单的操作系统的命令接口,使学生掌握操作系统接口的设计方法。要求学生在熟悉操作系统的命令接口及程序接口的基础上,利用 C 语言设计简

2、单的命令接口。命令接口基于 DOS 的命令行接口。佛山科学技术学院课程设计用纸四、四、进度安排进度安排依照教学计划,课程设计时间为:2 周。1.要求讲解、资料查找、系统分析,概要设计(2 天)2.系统详细设计、功能设计(2 天)3.算法实现、编程调试(5 天)4.功能演示、资料整理、课程设计说明书编写。(1 天)五、五、完成后应上交的材料完成后应上交的材料课程设计说明书纸质文档六、六、总评成绩总评成绩指导教师指导教师签名日期签名日期年年月月日日系系 主主 任任审核日期审核日期年年月月日日佛山科学技术学院课程设计用纸目录一、程序概述.11.1 完成的任务.11.2 解决的问题.1二、概念原理.1

3、2.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 与屏幕显示相关的中断调用进行设计的,主要完成要求中所提到的功能如:可打开提示符,并获取用户输入的指令、可解析指令、可寻找命令文件、可执行基本的命令。在本设

4、计中,设计了一个 dos 命令提示行,初步实现了系统登陆、用户帐户管理、命令解析、基本命令的实现。1.21.2 解决的问题解决的问题在设计过程中主要遇到了两个难题,一个是有关文件的操作,另一个是有关系统调用问题。由于课题是要模拟命令处理器功能,命令处理器命令中有大部分是文件的操作,有关文件夹的创建与删除,文件的操作,当前目录等一系列问题都是有待解决的;并且由于本身做的就是一个命令处理器那么就不能再使用系统中原有的命令处理器命令,通过与老师讨论,可以使用系统调用解决这一问题。在查阅了库函数后基本确定了,可以使用包含在“doc.h”和“dir.h”中的 findfirst()、findnext()

5、、dir()、dir()完成以上功能,并且它们会将文件信息保存在一个 Struct ffolk 结构体中,定义如下:struct ffblk char ff_reserved 21;/*DOS 保留字*/char ff_attrib;/*文件属性*/int ff_ftime;/*文件时间*/int ff_fdate;/*文件日期*/long ff_fsize;/*文件长度*/char ff_name13;/*文件名*/二、二、概念概念原理原理2.12.1 基本概念基本概念命令接口处理器命令接口处理器命令处理器是一个读入并解释你输入的命令的程序,它是介于使用者和操作系统之核心程序(kernel)

6、间的一个接口。它是一个交互性命令解释器。命令处理器独立于操作系统,这种设计让用户可以灵活选择适合自己的命令处理器。命令处理器让你在命令行键入命令,经过命令处理器解释后传送给操作系统(内核)执行。命令提示符命令提示符“命令提示符”也就是 Windows 95/98 下的“MS-DOS 方式”,虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行安全、稳定,有的用户还在使用,所以一般 Windows 的各种版本都与其兼容,用户可以在 Windows 系统下运行 DOS,中文版 Windows XP 中的命令提示符进一步提高了与 DOS 下操

7、作命令的兼容性,用户可以在命令提示符直接输入中文调用文件。消息循环消息循环通过这个循环机制应用程序从消息队列中检索消息,再把它分派给适当的窗口,然后继续从消息队列中检索下一条消息,再分派给适当的窗口,依次进行。系统调用系统调用系统调用,顾名思义,说的是操作系统提供给用户程序调用的一组“特殊”接口。用户程序可以通过这组“特殊”接口来获得操作系统内核提供的服务,比如用户可以通过文件系统相关的调用请求系统打开文件、关闭文件或读写文件,可以通过时钟相关的系统调用获得系统时间或设置定时器等。从逻辑上来说,系统调用可被看成是一个内核与用户空间程序交互的接口,它好比一个中间人,把用佛山科学技术学院课程设计用

8、纸2户进程的请求传达给内核,待内核把请求处理完毕后再将处理结果送回给用户空间。2.2.2 2 基本原理基本原理首先系统登陆,在这一块采用文件的形式保存用户信息。登陆通过后进入提示符界面,同时,此时已进入一个消息循环,不断地接收消息,根据输入的命令进行解析,然后执行命令,遇 exit 命令退出。基本流程图:三、总体设计三、总体设计3.13.1 实现方法实现方法程序主要通过文件来存储帐户信息。登陆时,根据用户名查找帐号名,核对密码。进入提示符后,首先初始化。在消息循环中运用了一个 while(1)循环,连续的获取用户输入,直到用户输入 exit 退出循环,结束程序。在处理文件或文件夹过程中,没有使

9、用系统当前文件夹变量,只是在程序中单独设定了一个变量作为系统当前目录,每次获得的目录路径,如果是相对路径,则自动在前面加上当前目录路径。3.23.2 技术路线技术路线整个程序的设计流程,围绕着消息循环这一主线,根据消息判断调用不同的功能函数来完成相应的功能,主要使用了一些文件操作的函数。四、详细设计四、详细设计4.14.1 主要函数主要函数void init()显示系统信息,版权信息等,初始化当前目录等信息。int login()显示登陆界面,以及登陆成功与否的判断与结果。正常登陆返回 1。int getcmd()命令获取函数,在消息循环中获取用户输入的命令,并将命令通过空格分隔开,分别存放在

10、一个命令数组中。void dir()列出目录及文件开始系统登陆合法?获取命令解析命令处理命令结束三次?佛山科学技术学院课程设计用纸3void cd()改变当前文件夹void clear()清屏void newdir()新建目录void deldir()删除目录void del()删除文件void copy()复制文件void cut()剪切文件void account()更改用户信息以上均为一般的实现命令处理器功能的命令函数,可以通过相应的调用来实现一般的功能,也可以在其后面加入“/?”来获得帮助。void help()帮助信息,当用户在提示符下直接输入“/?”或在一个命令处理器命令后输入“/

11、?”转至此函数处,显示相关命令的帮助信息。4.24.2 引用函数引用函数int chdir(char*path)使指定的目录 path(如:“C:WPS”)变成当前的工作目录,成功返回 Oint findfirst(char*pathname,struct ffolk*ffolk,int attrib)查找指定的文件,成功返回 0int findnext(struct ffolk*ffolk)取匹配 finddirst 的文件,成功返回 0int mkdir(char*pathname)建立一个新的目录 pathname,成功返回 Oint rmdir(char*pathname)删除一个目录

12、 pathname,成功返回 0五、完成情况五、完成情况在用户登陆方面,完成了简单的,用户名和用户密码的保存更改,核对等操作,对密码文件采用的是记录式的读写。但是,本程序中并未实现记录的删除以及用户信息的加密。在命令处理机命令方面,基本实现了几个比较常用的命令,但参数还不够非富,并且对参数的输入,以及路径等的解析还不够智能化,输入命令时必输按固定的格式。在当前目录方面,没有使用系统调用中的设置当前目录的函数,而是自己定义了一个变量用于存入当前目录,每次操作文件或文件夹时,都要将相对目录转化为绝对目录才能进行操作。另外还有一个问题,就是命令对大小写敏感,这对于基于“Windows”平台的命令处理

13、机是一大缺点。因为在命令解析中用了简单的字符串比较,所以对大小写敏感。六、使用说明六、使用说明启动程序,首先会出现下图所示的登陆界面,在 Login 后面输入用户名,在 Password 后面输入密码,如果用户名密码正确,那么进入系统,否则返回到登陆界面,如果连续输错三次,那么程序自动退出。佛山科学技术学院课程设计用纸4进入系统后,首先出现版权信息等,然后就是出现提示符了如下图,用户可以输入“/?”查看当前系统支持的命令及作用等信息。如果想使用某个命令,那么可以先查看使用帮助,方法为:先在提示符后输入命令名,加空格后输入“/?”就会出现如下图所示的命令帮助提示,它会告诉用户可以使用哪些参数,各

14、参数的作用等信息。在命令提示符下输入 exit 可以退出系统。七、设计总结七、设计总结7.17.1 系统特色系统特色在本系统中已初步实现一个完整命令处理器的功能,能够正常的解析命令并执行,在解析命令方面,佛山科学技术学院课程设计用纸5采用指针加数组的形式,既可以节约内存资源,又可以自动扩充命令参数。7.27.2 经验教训经验教训在编程过程中要多使用库函数中自带的内容,不必另外再去编写已有的功能,这样不仅能节省时间,也能提高程序的可靠性。要多了解库函数,可以阅读相应的帮助文件来获得有用的信息。遇到问题多与老师同学讨论,可以帮助自己跳出思维定势。7.37.3 实践感受实践感受每次的课程设计都是对我

15、们所学知识的一个深化,在实践过程中能遇到许多的问题,遇到问题分析问题解决问题,这样对知识的理解得到一个升华。实践过程中学到的都是印象非常深刻的,所以以后要多参加这样的实践,认真对待每一次机会。佛山科学技术学院课程设计用纸6参考资料参考资料1、计算机操作系统教程(第 2 版)张尧学 史美林编著 清华大学出版社2、操作系统实验指导任爱华 李鹏 刘方毅 清华大学出版社3、操作系统实验教程核心技术与编程实例顾宝根 王立松 顾喜梅科学出版社4、C+编程思想Bruck 著 侯捷译机械工业出版社5、C 语言程序中清除键盘缓冲区的方法杨长虹 益阳职业技术学院学报佛山科学技术学院课程设计用纸7附附录录#include#include#include#include#include#include#include/*定义全局变量*/char root_dir3;char pre_dir255;char*cmd_line255;char curuser10;struct userinfchar username10;char userpass10;/*函数申明*/void init();int login();int getcmd();void dir();void cd();void clear();void newdir();void

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

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