1 / 18
文档名称:

linux电气工程.嵌入式实训.doc

格式:doc   大小:156KB   页数:18页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

linux电气工程.嵌入式实训.doc

上传人:plm860108 2018/6/24 文件大小:156 KB

下载得到文件列表

linux电气工程.嵌入式实训.doc

文档介绍

文档介绍:桂林电子科技大学信息科技学院
《嵌入式操作系统实训报告》
学号 1052100516
姓名陈巨华
指导教师:韩桂明张锟赵志鹏
2014 年 4 月 7日
实训题目:机房辅助管理系统设计

1 系统设计
设计要求
设计任务
在Linux环境下利用 shell设计和实现机房的辅助管理系统,编辑生成上机课表并自动生成上机用户,进行用户课前和课后的管理。
性能指标要求

能显示三种信息:能根据登录用户显示欢迎对象、根据系统时间显示欢迎内容个性化的欢迎信息;有系统初始化、系统管理和退出三个菜单项操作提示菜单;能显示当前上课的具体时间和系统状态提示信息。

生成本机房的上机安排表:上机安排表至少包含十条记录,每条记录应有课程、班级、起至周、上课节等内容,能对安排表进行显示、添加、删除、排序。
生成本机房的上机用户:根据上机安排表自动生成对应的上机用户,一个用户对应于安排表的一条记录,且账号= 班级+课程;密码=班级+课程号

为用户创建一个工作环境:工作空间和用户资料,挂载u盘,以便使用资料。
:
释放用户空间,进行资料收集,卸载u盘,方便资料携带。
设计思路及设计框图

在linux系统中,shell脚本是个重要的工具,利用shell脚本,我们可以编写一个简单的系统,实现基本的功能,如登录,编辑文件,生成数据等。应用到该系统中,可以编写不同的登录类型,在不同的类型里又可以实现不同的功能,比如教师登录可以对上机安排表进行管理,如显示、添加、删除、排序等。学生登录后可以对自己的工作空间进行管理,如创建,挂载,打包压缩,卸载等。同时,根据系统的时间,可以提示不同的内容,如第几节课,当前的用户等等。

主界面
学生
教师
删除
添加
排序
显示
课前
课后
2 各个模块程序的设计



主界面可以根据当前的时间提示现在是第几节课或者是休息时间,右下角还显示了系统当前的时间,方便查看。这个界面提供了登录类型的选项,通过case语句选择相应的类型。,而学生登录的上机用户是自动生成的,根据上机安排表,用户名是班级加课程名,密码是班级加上课程序号。在源代码中,实现起来很简单,`date +%H`是当前的小时,如果%m是分钟,加在一起可以用来判断当前的时间。选择就是利用case语句,选择相应的登录类型,还提供了一个退出程序的选项在实际应用中还是有自己的价值的。这次的实训中,我的设计是各个模块在不同的shell脚本里,这样编写的时候可以省却一点麻烦,要不使用break会有点繁琐。


教师登录先是经过一个登录界面,,在输入密码的过程中,采用了-s的一个控制,使密码保密性提高,防止泄露。如果账号密码正确的话,就可以跳到这个界面。界面上方显示欢迎当前用户。,首先通过一个do循环来读取键盘上输入的选项,这样可以不用输入回车符,同时采用了一个echo -e "\033[?25l"指令隐藏了鼠标,使界面更加美观。输入数字后,利用case选择相应的功能,可以显示课程,显示上机用户,添加课程,排序,删除课程等。添加课程时,,添加课程的同时,就生成了相应的上机用户。显示用户时,会对密码进行隐藏。删除课程的同时,也会删除相应的上机用户。返回和退出就是回到主界面和退出程序。排序有两种模式,一个是按班级排序,一个是按课号排序。在使用各个功能的同时,为了显示方便使用了界面显示的子函数,配合clear使用,是代码更加简洁。最后,程序还提供了返回初始界面和退出程序的必须功能


学生模块就先要经过一个类似教师登录的界面,会有提示语句显示用户和密码应该是什么。。键盘输入值后,同样的利用case语句选择相应的功能,这次我在程序里提供了两个功能,一个是课前准备,另一个是课后管理。课前准备有两个操作,一个是挂载u盘,通过mount语句来实现,挂载后可以在使用u盘里的数据。值得注意的地方是在/mnt/目录下应该要先建立好usb这个目录,要不然挂载会失败。另一个操作是自动生成以当前用户名为名称的目录,成功的话会有语句提示,让用户在该目录下经过课业活动。课后整理相对于课前的操作,就是卸载u盘,打包压缩工作目录以便提交或带走,压缩的名字就是当前的用户名。之后删除原来的工作目录,以释放空