Micri痠
1290 Weston Road, Suite 306
Weston, FL 33326
www.micrium.com
+1 954 217 2036
湣/OS-III, The Real-Time Kernel
ISBN 978-0-9823375-3-0
READ ME
-----------------------------------------------------------------------------------------------------------
Release V3.02.00 (2011/08/01):
-----------------------------------------------------------------------------------------------------------
1) Corrected pointer to integer cast in OSMemCreate.
2) Corrected invalid typecast on constant initialization on os_cfg_app.c.
3) Added a "return" statement after each invocation of the OS_SAFETY_CRITICAL_EXCEPTION() macro.
4) Fixed OS_TmrLink() while adding Tmr object into middle of spoke linked-list.
5) Corrected OS_TmrResetPeak() reset maximum number of entries (NbrEntriesMax).
6) Added note to clarify use of OS_OPT_LINK_DLY option on OS_TmrLink() at OSTmrStart().
7) Adjusted order of operation on Tick Wheel during insert (OS_TickListInsert) to first set link pointers
on new object, then add it to the linked-list.
8) Corrected OS_OPT_POST_NO_SCHED option for OSFlagPost and OSFlagPendAbort.
9) Initialize Interrupt Queue Handler Task before any other task to prevent usage of OSIntQNbrEntries
uninitialized.
10) Corrected use of disabled variable 'OSCfg_ISRStk'.
11) Changed default OS_CYCLES to 32-bits.
12) Corrected per task CPU usage statistics computation.
13) Adjusted version to new format Vx.yy.zz.
14) Removed OS_TMR_TICK datatype; converted OSTmrTickCtr to OS_TICK to be consistent with other OS_TMR
structure fields.
15) Prevent OSSchedLock/Unlock() to be called from ISR.
16) Re-arranged order of data structure members on OS_TCB to keep non-optional items at the beginning of
the structure.
17) Changed error codes to enum.
18) Converted OS object types to use CPU_TYPE_CREATE.
19) Reworked check to not allow to create multiple tasks at idle task priority.
20) Corrected alignment check on OSMemCreate() to handle cases where sizeof(void *) == 1.
21) Added changes to priority handling to allow word addressable architectures.
22) Adjusted copyright in file headers for source available distribution.
-----------------------------------------------------------------------------------------------------------
Release V3.01.2 (2010/05/14):
-----------------------------------------------------------------------------------------------------------
1) Added error checking for time stamp configuration #defines.
2) Removal of some MISRA C 2004 errors.
3) Corrected OS_MEM structure definition for field FreeListPtr.
4) Moved OSInitHook() to beginning of OSInit() to be consistent with documentation section about
differences between uC/OS-II and uC/OS-III port functions.
5) Removed duplicate call to OS_TickListRemove() in OS_TickListUpdate().
6) Corrected OS_TmrLink() where number of entries in spoke was incremented twice for a particular
case, and timer previous pointer was alwyas being cleared before exit the function.
7) Corrected OSTaskChangePrio() to update task priority if task is pending on Task Queue, Task Sem,
or Flag.
8) Corrected OSTaskDel() TCB clean up where it could potentially be skipped if context switch happened
before OSSched().
9) Corrected sections of code conditional on OS_CFG_Q_EN & OS_CFG_TASK_Q_EN.
10) Corrected DbgListRemove procedures where it did not clear the DbgPrevPtr of the first object when
the head of the list was removed.
11) Removed sections where TimeQuantaCtr was incorrectly reset.
12) Corrected NULL pointer de-reference on OSMutexDel() with OS_OPT_DEL_ALWAYS option when Mutex created
and deleted right away.
13) Added OSStatResetFlag into OS_StatTask to force reset of the computed statistics.
14) Added OSIntQMaxNbrEntries into computed statistics.
15) Reordered DbgListAdd/Remove to prevent a still linked object from being cleared.
16) Corrected DbgList removal in OSTmrDel().
17) Added critical section in OSMemCreate().
18) Removed access to uninitialized kernel objects (p_obj->Type).
19) Corrected port's OSTaskSwHook where OSSchedLockTimeMaxCur was not always cleared between context switch.
20) Corrected NULL pointer de-reference of p_tcb on OS_SchedRoundRobin(), if no TCB in the ready list.
21) Adjusted check for nesting interrupts on OSSched() by removing conditional compilation based
on OS_CFG_CALLED_FROM_ISR_CHK_EN.
22) Adjusted formatting & function descriptions.
-----------------------------------------------------------------------------------------------------------
Release V3.01.1 (2010/01/11):
-----------------------------------------------------------------------------------------------------------
1) Added PERIODIC and MATCH modes to OSTimeDlyHMSM().
2) Improved the performance of the scheduler lock time measurement.
3) Added OS_CFG_TS_EN in OS_CFG.H which is used to enable/disable time stamping.
4) OSTaskStkChk() now returns the number of free and used 'ELEMENTS' instead of 'BYTES'.
This is done for consistency.
5) Fixed a bug with OS_PendListRemove1() which removes a task from a wait list.
6) Fixed a bug when pend-aborting a object where a task has multi-pended on the same object
multiple times.
7) Fixed a bug when posting to an event flag group where there are no task(s) pending on the
event flag group.
-----------------------------------------------------------------------------------------------------------
Release V3.01.0 (2009/12/07):
-----------------------------------------------------------------------------------------------------------
1) The API for OSTaskCreate() changed. The seventh argument changed from:
CPU_STK *p_stk_limit;
to
CPU_STK_SIZE stk_limit;
This argument now represents the number of CPU_STK elements left before the stack is empty.
This is used when the CPU supports stack limit checking.
2) As shown above, OS_STK_SIZE has been changed to CPU_STK_SIZE and thus, this data type is declared in uC/CPU
instead of uC/OS-III.
3) We removed OS_AppInitHookPtr because it was impossible to initialize this pointer prior to dereferncing it.
OSInit() set the pointer to NULL and didn't allow the user to change its value before using it.
4) Added a new operating mode to OSTimeDly(), i.e. OS_OPT_TIME_PERIODIC
5) Added the function OSSafetyCriticalStart() which, when called will prevent further kernel objects from being created.
In other words, after calling this function, you will no longer be allowed to create tasks, semaphores, mutexes, etc.
In some safety critical systems, it's not allowed to create kernel objects once initialization has completed.
6) Fixed a bug when an object was pend aborted when using OSPendMulti().
7) Fixed a bug when an object was deleted when using OSPendMulti().
8) Replaced:
for (;;)
to
while (DEF_ON)
for tasks to represent that the loop runs while power is applied.
9) Fixed a bug in OSPendMulti().
The scheduler was locked during a critical region that should have been protected by disabling/enabling interrupts.
10) The timestamp is now read when a task is created to determine when the task starts.
This is used to compute the per task CPU usage.
11) Statistics are reset after determining CPU usage capacity.
12) Changed the copyright notice.
没有合适的资源?快使用搜索试试~ 我知道了~
Micrium_uCOSIII
共207个文件
h:83个
c:69个
pdf:12个
5星 · 超过95%的资源 需积分: 15 30 下载量 199 浏览量
2015-05-11
22:20:46
上传
评论 1
收藏 19.28MB RAR 举报
温馨提示
uC/OS-III实时操作系统的源代码,可以基于ROM运行的、可裁减的、抢占式、实时多任务内核.
资源推荐
资源详情
资源评论
收起资源包目录
Micrium_uCOSIII (207个子文件)
lib_mem_a.asm 12KB
os_cpu_a.asm 8KB
cpu_a.asm 8KB
uCOS-III-Ex2.cspy.bat 2KB
uCOS-III-Ex1.cspy.bat 2KB
uCOS-III-Ex3.cspy.bat 2KB
uCOS-III-Ex4.cspy.bat 2KB
lib_str.c 195KB
stm32f10x_tim.c 128KB
os_core.c 124KB
os_task.c 91KB
lib_mem.c 83KB
cpu_core.c 74KB
stm32f10x_rcc.c 61KB
stm32f10x_adc.c 57KB
os_flag.c 55KB
stm32f10x_i2c.c 47KB
os_tmr.c 44KB
stm32f10x_usart.c 43KB
bsp_i2c.c 42KB
stm32f10x_fsmc.c 40KB
os_q.c 39KB
os_sem.c 38KB
stm32f10x_sdio.c 38KB
stm32f10x_spi.c 36KB
os_mutex.c 36KB
stm32f10x_can.c 36KB
stm32f10x_dma.c 33KB
stm32f10x_flash.c 32KB
cpu_c.c 31KB
stm32f10x_nvic.c 28KB
bsp.c 27KB
app.c 25KB
stm32f10x_gpio.c 24KB
os_tick.c 23KB
lib_ascii.c 23KB
os_time.c 23KB
os_pend_multi.c 21KB
bsp_ser.c 19KB
app.c 19KB
app_vect.c 18KB
app_vect.c 18KB
app_vect.c 18KB
os_dbg.c 18KB
app_vect.c 17KB
stm32f10x_dac.c 17KB
os_int.c 17KB
bsp_int.c 17KB
os_msg.c 17KB
os_stat.c 16KB
os_cpu_c.c 15KB
bsp_stlm75.c 15KB
os_mem.c 14KB
os_cfg_app.c 14KB
stm32f10x_rtc.c 12KB
lib_math.c 12KB
stm32f10x_pwr.c 11KB
bsp_periph.c 11KB
stm32f10x_bkp.c 11KB
app.c 10KB
bsp_os.c 10KB
stm32f10x_lib.c 9KB
stm32f10x_exti.c 9KB
os_app_hooks.c 9KB
os_app_hooks.c 8KB
os_app_hooks.c 8KB
os_app_hooks.c 8KB
os_app_hooks.c 8KB
stm32f10x_wwdg.c 7KB
stm32f10x_systick.c 7KB
app.c 7KB
stm32f10x_iwdg.c 6KB
os_prio.c 6KB
stm32f10x_dbgmcu.c 5KB
stm32f10x_crc.c 5KB
os_var.c 2KB
uCOS-III-Ex4.dbgdt 10KB
uCOS-III-Ex2.dbgdt 7KB
uCOS-III-Ex1.dbgdt 4KB
uCOS-III-Ex3.dbgdt 63B
uCOS-III-Ex2.dni 1KB
uCOS-III-Ex1.dni 1KB
uCOS-III-Ex4.dni 1KB
uCOS-III-Ex3.dni 90B
uCOS-III-Ex2.ewd 21KB
uCOS-III-Ex1.ewd 21KB
uCOS-III-Ex3.ewd 21KB
uCOS-III-Ex4.ewd 21KB
uCOS-III-Ex4.ewp 35KB
uCOS-III-Ex2.ewp 35KB
uCOS-III-Ex1.ewp 35KB
uCOS-III-Ex3.ewp 35KB
uC-Eval-STM32F107.eww 1004B
stm32f10x_map.h 577KB
os.h 114KB
lib_mem.h 78KB
lib_def.h 49KB
lib_ascii.h 47KB
stm32f10x_tim.h 46KB
cpu_core.h 45KB
共 207 条
- 1
- 2
- 3
资源评论
- keep_in_mind2018-01-24还不错,有应用实例!
- liuwq0122017-06-26多谢楼主分享!!!
sam-X
- 粉丝: 218
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功