一、前后台系统和RTOS系统:
1、前后台系统:
早期嵌入式开发没有嵌入式操作系统的概念 ,直接操作裸机,在裸机上写程序,比如用51单片机基本就没有操作系统的概念。通常把程序分为两部分:前台系统和后台系统。
简单的小系统通常是前后台系统,这样的程序包括一个死循环和若干个中断服务程序:应用程序是一个无限循环,循环中调用API函数完成所需的操作,这个大循环就叫做后台系统。中断服务程序用于处理系统的异步事件,也就是前台系统。前台是中断级,后台是任务级。
2、RTOS系统:
RTOS全称为:Real Time OS,就是实时操作系统,强调的是: 实时性。实时操作系统又分为硬实时和软实时。硬实时要求在规定的时间内必须完成操作 ,硬实时系统不允许超时,在软实时里面处理过程超时的后果就没有那么严格。
在实时操作系统中,我们可以把要实现的功能划分为多个任务,每个任务负责实现其中的一部分,每个任务都是一个很简单的程序,通常是一个死循环。
RTOS操作系统:UCOS,FreeRTOS,RTX,RT-Thread,DJYOS等。
RTOS操作系统的核心内容在于: 实时内核。
可剥夺型内核:
RTOS的内核负责管理所有的任务,内核决定了运行哪个任务,何时停止当前任务切换到其他任务,这个是内核的多任务管理能力。多任务管理给人的感觉就好像芯片有多个CPU,多任务管理实现了CPU资源的最大化利用,多任务管理有助于实现程序的模块化开发,能够实现复杂的实时应用。
本套视频教程讲的是RTOS中的经典代表作:UCOS,而UCOS的内核是可剥夺型的,所以我们简单提一下什么是可剥夺型内核。
可剥夺内核顾名思义就是可以剥夺其他任务的CPU使用权,它总是运行就绪任务中的优先级最高的那个任务。
二、UCOS系统简介:
1、UCOS系统简介:
UCOS是Micrium公司出品的RTOS类实时操作系统,UCOS目前有两个版本:UCOSII和UCOSIII。
UCOSIII是一个可裁剪、可剥夺型的多任务内核,而且没有任务数限制。UCOSIII提供了实时操作系统所需的所有功能,包括资源管理、同步、任务通信等。
UCOSIII是用C和汇编来写的,其中绝大部分都是用C语言编写的,只有极少数的与处理器密切相关的部分代码才是用汇编写的,UCOSIII结构简洁,可读性很强!最主要的是非常适合初次接触嵌入式实时操作系统学生、嵌入式系统开发人员和爱好者学习。
2、UCOS相关资料查找:
1、Micrium官网:www.micrium.com。
2、开源电子网:www.opened.com。
三、UCOS学习方法及参考书籍:
1、UCOS学习方法:
① 多练
不要只看书,或者只看资料,只“看”是没有任何用的!一定要实际动手写代码练习,多在开发板上练习。
② 遇到不懂的怎么办?
UCOS还是有一定难度的,在学习的过程中难免会遇到看不懂的东西,如果遇到不懂的就先不要管,先学会怎么调用UCOS的API函数。等以后有时间了在回过头来重新学习一下。
③ 对C语言的要求
需要了解指针、结构体、数据结构中的链表等。
2、UCOS参考书籍:
1、《嵌入式实时操作系统 uc/os-III》,作者:Jean J. Labrosse,宫辉等翻译。
2、《嵌入式实时操作系统uc/os-III应用开发》,作者:Jean J. Labrosse,何小庆等翻译
3、《嵌入式实时操作系统uc/os-II原理及应用》,作者:任哲。
4、《嵌入式实时操作系统μC/OS-II(第2版)》 邵贝贝 等译 北京航空航天大学出版社
5、《基于嵌入式实时操作系统的程序设计技术》 周慈航 北京航空航天大学出版社
6、《嵌入式系统软件设计中的数据结构》 陆玲 周慈航 北京航空航天大学出版社