硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5849|回复: 2
收起左侧

[μCOS-III] μCOS-III的版本更新记录

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107034
QQ
发表于 2014-2-18 10:19:55 | 显示全部楼层 |阅读模式
现在最新的版本已经到3.04.01了,不过是以工程代码的形式给出的。
下面的这个更新记录是从这里下载的:
http://micrium.com/downloadcenter/micrium-source-code/
更新记录也比较的重要,方便以后做教程的时候参考
  1. Micri祄
  2. 1290 Weston Road, Suite 306
  3.        Weston,  FL 33326
  4.         www.micrium.com
  5.         +1 954 217 2036
  6. 礐/OS-III, The Real-Time Kernel
  7.            READ ME
  8. -----------------------------------------------------------------------------------------------------------
  9. Release V3.03.00 (2012/02/14):
  10. -----------------------------------------------------------------------------------------------------------
  11.   1) Added Thread Local Storage (TLS) support
  12.      See chapter 20 of the User's Manual
  13.   2) Computation of CPU usage has now a resolution of 1/100th of a percent
  14.   3) Added OSTaskRegGetID() to assign task register IDs dynamically
  15.   4) Now able to Suspend and Resume tasks from ISRs
  16.   5) Added option 'OS_OPT_TASK_NO_TLS' to OSTaskCreate() to specify that a task will not require TLS
  17.   6) Added and changed some error codes
  18.   7) Removed OSMsgPoolExtend() since it was not documented and not used.
  19.   8) Added global OSStatTaskCPUUsageMax to keep track of peak CPU usage.  
  20.      This value is reset by OSStatReset()
  21.      
  22.   9) Added per task .CPUUsageMax which tracks the peak CPU usage of each task.
  23.    
  24. -----------------------------------------------------------------------------------------------------------
  25. Release V3.02.00 (2011/08/01):
  26. -----------------------------------------------------------------------------------------------------------
  27.   1) Corrected pointer to integer cast in OSMemCreate.
  28.   2) Corrected invalid typecast on constant initialization on os_cfg_app.c.
  29.   3) Added a "return" statement after each invocation of the OS_SAFETY_CRITICAL_EXCEPTION() macro.
  30.   4) Fixed OS_TmrLink() while adding Tmr object into middle of spoke linked-list.
  31.   5) Corrected OS_TmrResetPeak() reset maximum number of entries (NbrEntriesMax).
  32.   6) Added note to clarify use of OS_OPT_LINK_DLY option on OS_TmrLink() at OSTmrStart().
  33.   7) Adjusted order of operation on Tick Wheel during insert (OS_TickListInsert) to first set link pointers
  34.      on new object, then add it to the linked-list.
  35.   8) Corrected OS_OPT_POST_NO_SCHED option for OSFlagPost and OSFlagPendAbort.
  36.   9) Initialize Interrupt Queue Handler Task before any other task to prevent usage of OSIntQNbrEntries
  37.      uninitialized.
  38. 10) Corrected use of disabled variable 'OSCfg_ISRStk'.
  39. 11) Changed default OS_CYCLES to 32-bits.
  40. 12) Corrected per task CPU usage statistics computation.
  41. 13) Adjusted version to new format Vx.yy.zz.
  42. 14) Removed OS_TMR_TICK datatype; converted OSTmrTickCtr to OS_TICK to be consistent with other OS_TMR
  43.      structure fields.
  44. 15) Prevent OSSchedLock/Unlock() to be called from ISR.
  45. 16) Re-arranged order of data structure members on OS_TCB to keep non-optional items at the beginning of
  46.      the structure.
  47. 17) Changed error codes to enum.
  48. 18) Converted OS object types to use CPU_TYPE_CREATE.
  49. 19) Reworked check to not allow to create multiple tasks at idle task priority.
  50. 20) Corrected alignment check on OSMemCreate() to handle cases where sizeof(void *) == 1.
  51. 21) Added changes to priority handling to allow word addressable architectures.
  52. 22) Adjusted copyright in file headers for source available distribution.
  53. -----------------------------------------------------------------------------------------------------------
  54. Release V3.01.2 (2010/05/14):
  55. -----------------------------------------------------------------------------------------------------------
  56.   1) Added error checking for time stamp configuration #defines.
  57.   2) Removal of some MISRA C 2004 errors.
  58.   3) Corrected OS_MEM structure definition for field FreeListPtr.
  59.   4) Moved OSInitHook() to beginning of OSInit() to be consistent with documentation section about
  60.      differences between uC/OS-II and uC/OS-III port functions.
  61.   5) Removed duplicate call to OS_TickListRemove() in OS_TickListUpdate().
  62.   6) Corrected OS_TmrLink() where number of entries in spoke was incremented twice for a particular
  63.      case, and timer previous pointer was alwyas being cleared before exit the function.
  64.   7) Corrected OSTaskChangePrio() to update task priority if task is pending on Task Queue, Task Sem,
  65.      or Flag.
  66.   8) Corrected OSTaskDel() TCB clean up where it could potentially be skipped if context switch happened
  67.      before OSSched().
  68.   9) Corrected sections of code conditional on OS_CFG_Q_EN & OS_CFG_TASK_Q_EN.
  69. 10) Corrected DbgListRemove procedures where it did not clear the DbgPrevPtr of the first object when
  70.      the head of the list was removed.
  71. 11) Removed sections where TimeQuantaCtr was incorrectly reset.
  72. 12) Corrected NULL pointer de-reference on OSMutexDel() with OS_OPT_DEL_ALWAYS option when Mutex created
  73.      and deleted right away.
  74. 13) Added OSStatResetFlag into OS_StatTask to force reset of the computed statistics.
  75. 14) Added OSIntQMaxNbrEntries into computed statistics.
  76. 15) Reordered DbgListAdd/Remove to prevent a still linked object from being cleared.
  77. 16) Corrected DbgList removal in OSTmrDel().
  78. 17) Added critical section in OSMemCreate().
  79. 18) Removed access to uninitialized kernel objects (p_obj->Type).
  80. 19) Corrected port's OSTaskSwHook where OSSchedLockTimeMaxCur was not always cleared between context switch.
  81. 20) Corrected NULL pointer de-reference of p_tcb on OS_SchedRoundRobin(), if no TCB in the ready list.
  82. 21) Adjusted check for nesting interrupts on OSSched() by removing conditional compilation based
  83.      on OS_CFG_CALLED_FROM_ISR_CHK_EN.
  84. 22) Adjusted formatting & function descriptions.
  85. -----------------------------------------------------------------------------------------------------------
  86. Release V3.01.1 (2010/01/11):
  87. -----------------------------------------------------------------------------------------------------------
  88. 1) Added PERIODIC and MATCH modes to OSTimeDlyHMSM().
  89. 2) Improved the performance of the scheduler lock time measurement.
  90. 3) Added OS_CFG_TS_EN in OS_CFG.H which is used to enable/disable time stamping.
  91. 4) OSTaskStkChk() now returns the number of free and used 'ELEMENTS' instead of 'BYTES'.
  92.     This is done for consistency.
  93. 5) Fixed a bug with OS_PendListRemove1() which removes a task from a wait list.
  94. 6) Fixed a bug when pend-aborting a object where a task has multi-pended on the same object
  95.     multiple times.
  96. 7) Fixed a bug when posting to an event flag group where there are no task(s) pending on the
  97.     event flag group.
  98. -----------------------------------------------------------------------------------------------------------
  99. Release V3.01.0 (2009/12/07):
  100. -----------------------------------------------------------------------------------------------------------
  101. 1) The API for OSTaskCreate() changed.    The seventh argument changed from:
  102.        CPU_STK       *p_stk_limit;
  103.     to
  104.        CPU_STK_SIZE   stk_limit;
  105.     This argument now represents the number of CPU_STK elements left before the stack is empty.  
  106.     This is used when the CPU supports stack limit checking.
  107. 2) As shown above, OS_STK_SIZE has been changed to CPU_STK_SIZE and thus, this data type is declared in uC/CPU
  108.     instead of uC/OS-III.
  109. 3) We removed OS_AppInitHookPtr because it was impossible to initialize this pointer prior to dereferncing it.
  110.     OSInit() set the pointer to NULL and didn't allow the user to change its value before using it.
  111. 4) Added a new operating mode to OSTimeDly(), i.e. OS_OPT_TIME_PERIODIC
  112. 5) Added the function OSSafetyCriticalStart() which, when called will prevent further kernel objects from being created.
  113.     In other words, after calling this function, you will no longer be allowed to create tasks, semaphores, mutexes, etc.
  114.     In some safety critical systems, it's not allowed to create kernel objects once initialization has completed.
  115. 6) Fixed a bug when an object was pend aborted when using OSPendMulti().
  116. 7) Fixed a bug when an object was deleted when using OSPendMulti().
  117. 8) Replaced:
  118.        for (;;)
  119.     to
  120.        while (DEF_ON)
  121.     for tasks to represent that the loop runs while power is applied.
  122. 9) Fixed a bug in OSPendMulti().  
  123.     The scheduler was locked during a critical region that should have been protected by disabling/enabling interrupts.
  124. 10) The timestamp is now read when a task is created to determine when the task starts.
  125.     This is used to compute the per task CPU usage.
  126. 11) Statistics are reset after determining CPU usage capacity.
  127. 12) Changed the copyright notice.
复制代码
回复

使用道具 举报

116

主题

800

回帖

1148

积分

至尊会员

积分
1148
QQ
发表于 2014-2-21 15:54:45 | 显示全部楼层
有必要跟新吗?  现在用的是 V3.01.2版本的程序
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107034
QQ
 楼主| 发表于 2014-2-21 18:25:56 | 显示全部楼层

回 jcx0324 的帖子

jcx0324:有必要跟新吗?  现在用的是 V3.01.2版本的程序 (2014-02-21 15:54) 
不用,没事的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-15 08:08 , Processed in 0.214338 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表