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