吴强 刘其奇 杨全胜 徐造林 王晓蔚
摘要:针对计算机专业学生嵌入式系统实验主要为应用型实验,缺乏系统能力锻炼的情况,提出系统能力培养方法,提出增加嵌入式系统软件的分析、移植和设计等实验环节,使学生能够全面地学习嵌入式系统的软、硬件知识,为今后进行更高层次的设计打下基础。
关键词:嵌入式系统实验:系统软件;软件分析与设计;软件移植
引 言
目前,绝大多数院校和专业在开设嵌入式系统课程和实验的时候都是以嵌入式应用系统实验为主。诚然,大量缺乏嵌入式系统应用型开发人员是现状,但是实际上还有一类人才更为缺乏,那就是有系统观的嵌入式系统开发人员。高校的计算机专业担负着为国家培养更高端人才的责任,培养系统级开发人员也迫在眉睫 。
1 传统嵌入式系统课程实验存在的问题
1.1 理论与实践脱节
传统嵌入式教学都是以教学为主、实验为辅。学生们能很好地掌握嵌入式系统的系统结构、硬件接口、编程语言,但若进行嵌入式系统产品开发,真正能动手的学生就不多了。
1.2 教学、实验内容与社会需求脱节
嵌入式课程作为一门交叉学科,更新的速度日新月异,而在教学过程中,教学大纲往往得不到及时更新,教材得不到及时更换,因此出现了教学内容跟不上社会对嵌入式人才需求的情况。
1.3 以应用为主,缺乏系统能力培养
许多高校都增加了实验课的比重,尽管学生们可以在实验设备上进行一些实验,但由于实验设备大多是由生产厂家做好的,程序大多数也是由厂家提供的,许多学生做实验只是将现成的程序下载到实验设备上,观察一下结果,其动手能力得不到真正的提高,而且设置的实验基本上都是以实际应用为主,学生无法培养和锻炼系统能力,以至于学生缺乏设计系统的能力 。
2 进行教学改革的意义
从上述嵌入式系统课程教学与实验的现状看,目前教学普遍存在着重应用、轻系统的问题,特别是相关实验基本上都是嵌入式系统应用实验。我们认为高校计算机专业的学生除了掌握嵌入式系统应用,更应该具备嵌入式系统软件的分析和设计能力。因此非常有必要在计算机专业开设嵌入式系统软件分析与设计的实验。如果计算机专业学生能够通过嵌入式实验对嵌入式系统软件进行分析及设计,就能够更好地提升学生系统软件设计能力,在参加嵌入式系统竞赛、教师科研、毕业设计及工作后进行嵌入式系统开发设汁中也能够快速上手,高质量地完成开发任务。
我们知道,计算机专业有着深厚的工程背景,是卓越工程师计划实施的主要专业之一,如何在我们的人才培养和教学理念上体现出研究型人才与卓越工程师培养这两个方面是我们一直研究的重要内容。
在长期的实验教学过程中,我们逐渐形成了“强化基础、软硬结合、立足系统、面向应用、加强实践”的教学与人才培养理念以及培养“具有系统能力和实践创新能力的卓越人才”的培养日标 。
我们提出的“基于系统软件分析与设计的嵌入式系统实验的探索与实践”教改思路就是基于上述理念。一方面进行基于系统软件分析与设计的嵌入式系统实验的探索与实践,可以提高计算机专业学生系统软件设计能力,培养出高端的嵌入式系统软件级设计人才;另一方面,鼓励学生设计出具有自主知识产权的嵌入式系统软件,改变绝大多数嵌入式系统软件来自国外的现状,为国家发展基础系统软件做出自己的贡献。
3 具体教学改革方案
3.1 嵌入式操作系统微核心的分析、研究与设计
通过对比性能,我们选择规模适合、源码公开的嵌入式操作系统微核心,从其结构人手,对源码进行分析并移植到实验室具备的嵌入式实验平台;在源码基础上,设计部分扩展的系统软件功能 。
3.2 文件系统的分析、研究与设计
分析嵌入式文件系统,以嵌入式实验平台的MicroSD卡为存储媒介,实现文件管理,完成文件的基本操作,包含有文件的创建、删除、打开、关闭、文件读、文件写等;实现存储介质的选择、逻辑到物理的转换;完成对几个主要数据结构的初始化,设置文件系统的总体分区信息以及每个分区的几部分——引导区、FAT区、文件存储区等,完成存储介质的驱动程序 。
3.3 设备管理分析、研究与设计
分析现有的嵌入式外围设备管理方法,实现嵌入式外围设备管理,具体包括:ROM存储器、RAM存储器、FLASH存储器、EPROM存储器、嵌入式计算机与机电系统接口(如串口、以太网接口、12C接口以及USB接口等)、触摸屏幕、LCD显示屏幕等。
3.4 图形用户接口(GUI)分析、研究与设计
GUI是当今计算机发展的重大成就之一,它方便了用户,避免记-忆大量命令,取而代之的是通过窗口、菜单、按键等方式进行操作。GUI是一个较为复杂的嵌入式系统软件,对现有的GUI系统软件进行分析研究,设计出自己的GUI系统是一件极具挑战的工作 。
3.5 基于嵌入式系统的通讯协议分析、研究与设计
在嵌入式系统实际应用中,通讯功能是非常重要的,各种通讯协议的特点决定了它们需要操作系统的支持,学生通过学习已有的协议栈,将其移植到选择好的嵌入式操作系统中。
3.6 外设驱动程序分析、研究与设计
外设驱动程序可以对系统提供访问的外围设备的接口,我们把嵌入式操作系统(系统软件)和外围设备(硬件)分离开,这样当外围没备改变时,只需要更换相应的驱动程序,不必修改操作系统的微内核及运行在嵌入式操作系统巾的软件。所以学习如何设计外围设备的驱动程序是一个非常重要的环节。
总之,我们的改革目标就是:从各个模块的分析人手进行移植和设计,在全部模块设计完成之后再进行优化、整合,最终完成既定的目标系统(嵌入式微型操作系统),在实验平台上完成若干由嵌入式系统软件支持的实际应用实验。学生通过系统的训练,能轻松地掌握基于嵌入式操作系统的完整开发过程,同时也积累了工程开发的经验,鼓励学有余力的同学编制嵌入式系统软件。
考虑到实验难度较高,实验时数有限制,实验采用分组方式,即将实验学生分成若干小组,每个小组由4-6人组成,采用组长负责制,小组长产生的方式主要通过学生毛遂自荐产生,该方式在“计算机系统综合课程设计”(此课程2009年被评为“教育部一英特尔精品课程”)中已经采用,学生踊跃报名,效果很好。由小组长负责指派小组成员完成各个模块的分析和设计,在全部模块设计完成之后,再进行优化、整合,最终完成既定的目标系统(嵌入式微型操作系统)。教师通过答辩方式完成验收,某组答辩时,欢迎其他小组参加,达到取长补短,共同提高的目的 。
4 结语
设计采用top-down方式,首先确定实验目标是实现一个基于嵌入式的微型操作系统,然后将这一个目标系统逐层细分,形成各个子模块(如文件子系统、设备管理子系统及GUI等)。这样做的好处是整个实验目标明确,系统关联性强,便于学生在宏观上把握各个模块和整体系统的关系。
学生的实验过程采用bottom-up方式,即先从各个模块的分析人手,进行移植和设计,在全部模块设计完成之后,再进行优化、整合,最终完成既定的目标系统(嵌入式微型操作系统)。学生通过这样的训练,能轻松地掌握嵌入式操作系统的完整开发过程,同时也积累了工程开发的经验。
我们已经将基于嵌入式系统软件分析、研究与设计的改革实验方案应用于计算机学院嵌入式系统课程及配套实验中。学生在实验中感觉有不少的难度,但做完后普遍感觉收获很大。经过了解,一些从事嵌入式系统应用科研开发或进行课外研学及毕业设计的学生普遍觉得上手快、有自信。