《嵌入式操作系统》实训报告

上传人:飞*** 文档编号:35853254 上传时间:2018-03-21 格式:DOC 页数:19 大小:181KB
返回 下载 相关 举报
《嵌入式操作系统》实训报告_第1页
第1页 / 共19页
《嵌入式操作系统》实训报告_第2页
第2页 / 共19页
《嵌入式操作系统》实训报告_第3页
第3页 / 共19页
《嵌入式操作系统》实训报告_第4页
第4页 / 共19页
《嵌入式操作系统》实训报告_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《《嵌入式操作系统》实训报告》由会员分享,可在线阅读,更多相关《《嵌入式操作系统》实训报告(19页珍藏版)》请在金锄头文库上搜索。

1、桂林电子科技大学信息科技学院实训报告桂林电子科技大学信息科技学院嵌入式操作系统嵌入式操作系统实训报告实训报告学学 号号 1152100135 姓姓 名名 殷浩殷浩 指导教师:韩桂明,赵志鹏,张锟指导教师:韩桂明,赵志鹏,张锟2014 年年 4 月月 6 日日桂林电子科技大学信息科技学院实训报告实训题目:机房辅助管理系统1 系统设计1.1 设计要求1.1.1 设计任务 以 VM ware 虚拟机软件和 Red hat 9.0 操作系统为平台,使用 shell 脚本编写程序,编辑生成上机课表并自动生成上机用户,进行用户课前和课后的管理1.1.2 性能指标要求 定义起始登陆界面,要求有主菜单选择不同

2、功能。 根据登录用户显示欢迎对象、根据系统时间显示欢迎内容个性化的欢迎信息,有系统初始化、系统管理和退出三个菜单项操作提示菜单,能显示当前上课的具体时间和系统当前状态。 生成本机房的上机安排表,安排表至少包含十条记录(包括课程、上课班级、起始周、节数等信息)能对安排表进行显示、添加、删除、修改、复制、插入、排序等操作。 生成本机房的上机用户:根据上机安排表自动生成对应的上机用户,一个用户对应于安排表的一条记录,且账号= 班级+课程;密码=班级+课程号。 课前准备:包括为用户创建一个工作环境:工作空间和用户资料、挂载 U 盘、拷贝上课文件资料、设置文件目录的权限属性等。 课后整理:释放用户空间,

3、更改文件目录权限,打包压缩文件,卸载 U 盘,删除用户目录下创建的工作目录等。1.2 设计思路及设计框图1.2.1 设计思路对于题目的理解,我决定这次机房管理分作两个部分,分别是教师管理,和学生用户管理。进入教师界面后,会相应的有密码设置,系统初始化,以及对学生资料的设置。而在系统初始化中,要有对一个课程安排表的一些操作,添加删除显示等等。在学生资料界面中,同样也是对学生资料进行添加删除显示等。教师管理中的学生资料很重要,因为学生用户输入的账号和密码,是与教师管理的学生资料对应的,账号是要从资料中读取班级和课程,密码则是班级和课号。在进入学生管理界面后,需要有以下的一些操作,比如创建一个工作空

4、间,能够对一些文件夹进行压缩打包,关闭一个文件夹的使用权限,以及 U盘挂载等等。1.2.2 总体设计框图 桂林电子科技大学信息科技学院实训报告系统流程图2 各个模块程序的设计2.1 登陆界面模块登陆界面可以根据登录用户显示欢迎对象、根据系统时间显示欢迎内容个性化的欢迎信息,有系统初始化、系统管理和退出三个菜单项操作提示菜单,能显示当前上课的具体时间和系统当前状态主界面管理员界面学生界面课前安排表入 口学生资料1.添加2.显示3.修改4.删除5.复制1.添加学生2.显示学生3.修改学生4.删除学生创建工作环境创建文件课后1.打包压缩2.删除文件夹3.挂载 U 盘4.退出桂林电子科技大学信息科技学

5、院实训报告2.2 管理员模块2.2.1 管理员欢迎界面从主界面登录到管理员界面需要输入帐号和密码,帐号和密码固定为 admin 和admin,如果想修改,可以进入程序内修改即可。管理员可以对学生的课程作出安排,并且可以查看修改安排表。同时也能对上课学生的信息进行查看、添加、修改、删除。2.2.2 安排表管理模块管理员可以对学生上课的安排表进行查看、添加、修改、删除。2.2.3 学生资料管理模块管理员可以对上课学生的信息进行查看、添加、修改、删除。2.3 学生模块2.3.1 学生欢迎界面模块 学生登陆后可以显示对应的问候语,同时能显示出当前的时间。桂林电子科技大学信息科技学院实训报告2.3.2

6、学生课前模块 学生在上课之前可以先创建工作环境,创建对应的文件夹和上课所需的文件。桂林电子科技大学信息科技学院实训报告2.3.2 学生课后模块 下课后,学生可以对上课做的东西进行打包并复制到 U 盘,同时删除自己的文件,避免影响后面来上课的学生。桂林电子科技大学信息科技学院实训报告3 调试过程编写程序时完全不知道从哪里下手,无奈只能去查找网上的资料,翻看了好几本书,但在编程过程中还是遇到了很多问题。首先执行不了的是删除程序,我用的是 case 语句,用户可以输入想要删除的课程的所有相关信息,比如输入 math,那么系统会找到 math 这个课程的所有相关信息,但是运行后发现会显示错误,并且还把

7、所有课程安排都删除了。后来参考了别的同学的程序,知道可以用 sed d这样的语句进行删除,但是删除只能删除一整行,而不能根据之前的想法找到再删除,并且上网查找,也找不到更好的删除方式,于是就用了这样的方法,并且做了修改,后来就能成功删除了。另外在整个程序中,纠结了最久的就是学生用户登陆输入账号和密码这一块。这一部分需要用到一个 txt 文件,我把教师界面的学生信息都放到这个 txt 文件中,之后在学生管理方面,我用了一个 sh 文件对 txt 文件中的每一行的班级、课程、课号进行了读取,使它们分别等于一些变量,之后再在学生登陆的时候用了 case 语句,判断输入的变量是否与班级、课程、课号构成

8、的账号和密码相对应。在做完这些工作以后,运行发现无论怎么输入,都会显示 error。第一次检查程序的时候发现是读取 txt 的 sh 文件并米有输入#!/bin/sh,所以这个文件便执行不了。再运行一次以后,发现还是输入错误,若是一直按回车键,结果却又是正确的,可是反复检查,发现并没有语法错误,逻辑也都对着。后来找了个同样是这种方法并且能运行正确的同学帮我看了程序,一开始我们把 var中括号的值全部减小了 1,再运行的时候发现还是不对,最后我们又检查了一下 case 语句的所在位置,猜想可能是判断 case $zh$ pw in 中的变量出现了问题,于是试着把变量输入了两回,$zhzh$pwp

9、w,再运行的时候,就成功了。还有最后一个问题,就是学生管理界面中的删除文件夹这一块。在执行删除用户文件夹前,我先创建一个用户文件夹,那么到要删除的时候就该是删除此文件夹,可是我的程序运行出来以后,删除的是上一次创建的用户文件夹,而这一次创建的用户文件夹则在下次删除时才被删除。但是在检查程序的时候,也没有看出什么不正确,试过把user user.txt 这个语句给屏蔽掉,但是出来的结果是把该用户文件夹同一个目录下的所有的文件和文件夹会全部删去,所以删除这个部分还是并没有最终成功。 4 功能测试4.1 测试仪器与设备 笔记本VM ware 虚拟机Red hat 9.0 操作系统4.2 性能指标测试

10、 主程序测试:运行 main.sh,输入 1 时能进入管理员界面的密码输入功能,并且输入登陆以后,会显示用户名为欢迎对象。输入 2 时进入学生管理界面的密码输入功能,且密码输入正确的话桂林电子科技大学信息科技学院实训报告会进入管理界面,如果不正确则会显示错误并回到 main 界面。按 3 时会退出管理系统。 管理员界面测试:当管理登陆后,选择 1 可以对学生的安排表进行查看、修改、添加、删除;选择 2 可以对上课学生的信息进行修改、删除等操作。 学生界面测试:按 1 是能够在当前目录下建立一个学生用户的文件夹,由 if 语句提问是否要在这个文件夹里新建文件或文件夹,选择是以后能建立在用户文件夹

11、里,若选择不是则退回到学生管理界面。按 2 则是可以对任一文件夹进行打包。按 3 是能够进行 U 盘挂载,会首先先生成一个 usb 为名字的文件夹,之后 U 盘中的所有文件夹会在该文件夹中显示。按 4 则是能够删除 1 时所新建的学生用户文件夹。按 5 则是退回到 main 的界面。 5 实训心得体会刚拿到题目的时候其实很迷惑,不太清楚究竟是要分多少个方面来进行编程,以及究竟是要实现多少功能。刚开始按照自己的理解,我只做了在一个界面下包括密码设置,系统初始化和学生资料设置,之后后来去实验室跟同学聊起题目的时候,才知道题目上的上机用户应该是指学生,所以还要创建一个学生界面,而且学生界面登陆账号和

12、密码就是教师管理下的学生资料设置中的班级+课程,班级+课号。另外学生界面中需要有一些功能,分别是创建用户空间,压缩,关闭使用权等,后来就又重新写了一份整个系统的各部分结构设计图。这次实训做下来,其实很多想法都是用到像 c 语言中的思想,因为同样都有while,case,if 语句,虽然只是命令的表示不一样,但是思想是相同的。利用这些,就基本把本次实训的总体框架构建了出来。另外在这次实训中,我还学会了一种新的思想,就是可以读取一个文本文件中的内容,以及添加内容,删除内容等到文本文件中。首先要先创建一个文本文件,之后用 read 语句,可以读取文本中的内容,用 echo “”txt 还可以把新添加

13、的内容添加到文本中。通过上网查询一些指令,使用一些命令,让我更熟悉一些命令的使用,比如复制文件夹 cp -r,删除文件或文件夹 rm -rf,改变文件夹的权限chmod *。在程序中,我多次用到了 echo -e “E031;42m“,这个语句是改变窗口颜色的,只要修改里面的数值,就可以变出不同的颜色。这次实训将上学期所学到的嵌入式理论融入到实际中,让我加深了不少印象。在之前学完嵌入式理论课后,我个人感觉已经把这个基础都差不多弄懂了,可在实训中我才深深的明白自己掌握的不够,各种语法,形式不能自如的运用,还是需要多下心思研究,一门语言是十分深奥的,需要很多时间的铺垫才能很好的掌握。这次的实训让我

14、收获不少,不仅巩固了我的理论知识,同时增强了我的动手能力!6 参考文献(1) 嵌入式 Linux 应用编程 许信顺 贾智平 机械工业出版社.桂林电子科技大学信息科技学院实训报告附录附录:程序清单主界面程序:#! /bin/shecho -e “E031;42m“flag=1while($flag)doecho “*“echo “ Welcome “echo “ 1.admin 2.student“echo “ 3.exit“echo “*“echo “ date +%D date +%T“read ucase $u in1)./teacher.sh;2)./xspassword.shecho

15、“input your class+course“read zhecho “input your password“read -s pexport zhcase $zhzh$pwpw in$A$B)./xueshengjiemian.shbreak;桂林电子科技大学信息科技学院实训报告$C$D)./xueshengjiemian.shbreak;$E$F)./xuehsengjiemian.shbreak;$G$H)./xueshengjiemian.shbreak;$I$J)./xueshengjiemian.shbreak;$K$L)./xueshengjiemian.shbreak;$O$P)./xuehsengjiemian.shbreak;$Q$R)./xuehsengjiemian.shbreak;$S$T)./xueshengjiemian.shbreak;$U$W)./xueshengjiemian.sh桂林电子科技大学信息科技学院实训报告break;*)echo error;esac;3)echo -e “E030;47m“flag=0exit 0;esacdone管理员登录程序:#! /bin/shecho -e “E031;40m“echo “input your name“read xexport xecho “input password“read -

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号