Linux嵌入式实训.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux嵌入式实训Linux嵌入式实训

桂林电子科技大学信息科技学院 《嵌入式操作系统实训报告》 学 号 1052100516 姓 名 陈巨华 指导教师:韩桂明 张锟 赵志鹏 2014 年 4 月 7日 实训题目:机房辅助管理系统设计 1 系统设计 1.1 设计要求 1.1.1 设计任务 在Linux环境下利用 shell设计和实现机房的辅助管理系统编辑生成上机课表并自动生成上机用户,进行用户课前和课后管理1.定义起始登陆界面 能显示三种信息:能根据登录用户显示欢迎对象、根据系统时间显示欢迎内容个性化的欢迎信息;有系统初始化、系统管理和退出三个菜单项操作提示菜单;能显示当前上课的具体时间和系统状态提示信息。 2.系统初始化 生成本机房的上机安排表:上机安排表至少包含十条记录,每条记录应有课程 、班级、起至周、上课节等内容,能对安排表进行显示、添加、删除。 生成本机房的上机用户:根据上机安排表自动生成对应的上机用户,一个用户对应于安排表的一条记录,且账号= 班级+课程;密码=班级+课程号 3.课前准备 为用户创建一个工作环境:工作空间和用户资料。 4.课后整理: 释放用户空间,进行资料收集。 2 各个模块程序的设计 2.1主界面模块 主界面可以根据当前的时间提示现在是第几节课或者是休息时间,右下角还显示了系统当前的时间,方便查看。这个界面提供了登录类型的选项,通过case语句选择相应的类型。教师登录要根据tea.txt中储存的账号来判断,而学生登录的上机用户是自动生成的,根据上机安排表,用户名是班级加课程名,密码是班级加上课程序号。在源代码中,实现起来很简单,`date +%H`是当前的小时,如果%m是分钟,加在一起可以用来判断当前的时间。选择就是利用case语句,选择相应的登录类型,还提供了一个退出程序的选项在实际应用中还是有自己的价值的。这次的实训中,我的设计是各个模块在不同的shell脚本里,这样编写的时候可以省却一点麻烦,要不使用break会有点繁琐。 2.2教师管理模块 教师登录先是经过一个登录界面,登录的账号储存在事先编辑的tea.txt中,在输入密码的过程中,采用了-s的一个控制,使密码保密性提高,防止泄露。如果账号密码正确的话,就可以跳到这个界面。界面上方显示欢迎当前用户。这个是在teecher.sh中编程的,首先通过一个do循环来读取键盘上输入的选项,这样可以不用输入回车符,同时采用了一个echo -e \033[?25l指令隐藏了鼠标,使界面更加美观。输入数字后,利用case选择相应的功能,可以显示课程,显示上机用户,添加课程,排序,删除课程等。添加课程时,程序会对subject.txt和user.txt同时修改,添加课程的同时,就生成了相应的上机用户。显示用户时,会对密码进行隐藏。删除课程的同时,也会删除相应的上机用户。返回和退出就是回到主界面和退出程序。排序有两种模式,一个是按班级排序,一个是按课号排序。在使用各个功能的同时,为了显示方便使用了界面显示的子函数,配合clear使用,是代码更加简洁。 最后,程序还提供了返回初始界面和退出程序的必须功能 2.3学生模块 学生模块就先要经过一个类似教师登录的界面,会有提示语句显示用户和密码应该是什么。与user.txt内容核对成功后来到该界面。键盘输入值后,同样的利用case语句选择相应的功能,这次我在程序里提供了两个功能,一个是课前准备,另一个是课后管理。课前准备有两个操作,一个是挂载u盘,通过mount语句来实现,挂载后可以在使用u盘里的数据。值得注意的地方是在/mnt/目录下应该要先建立好usb这个目录,要不然挂载会失败。另一个操作是自动生成以当前用户名为名称的目录,成功的话会有语句提示,让用户在该目录下经过课业活动。课后整理相对于课前的操作,就是卸载u盘,打包压缩工作目录以便提交或带走,压缩的名字就是当前的用户名。之后删除原来的工作目录,以释放空间。提供了选项返回初始界面。 3 调试过程 在做这个系统的时候,首先要对shell里的指令有足够的了解。在这个脚本里,主要运动了do,case,if这几个循环和条件语句,用于判断和查找等。为了使用方便,把界面做成了一个子函数,需要的时候使用clear加界面函数,加上显示的内容会比较方便。选择的时候,使用了while do语句,这样可以实现不用回车符就做出选择,在实际应用中比较方便。在教师管理模块的设计中,原本采用的是if语句,但是在实际应用中觉得使用if语

文档评论(0)

skewguj + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档