-
第一章嵌入式实时操作系统的基本概念
本章首先介绍了操作系统的基本功能、组成部分,以及各个组成部分的功能;进而引入实时系统的概念,提出了实时系统需要满足的条件;介绍了嵌入式系统采用实时操作系统的必要性,提出了嵌入式实时操作系统的基本需求,介绍了UCOS-II实时操作系统的历史、特性和文件组织。
-
●1.1操作系统的概念
本节介绍了计算机操作系统的基本概念、作用和功能。操作系统是在硬件平台之上的软件包装,消除了硬件的差异,使软件开发面向统一的接口。
-
●1.2嵌入式操作系统
本节讲述了采用嵌入式操作系统的必要性,以及对嵌入式操作系统的六大基本需求,介绍了实时系统需要满足的两大条件,归纳出实时操作系统需要满足的基本条件。
-
●1.3UCOS-II简介
本节讲述了UCOS-II操作系统的发展背景、发展历史、特点;讲解了其源代码文件的组织结构
-
第二章UCOS-II中的任务
UCOS-II内核的主要工作就是对任务进行管理和调度,弄清楚任务概念、结构和对任务的管理方法对理解好UCOS-II是非常重要的。本章的主要内容有任务的基本概念、用户任务和系统任务;任务的三大组成;任务的优先级;任务就绪表结构及其操作方法;任务的切换和调度;任务相关函数的使用方法;UCOS-II操作系统的初始化和启动。
-
●2.1任务的基本概念
本节讲述了任务的概念和其三大组成部件,任务的物种状态;用户任务和系统任务;空闲任务和统计任务;任务的优先级。
-
●2.2任务堆栈
本节讲述了任务堆栈的作用和创建方法;以及任务堆栈的初始化操作。
-
●2.3任务控制块及其链表
本节讲述了任务控制块的基本结构和任务控制块链表的原理;任务控制块的初始化
-
●2.4任务就绪表及任务调度
本节讲述了任务就绪表的结构,以及对任务就绪表的操作,包括注册、注销、查找最高优先级任务。
-
●2.5UCOS-II任务相关函数
本节对UCOS-II中和任务相关的函数的使用方法,包括任务的创建、删除、暂停等函数
-
●2.6任务相关代码讲解
本节对UCOS-II中和任务相关的函数进行了源码级的讲解,和本章的理论内容互相应对,以加深理解。
-
●2.7任务划分原则
本节从工程实际的角度,讲解如何针对一个具体工程正确有效的划分任务,如何评估划分任务的可调度性
-
●2.8多任务实验
本节通过一次实验来演示和任务相关的函数的使用方法
-
第三章UCOS-II的中断和时钟
本章主要讲解了UCOS-II对中断的管理方式和中断服务程序的结构;UCOS-II系统时钟及其实现方法,以及其对时间的管理服务。
-
●3.1UCOS-II的中断管理
本节讲述了UCOS-II操作系统中断的响应过程,以及中断处理函数的编码方法;临界区的概念及其实现方法
-
●3.2UCOS-II的时间管理
本节讲述了UCOS-II时钟节拍的实现原理,以及任务延时的方法
-
●3.3UCOS-II中断与时钟关键代码讲解
本节对UCOS-II中有关中断和时间管理的函数进行了源码级的讲解
-
●3.4中断管理实验
本节通过一次实验来演示UCOS-II中断管理的使用方法,也演示了传统不采用UCOS-II管理中断的处理方式,通过两种方式的比较,更好的理解UCOS-II中断管理的原理。
-
●3.5时间管理实验
本节通过一次实验来演示UCOS-II时间管理函数的使用方法。
-
第四章任务的同步与通信
本章主要讲述了UCOS-II中有关任务同步与通信的信号量、互斥量、消息邮箱、消息队列四种方法的原理、函数使用方法和适用场合。
-
●4.1任务间的同步和事件控制块
本节主要讲述了事件的概念,以及事件控制块的结构和基本操作方法
-
●4.2信号量及其操作
本节主要讲述了计数型信号量的结构,工作原理和函数的使用方法
-
●4.3信号量实验
本节通过实验来演示UCOS-II计数型信号量的使用方法
-
●4.4互斥型号量和任务优先级反转
本节主要讲述了优先级反转问题,以及用互斥量来解决优先级反转问题的原理,互斥量相关函数的使用方法
-
●4.5互斥量实验
本节通过实验来演示UCOS-II互斥量的使用方法
-
●4.6消息邮箱及其操作
本节讲述了消息邮箱的结构、工作原理和函数的使用方法
-
●4.7邮箱实验
本节通过实验来演示UCOS-II中使用消息邮箱,在任务之间传递数据的方法
-
●4.8消息队列及其操作
本节讲述了消息队列的结构、工作原理和函数的使用方法
-
●4.9消息队列实验
本节通过实验来演示UCOS-II中使用消息队列,在多个任务之间传递数据的方法
-
●4.10任务的同步与通信关键代码讲解
本节对UCOS-II中有关同步与通信的的相关函数进行了源码级的讲解
-
第五章信号量集
本章讲述了信号量集的概念、适用环境场合、信号量集的结构组成以及使用方法,并通过实验验证其使用方法
-
●5.1信号量集的概念及结构
本节主要讲解了信号量集在现实中的适用场合,数据结构组成和工作原理
-
●5.2信号量的操作及应用举例
本节主要讲解了信号量集的相关函数并举例讲解了其具体使用方法
-
●5.3信号量集关键代码讲解
本节主要对信号量集的相关函数的源码进行了分析讲解
-
●5.4信号量集实验
本节通过具体实例来讲解信号量集的使用方法和注意事项
-
第六章动态内存管理
本章讲述了UCOS-II对动态内存的区块管理方法,创建、分配和回收的工作原理、具体数据结构以及函数操作方法
-
●6.1内存控制块
本节讲述了UCOS-II的动态内存区块管理概念和动态内存控制块的结构
-
●6.2动态内存的管理
本节讲述了通过动态内存控制块管理动态内存的方法
-
●6.3动态内存管理关键代码讲解
本节对动态内存管理的相关函数的源码进行了分析讲解
-
●6.4动态内存管理实验
本节通过具体实验来讲解动态内存管理的使用方法
-
第七章UCOS-II的移植
本章讲述了UCOS-II的移植步骤和注意事项,具体分析了相关移植文件需要改动的内容,并通过在传统arm7和新型cortexm3架构的STM32F103上具体移植UCOS-II,达到触类旁通的效果。
-
●7.1移植步骤和内容
本节讲述了UCOS-II移植的具体步骤和具体内容
-
●7.2在ARM7上移植UCOS-II
本节讲述了在ARM7上具体移植UCOS-II
-
●7.3uCOS-II在STM32上的移植
本节讲述了在STM32F103上具体移植UCOS-II