论文部分内容阅读
【摘要】针对现有操作系统实践教学环节的不足之处,基于前沿领域和社会的需求,建立了以Linux实验平台为基础,TinyOS系统为补充的操作系统实践教学方法,这种基于多平台多层次的实验具有多样性和灵活性,为学生提供了选择的余地,激励了个性化学习,有利于多专业方向学生的培养。
【关键词】操作系统 TinyOS 多层次
【中图分类号】G64 【文献标识码】A 【文章编号】2095-3089(2015)10-0246-01
一、操作系统实践教学的现状与问题
操作系统一直是计算机专业的必修课程,在培养计划和教学工作中备受重视。作为计算机系统上的最核心的系统软件,操作系统本身一直与时俱进,不断发展。国外的学校如Princeton University的操作系统实验课程在于构造一个真正的操作系统。另一部分国外的学校,采用了模拟仿真平台,如University of California at Berkeley在仿真MIPS平台构造操作系统。国内的部分学校采用如WRK等模拟平台,但其实际应用价值较低。考虑操作系统的实践教学过程中既要有实用价值又要兼顾知识先进性的特点,在Linux应用性实验的基础上,增加基于TinyOS的简单的分析性实验,以及具有梯度难度的设计创新实验,在操作系统的实践教学环节中具有十分广阔的应用前景和潜在的实用价值。
二、构建实践教学体系
1.知识体系的构建
对于操作系统教学大纲中前导课程,如C或者VC程序设计、数据结构、组成原理等课程要有一定的掌握,此外,本校将Linux操作系统课程和操作系统原理同时开课,有助于实践课程的开展。
2.实验环境的构建
基于多平台的实验环境搭建比较复杂,环境主要分为软件和硬件两个部分。软件方面:在win7系统下安装了WMWare10软件,在WMWare10的基础之上,创建了CentOS5.5虚拟机和TOS虚拟机,并安装gcc用于程序编译和运行。TOS是集成了UBUNTU和TinyOS2.x的系统,用于TinyOS的分析和开发实验平台。硬件方面主要有MSP430微处理器和温湿度传感器等。
3.基于TinyOS的分析性设计
第一层TinyOS内核分析与改写实验,实验目的在于深入掌握操作系统原理,培养初步的系统分析与设计能力。实验一是TinyOS内核分析阶段,通过阅读TinyOS内核源代码,学习操作系统各个组成部分的实现机理,巩固操作系统原理知识。实验过程中,首先对TinyOS系统的应用范围、文件夹的功能和Nesc语言做简单的讲解,在此基础上,由学生分析TOS/system文件夹的内核文件,并生成相应的分析报告。实验二是通过Blink应用来看组件、接口、command和event在实际应用中的作用,来理解TinyOS的简单编程模式。
4.基于Linux的应用性实验设计
第二层实验是基于Linux内核的综合性实验,难度适中。TinyOS内核虽然简单,易于理解,但是只基于TinyOS的实验并不完整,还要借助于Linux实验平台。因此基于Linux平台设计了3个实验。
实验一为通过分析代码,学习Linux 模块机制的实现过程。通过该实例掌握如何编写模块程序,并进一步掌握内核模块的机理。实验二是统计操作系统缺页次数,以及总运行时间,来学习虚拟内存的基本原理和Linux虚拟内存管理技术,并深入理解和掌握Linux 的按需调页过程。实验三是使用共享内存来完成进程间通信。要求建立一个利用共享内存机制的,关于经典同步问题readers/writers 的解决方案。writer 从用户处获得输入,然后将其写入共享内存,reader 从共享内存获取信息,然后再在屏幕上打印出来。通过该实验理解 Linux 关于共享内存的概念,掌握Linux支持进程间内存共享的系统调用,进一步巩固掌握进程同步的概念。
5.基于TinyOS的设计创新性实验设计
第三层实验是基于TinyOS的设计创新性实验,该类实验以TinyOS提供的一系列的组件为基础,通过驱动的编写和协议的实现,实现具有应用价值和参赛价值的实验。第一个实验是任务调度算法改进实验,通过改变部分内核源程序,改变系统行。TinyOS系统中的任务调度非常简单,只使用了事件驱动的单线程任务调度机制,和传统OS的多线程调度机制截然不同,因此,通过编写部分调度算法的代码,来理解任务调度的理论和算法。第二个实验是TinyOS下大棚温湿度感知,通过该应用程序的设计和实现,来学习设备驱动程序的编写,理解I/O设备的层次,设备控制和中断等概念。
三、效果分析
通过以上三层实验,使学生能够在有限的时间内系统地掌握操作系统基本概念、主要功能、工作原理和实现技术;能够熟练使用至少一种操作系统操作环境;能够在熟练操作的基础上进行嵌入式开发;能够设计简单的操作系统组成模块;能够引导本科生,深入理解计算机五大功能的实现机理和过程,创造性地构造新算法、添加新功能,提高创新和参赛能力;基于团队的多平台的实验模式,有助于激发学生学习操作系统的兴趣和主动性,训练其分析问题、解决问题的综合能力,培养团队协作能力。
四、结束语
操作系统本身的复杂性和包含学科知识的多样性,给操作系统的实践教学带来了高难度,因此,采用不拘形式的实践教学方法和手段,为学生提供多样化的灵活的实验平台和实验方法,不仅可以鼓励学生根据自身水平,选择适合学习方式、数量和难度的实验,而且有助于提高学生的学习兴趣,使学生的能力得到充分的发展和提高。
参考文献:
[1]http://www.tinyos.net/tinyos-2.x/doc/html/.
[2]ArieiT,AltunbasakY.Adap tiveSensingforEnvironmentMoni toringUsingWirelessSensorNetworks[J].IEEEWCNC,2004,5(I).
[3]李红卫,殷常鸿.构建操作系统实践教学体系.计算机教育.2008(6).
[4]刘文峰,李程远,李善平.嵌入式LINUX操作系统的研究。浙江大学学报.2004(4).
【关键词】操作系统 TinyOS 多层次
【中图分类号】G64 【文献标识码】A 【文章编号】2095-3089(2015)10-0246-01
一、操作系统实践教学的现状与问题
操作系统一直是计算机专业的必修课程,在培养计划和教学工作中备受重视。作为计算机系统上的最核心的系统软件,操作系统本身一直与时俱进,不断发展。国外的学校如Princeton University的操作系统实验课程在于构造一个真正的操作系统。另一部分国外的学校,采用了模拟仿真平台,如University of California at Berkeley在仿真MIPS平台构造操作系统。国内的部分学校采用如WRK等模拟平台,但其实际应用价值较低。考虑操作系统的实践教学过程中既要有实用价值又要兼顾知识先进性的特点,在Linux应用性实验的基础上,增加基于TinyOS的简单的分析性实验,以及具有梯度难度的设计创新实验,在操作系统的实践教学环节中具有十分广阔的应用前景和潜在的实用价值。
二、构建实践教学体系
1.知识体系的构建
对于操作系统教学大纲中前导课程,如C或者VC程序设计、数据结构、组成原理等课程要有一定的掌握,此外,本校将Linux操作系统课程和操作系统原理同时开课,有助于实践课程的开展。
2.实验环境的构建
基于多平台的实验环境搭建比较复杂,环境主要分为软件和硬件两个部分。软件方面:在win7系统下安装了WMWare10软件,在WMWare10的基础之上,创建了CentOS5.5虚拟机和TOS虚拟机,并安装gcc用于程序编译和运行。TOS是集成了UBUNTU和TinyOS2.x的系统,用于TinyOS的分析和开发实验平台。硬件方面主要有MSP430微处理器和温湿度传感器等。
3.基于TinyOS的分析性设计
第一层TinyOS内核分析与改写实验,实验目的在于深入掌握操作系统原理,培养初步的系统分析与设计能力。实验一是TinyOS内核分析阶段,通过阅读TinyOS内核源代码,学习操作系统各个组成部分的实现机理,巩固操作系统原理知识。实验过程中,首先对TinyOS系统的应用范围、文件夹的功能和Nesc语言做简单的讲解,在此基础上,由学生分析TOS/system文件夹的内核文件,并生成相应的分析报告。实验二是通过Blink应用来看组件、接口、command和event在实际应用中的作用,来理解TinyOS的简单编程模式。
4.基于Linux的应用性实验设计
第二层实验是基于Linux内核的综合性实验,难度适中。TinyOS内核虽然简单,易于理解,但是只基于TinyOS的实验并不完整,还要借助于Linux实验平台。因此基于Linux平台设计了3个实验。
实验一为通过分析代码,学习Linux 模块机制的实现过程。通过该实例掌握如何编写模块程序,并进一步掌握内核模块的机理。实验二是统计操作系统缺页次数,以及总运行时间,来学习虚拟内存的基本原理和Linux虚拟内存管理技术,并深入理解和掌握Linux 的按需调页过程。实验三是使用共享内存来完成进程间通信。要求建立一个利用共享内存机制的,关于经典同步问题readers/writers 的解决方案。writer 从用户处获得输入,然后将其写入共享内存,reader 从共享内存获取信息,然后再在屏幕上打印出来。通过该实验理解 Linux 关于共享内存的概念,掌握Linux支持进程间内存共享的系统调用,进一步巩固掌握进程同步的概念。
5.基于TinyOS的设计创新性实验设计
第三层实验是基于TinyOS的设计创新性实验,该类实验以TinyOS提供的一系列的组件为基础,通过驱动的编写和协议的实现,实现具有应用价值和参赛价值的实验。第一个实验是任务调度算法改进实验,通过改变部分内核源程序,改变系统行。TinyOS系统中的任务调度非常简单,只使用了事件驱动的单线程任务调度机制,和传统OS的多线程调度机制截然不同,因此,通过编写部分调度算法的代码,来理解任务调度的理论和算法。第二个实验是TinyOS下大棚温湿度感知,通过该应用程序的设计和实现,来学习设备驱动程序的编写,理解I/O设备的层次,设备控制和中断等概念。
三、效果分析
通过以上三层实验,使学生能够在有限的时间内系统地掌握操作系统基本概念、主要功能、工作原理和实现技术;能够熟练使用至少一种操作系统操作环境;能够在熟练操作的基础上进行嵌入式开发;能够设计简单的操作系统组成模块;能够引导本科生,深入理解计算机五大功能的实现机理和过程,创造性地构造新算法、添加新功能,提高创新和参赛能力;基于团队的多平台的实验模式,有助于激发学生学习操作系统的兴趣和主动性,训练其分析问题、解决问题的综合能力,培养团队协作能力。
四、结束语
操作系统本身的复杂性和包含学科知识的多样性,给操作系统的实践教学带来了高难度,因此,采用不拘形式的实践教学方法和手段,为学生提供多样化的灵活的实验平台和实验方法,不仅可以鼓励学生根据自身水平,选择适合学习方式、数量和难度的实验,而且有助于提高学生的学习兴趣,使学生的能力得到充分的发展和提高。
参考文献:
[1]http://www.tinyos.net/tinyos-2.x/doc/html/.
[2]ArieiT,AltunbasakY.Adap tiveSensingforEnvironmentMoni toringUsingWirelessSensorNetworks[J].IEEEWCNC,2004,5(I).
[3]李红卫,殷常鸿.构建操作系统实践教学体系.计算机教育.2008(6).
[4]刘文峰,李程远,李善平.嵌入式LINUX操作系统的研究。浙江大学学报.2004(4).