|
楼主 |
发表于 2014-3-16 14:13:53
|
显示全部楼层
Version 3.01.00
Release date : 2009-12-07
Requirements
[li]μC/LIB[/li][li]μC/CPU[/li]
New features & improvements
[li]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.[/li][li]Added a new operating mode to OSTimeDly(), i.e. OS_OPT_TIME_PERIODIC[/li][li]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.[/li][li]Replaced: 'for (;;)' to 'while (DEF_ON)' for tasks to represent that the loop runs while power is applied[/li][li]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.[/li]
API Changes
[li]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.[/li]
Bug fixes
[li]Fixed a bug when an object was pend aborted when using OSPendMulti().[/li][li]Fixed a bug when an object was deleted when using OSPendMulti().[/li][li]Statistics are reset after determining CPU usage capacity.[/li][li]Fixed a bug in OSPendMulti(). The scheduler was locked during a critical region that should have been protected by disabling/enabling interrupts.[/li] |
|