1、嵌入式操作系统教学大纲一、课程概况所属专业:计算机科学与技术开课单位:数学计算机科学学院课程类型:院系选修课程课程代码:07492140学分:学分:开课学期:学时:课堂讲授24+实验16核心课程:拟使用教材:吴国伟,姚琳,刘坐松.嵌入式操作系统原理与应用,北京:清华大学出版 社,2011.国内(外)现有教材:1周立功等编著. ARM嵌入式系统基础教程.北京:北京航空航天大学出 版社,20052王田苗编.嵌入式系统设计与实例开发.北京:清华大学出版社,20023杜春雷编著.ARM体系结构与编程.北京:清华大学出版社,20034坂村健著.嵌入式实时操作系统T-Kernel.北京:北京航空航天大学出
2、版 社,20055张绮文等编著.ARM嵌入式常用模块与综合系统设计实例精讲.北京: 电子工业出版社,20076北京博创.ARM9嵌入式系统实验指导.2004年7刘淼.嵌入式系统接口设计与Linux驱动程序开发.北京航空航天大学. 20068严海蓉.嵌入式操作系统原理及应用.北京:电子工业出版社,2012 学习参考资料1 常见的四种嵌入式操作系统, A42W8XkHStVA4SJGtYRn9qJbsFruKCY 1 yEf5PyWPFt_k4a5MDcDZBv0cqd8pA2 iY58wjy, 2011.终端字符显示,能够接受来自键盘的中断,能够实现任务的延迟。学 时:4学时教学方法:演示法/讲
3、授/现场指导实验类型:验证性和设计性实验实验二:任务的建立与多任务的执行(授课时间:第五学期第十四周)教学目标:本实验以任务管理的基本方式、方法、手段入手,通过了解、掌握嵌 入式操作系统uc/os-n内核有关任务管理的系统函数,以一些简单 的具体应用范例入手,了解任务的各项属性及其操作方法,掌握对任 务的设计、建立、管理、运行、调试、性能测试等技术。并根据实验 要求自行设计满足某些设计要求的任务。主要内容:创立至少两个任务,使用关中断、开中断技术,完成互斥操作,能够 实现终端字符显示,能够接受来自键盘的中断,能够实现任务的延迟。 能够设计完成对每个任务执行时间的测试和输出。并分析任务的执行 时
4、间和CPU利用率间的实际关系。能够对闲逛任务的执行进行监控。 能够对统计任务的运行进行监控。学 时:4学时教学方法:演示法/讲授/现场指导实验类型:基本操作和设计性实验实验三:Linux操作系统使用基础(授课时间:第五学期第十五周)教学目标:通过在VMware下安装并配置Linux操作系统,对该系统的运行支持 环境有比拟深入的理解;掌握Linux的命令行工作方式;掌握Linux 的开关机方法;了解Linux的目录结构。主要内容:安装Linux操作系统,并配置Linux操作系统;基本命令的练习;查 看Linux的各个重要目录的结构。学 时:4学时教学方法:演示法/讲授/现场指导实验类型:验证性和
5、基础操作实验实验四:Linux常用的命令的使用和网络功能(授课时间:第五学期第十六周)教学目标:掌握Linux各类命令的使用方法;熟悉Linux操作环境;掌握常用的 网络命令;学会简单的网络服务器的配置。主要内容:练习使用Linux常用命令,设置IP地址及子网掩码,设置网关和主 机名,设置域名解析,设置系统启动时的自动配置,检测各项设置; 安装、配置NFS服务器并启动。学 时:4学时教学方法:演示法/讲授/现场指导实验类型:设计性和综合性实验操作系统的功能在本课程简要介绍,详细阐述在“操作系统”课程展开。2 嵌入式操作系 统开源软件, .3胡曙辉,陈健.几种嵌入式实时操作系统的分析与比拟, 1
6、 ic /app/embed/200805/26675.htrn, 2008.4陈旭武.轻松自编小型嵌入式操作系统,北京:北京航空航天大学出版 社,2012.二、课程描述本门课程是计算机科学技术、软件工程专业的选修课,介绍嵌入式系统中嵌 入式实时操作系统和其他技术。本课程以介绍嵌入式操作系统知识为主,但在构 成一个嵌入式计算机应用系统时,还必须具有用汇编语言、C或C+语言及程序 设计编制源程序的能力,软硬件结合是本课程的一个特点。“嵌入式操作系统”课程在“操作系统”原理课程之后开设,使学生在学习 操作系统原理的基础知识、基本实现方法、基本算法设计的基础上,对一个实际 的、面向具体目标的特定操作
7、系统类型进行学习,掌握嵌入式实时操作系统基本 原理、基本管理方法,并将操作系统原理和面向嵌入式实时应用的实现技术结合 起来。通过本课程学习常见的嵌入式操作系统;掌握嵌入式系统软硬件设计的基 本方法;跟踪嵌入式系统最新设计理念;实践嵌入式系统工程开发基本流程;为 嵌入式系统开发奠定良好的基础。培养学生进行嵌入式设计和开发的应用能力和 实践技能,增强就业能力,为学生今后学习和从事嵌入式系统研究与开发积累初 步的经验。三、课程目标了解嵌入式产品和嵌入式应用的技术原理和开发过程。较深入地了解嵌入式操作系统的组成及工作原理。具有较高的汇编语言源程序的阅读能力和一定的程序编写能力。掌握嵌入式操作系统的使用
8、方法和移植方法。具有嵌入式操作系统的分析能力和初步设计能力。具有嵌入式系统的应用知识、嵌入式系统的初步分析能力和具有用RTOS构成嵌入式系统的应用能力。四、教学要求依据本课程的性质、目的及任务,教学基本要求是紧扣多媒体教学、课后答 疑、教学计算机实验几个主要环节,要求学生系统地了解、熟悉和掌握嵌入式操 作系统的基本知识。具体包括:嵌入式产品和嵌入式应用的技术原理和开发过程, 嵌入式操作系统的组成及工作原理,嵌入式操作系统的使用方法和移植方法。具 有嵌入式操作系统的分析能力和初步设计能力。学习该门课程后,学生具有嵌入 式系统的初步分析能力和具有用RTOS构成嵌入式系统的应用能力。五、考核方式及要
9、求为实现课程教学目标,本门课程采用过程性考核和期末考核结合的方式进行 考核。过程性考核占总成绩50%,其中:考勤占40%,点到不少于8次,其中 缺席4次,按无成绩计算;期中随堂测验1次,测验成绩占30%;课程作业6 次,作业成绩占30%。期末考核占总成绩50%,为闭卷考试。六、课程内容课堂讲授第一章:嵌入式操作系统基本概念(授课时间:第五学期第一周)教学目标:通过本章的学习,让学生了解嵌入式系统的基本概念、嵌入式系统的 架构、嵌入式处理器的分类和选型原那么、典型的嵌入式微处理器;熟 悉典型的嵌入式操作系统;理解嵌入式系统的开发方法;了解嵌入式 系统的现状和开展趋势。教学重点:嵌入式系统的基本概
10、念,嵌入式系统的架构,嵌入式处理器的分类和 选型原那么,典型的嵌入式操作系统,嵌入式系统的开发方法。教学难点:嵌入式处理器选型原那么,嵌入式系统的开发方法。学 时:课堂教学2学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)嵌入式系统的基本概念;(2)嵌入式系统的架构;(3)嵌入式处理器;(4)嵌入式操作系统;(5)嵌入式系统的开发方法;(6)嵌入式系统的现状和开展趋势。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第18页思考题第二章:嵌入式软件设计一一结构与方法(授课时间:第五学期第二周)教学目标:通过本章的学习,让学生了解嵌入式软件系统结构、嵌入式软件开
11、发 工具;理解嵌入式系统的软件设计方法;熟悉宿主机与目标机、嵌入 式系统的链接器和定位器,掌握调试技术。教学重点:嵌入式软件系统结构,嵌入式系统的软件设计方法,主机与目标机, 嵌入式系统的链接器和定位器,调试技术。教学难点:嵌入式软件开发工具,嵌入式系统的软件设计方法。学 时:课堂教学2学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)嵌入式软件系统结构;(2)嵌入式软件开发工具;(3)嵌入式系统的软件设计方法。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第59页思考题第三章:嵌入式操作系统服务(授课时间:第五学期第三至四周)教学目标:通过本章的学习,让学生
12、了解嵌入式操作系统服务、操作系统性能; 理解可调度实体、多任务、上下文切换的概念;掌握调度算法和完全 公平调度程序。教学重点:嵌入式操作系统服务,操作系统性能,调度器,完全公平调度程序。 教学难点:调度器,完全公平调度程序。学 时:课堂教学3学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)嵌入式操作系统服务;(2)调度器;(3)操作系统性能;(4)设计实例:嵌入式Linux中的进程管理;(5)完全公平调度程序。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第101页思考题第四章:嵌入式系统软件设计一一异常和中断(授课时间:第五学期第四至五周)教学目标:通过本
13、章的学习,让学生了解异常和中断的基本概念、异常的分类和 优先级、可编程中断控制器和外部中断;理解异常和中断的处理程序、 ARM异常中断机制;了解操作系统对中断的支持;掌握中断编程模 式。教学重点:异常和中断的基本概念,可编程中断控制器和外部中断,异常和中断 的处理程序,ARM异常中断机制,操作系统对中断的支持,中断编 程模式。教学难点:ARM异常中断机制,中断编程模式。学 时:课堂教学3学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)异常和中断的基本概念;(2)异常的分类和优先级;(3)可编程中断控制器和外部中断;(4)异常和中断的处理;(5) ARM异常中断机制;(
14、6)操作系统对中断的支持;(7)中断编程实例。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第144页思考题第五章:嵌入式软件设计中的普遍问题(授课时间:第五学期第六至七周)教学目标:通过本章的学习,让学生了解资源同步、关键段重访问、特殊解决方 案的设计模式;理解死锁检测、恢复、防止、预防;掌握银行家算法、 优先权倒置技术;理解堆栈溢出的含义。教学重点:同步与通信,死锁及处理,银行家算法,优先权倒置技术,堆栈溢出。 教学难点:银行家算法,优先权倒置技术,堆栈溢出。学 时:课堂教学3学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)同步与通信;(2)死锁及处理;
15、(3)优先权倒置;(4)堆栈溢出。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第179页思考题第六章:Android系统(授课时间:第五学期第七至八周)教学目标:通过本章的学习,让学生了解Android系统软件架构、开发环境及工 具、Android的底层库libutils;理解Linux内核特性、设备管理方法; 掌握Android专用驱动相关知识。教学重点:Android系统软件架构,Android的底层库libutils, Linux内核特性, 设备管理方法,Android专用驱动相关知识。教学难点:Android的底层库libutils, Linux内核特性,设备管理方法,An
16、droid 专用驱动相关知识。学 时:课堂教学3学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1) Android系统架构;(2) Android的Linux内核与驱动程序;学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第201页思考题第七章:Android系统驱动设计(授课时间:第五学期第九周)教学目标:通过本章的学习,让学生了解Android系统各种驱动设计;理解 Framebuffer显示驱动、MTD驱动、蓝牙驱动的架构、注册与注销方 法。教学重点:Framebuffer显示驱动、MTD驱动、蓝牙驱动的架构、注册与注销方 法。教学难点:Framebuff
17、er显示驱动、MTD驱动、蓝牙驱动的架构。学 时:课堂教学2学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1) Framebuffer显示驱动;(2) MTD 驱动;(3)蓝牙驱动。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第211页思考题第八章:AndroidARM平台移植(授课时间:第五学期第十周)教学目标:通过本章的学习,让学生了解ARM11平台的组成、移植需求;理解 Android图形显示原理、双缓冲技术和底层驱动与驱动移植技术;掌 握移植触摸屏驱动、移植电源管理驱动;熟悉Android系统部署。教学重点:移植LCDdoublebuffer驱动,移
18、植触摸屏驱动,移植电源管理驱动。教学难点:Android图形显示原理、双缓冲技术和底层驱动与驱动移植技术。学 时:课堂教学2学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1) ARM 11平台;(2)移植 LCDdoublebuffer 驱动;(3)移植触摸屏驱动;(4)移植电源管理驱动,支持Android电池/能源管理;(5) Android系统部署。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第227页思考题第九章:基于Android的应用程序开发(授课时间:第五学期第十一周)教学目标:通过本章的学习,让学生了解基于Android的应用程序框架;理解多线
19、程程序设计;掌握多媒体应用程序设计和网络服务。教学重点:基于Android的应用程序框架,多线程程序设计,多媒体应用程序设 计和网络服务。教学难点:多线程程序设计,多媒体应用程序设计。学 时:课堂教学2学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)程序框架;(2)多线程程序设计;(3)多媒体应用程序设计;(4)网络服务。学习方法:听讲记录,小组讨论,上网调研课后作业:完成教材第244页思考题第十章:应用实例(授课时间:第五学期第十二周)教学目标:通过本章的学习,让学生学会具体实例的应用开发;通过应用实例的 学习,掌握功能设计、界面和代码结构设计、系统分析与设计、系统
20、 实现和具体技术分析等相关知识。教学重点:各应用实例的具体设计、主要功能和系统实现。教学难点:系统设计和功能实现。学 时:课堂教学2学时,课外自主学习时间不少于1学时教学方法:讲授法、演示法主要内容:(1)记事本;(2)手机信息查看助手;(3) smart电子词典。学习方法:听讲记录,小组讨论,上网调研课后作业:总复习实验实验一:任务管理(授课时间:第五学期第十三周)教学目标:本实验通过实例程序,分析、运行、验证嵌入式操作系统uc/os-n 内核及其任务工作原理及方法,提升本专业高年级学生对嵌入式实时 操作系统技术的理解能力和学习水平。到达对系统软件原理、技术、 实现、应用的立体化、体系化全方位理解和实践应用能力。主要内容:创立一个任务,使用关中断、开中断技术,完成互斥操作,能够实现