资料介绍
uC/OS-III(Micro C OS Three 微型的 C 语言编写的操作系统第 3 版)是一个可升级的,可固化的,基于优先级的实时内核。它对任务的个数无限制。uC/OS-III 是一个第 3 代的系统内核,支持现代的实时内核所期待的大部分功能。例如资源管理,同步,任务间的通信等等。然而,uC/OS-III 提供的特色功能在其它的实时内核中是找不到的,比如说完备的运行时间测量性能,直接地发送信号或者消息到任务,任务可以同时等待多个内核对象等。 uC/OS-III 是一个可扩展的,可固化的,抢占式的实时内核,它管理的任务个数不受限制。它是第三代内核,提供了现代实时内核所期望的所有功能包括资源管理、同步、内部任务交流等。uC/OS-III 也提供了很多特性是在其他实时内核中所没有的。比如能在运行时测量运行性能,直接得发送信号或消息给任务,任务能同时等待多个信号量和消息队列。 uC/OS 系列,第一代产生于 1992。经过了多年的使用和上千人的反馈,已经产生了很多的进化版本。uC/OS-III 是这些反馈和经验的总结。在 uC/OS-II 中很少使用的功能已经被删除或者被更新,添加了更高效的功能和服务。其中最有用的功能应该是时间片轮转法(round robin),这个是 uC/OS-II 中不支持的,但是现在已经是 uC/OS-III 的一个功能了。uC/OS-III 会提供新的功能以更好地适应新出现的处理器。特别的,uC/OS-III 被设计用于 32 位处理器,但是它也能在 16 位或 8 位处理器中很好地工作。
UCOSIII 特点很多,主要如下:
(1)源代码 uC/OS-III 完全根据 ANSI-C 标准写的。代码的规范是 Micrium 团队的一种文化。虽然很多商业内核供应商提供他们产品的源代码,但是这些产品很有可能是笨重且难以利用的。除非代码严格地遵循标准并且产品有完整的带例子的说明书以展示代码是怎样工作的。
(2)应用程序接口(API) uC/OS-III 是很直观的。如果你熟悉类似的编码规范,你能轻松地知道函数名所对应的服务,以及需要怎样的参数。例如:指向对象的指针通常是第一个参数,指向错误代码的指针通常是最后一个参数。
(3)抢占式多任务处理 uC/OS-III 是一个抢占式多任务处理内核,因此,uC/OS-III 正在运行的经常是最重要的就绪任务。
(4)时间片轮转调度 uC/OS-III 允许多个任务拥有相同的优先级。当多个相同优先级的任务就绪时,并且这个优先级是目前最高的。uC/OS-III 会分配用户定义的时间片给每个任务去运行。每个任务可以定义不同的时间片。当任务用不完时间片时可以让出 CPU 给另一个任务。
(5)快速响应中断 uC/OS-III 有一些内部的数据结构和变量。uC/OS-III 保护临界段可以通过锁定调度器代替关中断。因此关中断的时间会非常少。这样就使 uC/OS-III 可以响应一些非常快的中断源了。
(6)确定性 uC/OS-III 的中断响应时间是可确定的,uC/OS-III 提供的大部分服务的执行时间也是可确定的。
(7)可扩展根据应用的需求,代码大小可以被调整。编译时通过调整 uC/OS-III 源代码中的大约 40 个#define(见 OS_CFG.H)可以在添加或移除一些功能。uC/OS-III 的服务还提供一些实时检查功能。特别的,uC/OS-III 能检传递的参数是否为 NULL 指针,ISR 是否就绪了任务级服务。参数有允许范围,指定选项都是有用的。检测功能可以被关闭(在编译时)以提供更好的性能和缩减代码大小。实际上,可扩展的 uC/OS-III 支持更广泛的应用和项目。
(8)易移植 uC/OS-III 可以被移植到大部分的 CPU 架构中。大部分的支持 uC/OS-II 的器件通过改动就能支持 uC/OS-III。而 uC/OS-II 已经移植到 45 种 CPU 架构中了。
(9)可固化 uC/OS-III 专为嵌入式系统设计,它可以跟应用程序代码一起被固化。(10)可实时配置 uC/OS-III 允许用户在运行时配置内核。特别的,所有的内核对象如任务、堆栈、信号量、事件标志组、消息队列、消息、互斥信号量、内存分区、软件定时器等都是在运行时分配的,以免在编译时的过度分配。(11)任务数无限制 uC/OS-III 对任务数量无限制。实际上,任务的数量限制于处理器能提供的内存大小。每一个任务需要有自己的堆栈空间,uC/OS-III 在运行时监控任务堆栈的生长。uC/OS-III 对任务的大小无限制。(12)优先级数无限制 uC/OS-III 对优先级的数量无限制。然而,配置 uC/OS-III 的优先级在 32 到 256 之间已经满足大多数的应用了。
(13)内核对象数无限制 uC/OS-III 支持任何数量的任务、信号量、互斥信号量、事件标志组、消息队列、软件定时器、内存分区。用户在运行时分配所有的内核对象。
(14)服务 uC/OS-III 提供了高档实时内核所需要的所有功能,例如任务管理、时间管理、信号量、事件标志组、互斥信号量、消息队列、软件定时器、内存分区等。
(15)互斥信号量互斥信号量用于资源管理。它是一个内置优先级的特殊类型信号量,用于消除优先级反转。互斥信号量可以被嵌套,因此,任务可申请同一个互斥信号量多达 250 次。当然,互斥信号量的占有者需要释放同等次数。
(16)嵌套的任务停止 uC/OS-III 允许任务停止自身或者停止另外的任务。停止一个任务意味着这个任务将不再执行直到被其他的任务恢复。停止可以被嵌套到 250 级。换句话说,一个任务可以停止另外的任务多达 250 次。当然,这个任务必须被恢复同
- 普中STM32F1xx开发攻略资料下载 22次下载
- 使用单片机STM32实现配置时钟的详细资料说明 25次下载
- STM32单片机入门教程之GPIO编程的详细资料说明 61次下载
- 普中STM32F1xx系列单片机的开发攻略资料免费下载 17次下载
- 使用STM32F103单片机实现定时器实验的详细资料说明 5次下载
- 使用STM32F103RB单片机实现串口实验的详细资料说明 7次下载
- 使用STM32F103RB单片机实现蜂鸣器实验的详细资料说明 4次下载
- 使用STM32F1XX系列单片机实现ADC驱动的程序免费下载 22次下载
- 使用STM32单片机实现IAP的详细资料说明
- STM32F0 Discovery系列单片机固件的详细资料合集免费下载 0次下载
- 普中STM32F1xx开发攻略免费下载 151次下载
- STM32单片机教程之STM32自学笔记的详细资料说明 157次下载
- Grbl固件的STM32F108单片机系列版的详细资料合集免费下载 0次下载
- STM32F1XX的开发攻略详细资料免费下载 12次下载
- STM32F0单片机开发库程序文件的详细资料合集免费下载 109次下载
- 【GD32 MCU 移植教程】8、从 STM32F4xx 系列移植到 GD32F4xx 系 1448次阅读
- 单片机STM32可以用Python写吗?可以的开发板有哪些? 4075次阅读
- 开发攻略之STM32调试端口的映射 480次阅读
- STM32单片机有哪几种常见的开发环境? 3198次阅读
- 基于STM32F103单片机设计 1818次阅读
- PIC系列单片机程序设计基础知识详细说明 4636次阅读
- PIC系列单片机的详细资料说明 5549次阅读
- MSP430系列单片机与51单片机的区别及优劣势对比 3.6w次阅读
- 单片机中的堆栈详细资料说明 4838次阅读
- 如何学习STC单片机详细STC单片机资料说明 1.2w次阅读
- 基于STM32单片机SPWM逆变电源模块的详细资料说明 1.6w次阅读
- microchip单片机入门基础知识(PIC单片机详细资料) 2.3w次阅读
- 详细的STM32单片机学习笔记 1.4w次阅读
- 主流32位单片机攻略连载:为什么要学STM32? 7.9w次阅读
- 单片机C语言知识点全攻略(一) 5.1w次阅读
下载排行
本周
- 1AN-1267: 使用ADSP-CM408F ADC控制器的电机控制反馈采样时序
- 1.41MB | 5次下载 | 免费
- 2AN158 GD32VW553 Wi-Fi开发指南
- 1.51MB | 2次下载 | 免费
- 3嵌入式软件开发符合ISO 26262 功能安全标准
- 1.61 MB | 1次下载 | 免费
- 4AN148 GD32VW553射频硬件开发指南
- 2.07MB | 1次下载 | 免费
- 5AN-1127: ADE7880与ADE7878的区别
- 256.82KB | 次下载 | 免费
- 6AN-908: 基于HD44780的字符LCD与ADuC702x接口
- 217.94KB | 次下载 | 免费
- 7EE-146:为ADSP-218x系列DSP实施启动管理器
- 306.92KB | 次下载 | 免费
- 8UC-018:时间间隔计数器的用途
- 632.9KB | 次下载 | 免费
本月
- 1ADI高性能电源管理解决方案
- 2.43 MB | 451次下载 | 免费
- 2免费开源CC3D飞控资料(电路图&PCB源文件、BOM、
- 5.67 MB | 138次下载 | 1 积分
- 3基于STM32单片机智能手环心率计步器体温显示设计
- 0.10 MB | 130次下载 | 免费
- 4使用单片机实现七人表决器的程序和仿真资料免费下载
- 2.96 MB | 44次下载 | 免费
- 5美的电磁炉维修手册大全
- 1.56 MB | 24次下载 | 5 积分
- 6如何正确测试电源的纹波
- 0.36 MB | 19次下载 | 免费
- 7感应笔电路图
- 0.06 MB | 10次下载 | 免费
- 8万用表UT58A原理图
- 0.09 MB | 9次下载 | 5 积分
总榜
- 1matlab软件下载入口
- 未知 | 935121次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420062次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233088次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191367次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183335次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73810次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65988次下载 | 10 积分
评论
查看更多