The cpuuse top command now supports the current load where the list of tasks is ordered based on the current load rather than the total cpu usage. This lets you see what is using the processor at any specific instance. The ability to sort on a range of thread values is now supported. Added memory usage stats for unified and separate workspace and C heaps as well as displaying the allocated stack space. Added a few more command keys to refresh the display, show all tasks in the system, control the lines display and a scrolling mode that does not clear the display on each refresh. Removed support for tick kernel builds. The tick support in the kernel is to be removed.
Get rid of _CPU_cache_invalidate_instruction_range declaration as it doesn't make sense here.
A thread join is twofold. There is one thread that exists and an arbitrary number of threads that wait for the thread exit (one-to-many relation). The exiting thread may want to wait for a thread that wants to join its exit (STATES_WAITING_FOR_JOIN_AT_EXIT in _POSIX_Thread_Exit()). On the other side we need a thread queue for all the threads that wait for the exit of one particular thread (STATES_WAITING_FOR_JOIN in pthread_join()). Update #2035.
Otherwise there is a risk that a CPU misses a cache manager message from another CPU and the test hangs.
Remove _Thread_Acquire() and _Thread_Acquire_for_executing(). Add utility functions for the default thread lock. Use the default thread lock for the RTEMS events. There is no need to disable thread dispatching and a Giant acquire in _Event_Timeout() since this was already done by the caller. Update #2273.