summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/thread.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: DocumentationSebastian Huber2012-04-201-0/+3
|
* 2011-10-17 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-10-171-2/+0
| | | | | | PR 1938/cpukit * score/include/rtems/score/thread.h: Removed obsolete suspend_count field from Thread_Control.
* 2011-09-15 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-09-151-3/+5
| | | | | * score/include/rtems/score/thread.h: Ensure CBS builds with POSIX disabled.
* 2011-06-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-06-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rtems/include/rtems/rtems/types.h, score/include/rtems/score/address.h, score/include/rtems/score/apiext.h, score/include/rtems/score/bitfield.h, score/include/rtems/score/context.h, score/include/rtems/score/corebarrier.h, score/include/rtems/score/coremsg.h, score/include/rtems/score/coremutex.h, score/include/rtems/score/corerwlock.h, score/include/rtems/score/coresem.h, score/include/rtems/score/corespinlock.h, score/include/rtems/score/interr.h, score/include/rtems/score/isr.h, score/include/rtems/score/mpci.h, score/include/rtems/score/mppkt.h, score/include/rtems/score/objectmp.h, score/include/rtems/score/percpu.h, score/include/rtems/score/priority.h, score/include/rtems/score/rbtree.h, score/include/rtems/score/scheduler.h, score/include/rtems/score/smp.h, score/include/rtems/score/smplock.h, score/include/rtems/score/stack.h, score/include/rtems/score/states.h, score/include/rtems/score/thread.h, score/include/rtems/score/threadq.h, score/include/rtems/score/threadsync.h, score/include/rtems/score/timespec.h, score/include/rtems/score/timestamp.h, score/include/rtems/score/timestamp64.h, score/include/rtems/score/tod.h, score/include/rtems/score/tqdata.h, score/include/rtems/score/watchdog.h, score/include/rtems/score/wkspace.h: Mark Score files as in Score Group to improve Doxygen output.
* 2011-06-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-06-171-9/+18
| | | | | | | | | | | | | | | | | | | * libcsupport/include/rtems/malloc.h, libmisc/stackchk/stackchk.h, posix/include/rtems/posix/time.h, rtems/include/rtems/rtems/object.h, score/include/rtems/score/apiext.h, score/include/rtems/score/interr.h, score/include/rtems/score/mpci.h, score/include/rtems/score/objectmp.h, score/include/rtems/score/thread.h, score/include/rtems/score/threadmp.h, score/include/rtems/score/threadq.h, score/include/rtems/score/timespec.h, score/include/rtems/score/timestamp.h, score/include/rtems/score/timestamp64.h, score/include/rtems/score/tod.h, score/include/rtems/score/watchdog.h, score/include/rtems/score/wkspace.h: Make @brief formatting more consistent. * score/include/rtems/score/rbtree.h: Also reformat.
* 2011-06-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-06-171-8/+1
| | | | | | | | | | | | | | | | | | | PR 1819/cpukit * rtems/src/clocktick.c, score/Makefile.am, score/include/rtems/score/scheduler.h, score/include/rtems/score/schedulerpriority.h, score/include/rtems/score/schedulersimple.h, score/include/rtems/score/schedulersimplesmp.h, score/include/rtems/score/thread.h, score/inline/rtems/score/scheduler.inl: Add a scheduler entry point which is invoked at each clock tick. _Thread_Tickle_timeslice() is now a method owned by the Deterministic Priority Scheduler and shared by the Simple Priority Scheduler. The Simple SMP Scheduler has its own variation on this which does timeslicing bookkeeping on all cores. * score/src/schedulerprioritytick.c, score/src/schedulersimplesmptick.c: New files. * score/src/threadtickletimeslice.c: Removed.
* Remove white-spaces.Ralf Corsepius2011-05-241-1/+1
|
* 2011-05-23 Jennifer Averett <Jennifer.Averett@OARcorp.com>Jennifer Averett2011-05-231-0/+55
| | | | | | | * score/Makefile.am, score/include/rtems/score/thread.h, score/inline/rtems/score/thread.inl: Add smp support to dispable dispatch level accesses. * score/src/threaddispatchdisablelevel.c: New file.
* 2011-05-12 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-05-121-10/+0
| | | | | | | | PR 1788/cpukit * score/include/rtems/score/percpu.h, score/include/rtems/score/thread.h: Make time of last context switch part of per cpu information since each core has a different context switch to track.
* 2011-04-22 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-04-221-0/+9
| | | | | | | PR 1782/cpukit * score/include/rtems/score/thread.h: Disable deferred FPU context switches when SMP is enabled. Per code tracking of deferred contexts is not implemented.
* 2011-04-21 Jennifer Averett <Jennifer.Averett@OARcorp.comJennifer Averett2011-04-211-0/+12
| | | | | | | | | | | | | PR 1777/cpukit * libcsupport/src/malloc_deferred.c, libcsupport/src/realloc.c, score/Makefile.am, score/cpu/lm32/irq.c, score/cpu/nios2/irq.c, score/include/rtems/score/coremutex.h, score/include/rtems/score/thread.h, score/inline/rtems/score/thread.inl, score/src/heapfree.c, score/src/pheapwalk.c, score/src/smp.c, score/src/threaddispatch.c: Consolidated access to _Thread_Dispatch_disable_level. * score/src/threaddisabledispatch.c, score/src/threadenabledispatch.c: New files.
* 2011-03-15 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-03-151-7/+4
| | | | | | | * rtems/src/taskresume.c, score/Makefile.am, score/include/rtems/score/thread.h: Convert _Thread_Resume and _Thread_Suspend into macros. * score/src/threadresume.c, score/src/threadsuspend.c: Removed.
* 2011-02-18 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2011-02-181-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sapi/include/confdefs.h, score/Makefile.am, score/include/rtems/score/scheduler.h, score/include/rtems/score/schedulerpriority.h, score/include/rtems/score/thread.h, score/inline/rtems/score/scheduler.inl, score/inline/rtems/score/schedulerpriority.inl, score/src/scheduler.c, score/src/schedulerpriority.c, score/src/schedulerpriorityblock.c, score/src/schedulerpriorityschedule.c, score/src/schedulerpriorityunblock.c, score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c, score/src/threadclose.c, score/src/threadinitialize.c, score/src/threadsetpriority.c, score/src/threadsettransient.c: Significant clean up on Scheduler Plugin Interface. Names were shortened. Missing operations added. Many scheduler files had unneeded includes removed. Made pointer to scheduler information in Thread_Control and Scheduler_Control a void * pointer because the thread and scheduler wrapper should be unaware of scheduler types AND this is broken for user provided schedulers. * score/src/schedulerpriorityallocate.c, score/src/schedulerpriorityenqueue.c, score/src/schedulerpriorityenqueuefirst.c, score/src/schedulerpriorityextract.c, score/src/schedulerpriorityfree.c, score/src/schedulerpriorityupdate.c: New files. * score/src/schedulerprioritythreadschedulerallocate.c, score/src/schedulerprioritythreadschedulerfree.c, score/src/schedulerprioritythreadschedulerupdate.c: Removed.
* 2010-11-24 Gedare Bloom <giddyup44@yahoo.com>Joel Sherrill2010-11-241-18/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | PR 1647/cpukit * posix/src/nanosleep.c, posix/src/sched_yield.c, rtems/src/taskwakeafter.c, sapi/include/confdefs.h, sapi/include/rtems/config.h, sapi/src/exinit.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/prioritybitmap.h, score/include/rtems/score/thread.h, score/inline/rtems/score/thread.inl, score/src/thread.c, score/src/threadchangepriority.c, score/src/threadclearstate.c, score/src/threadclose.c, score/src/threadinitialize.c, score/src/threadready.c, score/src/threadresume.c, score/src/threadsetpriority.c, score/src/threadsetstate.c, score/src/threadsettransient.c, score/src/threadsuspend.c, score/src/threadtickletimeslice.c: Refactor scheduler out of thread handler to facilitate alternate scheduler implementations. * score/src/threadyieldprocessor.c: Removed. * score/src/schedulerprioritythreadschedulerupdate.c, score/src/schedulerprioritythreadschedulerfree.c, score/src/schedulerpriorityblock.c, score/src/scheduler.c, score/src/schedulerprioritythreadschedulerallocate.c, score/src/schedulerpriorityunblock.c, score/src/schedulerpriority.c, score/src/schedulerpriorityyield.c, score/include/rtems/score/schedulerpriority.h, score/include/rtems/score/scheduler.h, score/inline/rtems/score/scheduler.inl, score/inline/rtems/score/schedulerpriority.inl: New files.
* 2010-07-29 Gedare Bloom <giddyup44@yahoo.com>Joel Sherrill2010-07-291-1/+2
| | | | | | | | | | | | | | | | | | | | | | | PR 1635/cpukit * sapi/src/exinit.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/bitfield.h, score/include/rtems/score/priority.h, score/include/rtems/score/thread.h, score/inline/rtems/score/priority.inl, score/inline/rtems/score/thread.inl, score/src/threadchangepriority.c, score/src/threadclearstate.c, score/src/threadready.c, score/src/threadresume.c, score/src/threadsetpriority.c, score/src/threadsetstate.c, score/src/threadsettransient.c, score/src/threadsuspend.c: Refactoring of priority handling, to isolate the bitmap implementation of priorities in the supercore so that priority management is a little more modular. This change is in anticipation of scheduler implementations that can select how they manage tracking priority levels / finding the highest priority ready task. Note that most of the changes here are simple renaming, to clarify the use of the bitmap-based priority management. * score/include/rtems/score/prioritybitmap.h, score/inline/rtems/score/prioritybitmap.inl: New files.
* 2010-06-28 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2010-06-291-34/+8
| | | | | | | | | | | | | | | | | | | PR 1573/cpukit * configure.ac, posix/src/killinfo.c, posix/src/psignalclearprocesssignals.c, posix/src/psignalsetprocesssignals.c, posix/src/psignalunblockthread.c, posix/src/pthreadcreate.c, posix/src/pthreadkill.c, posix/src/pthreadsigmask.c, rtems/src/signalsend.c, rtems/src/taskmode.c, score/Makefile.am, score/preinstall.am, score/include/rtems/system.h, score/include/rtems/score/context.h, score/include/rtems/score/isr.h, score/include/rtems/score/thread.h, score/src/isr.c, score/src/isrthreaddispatch.c, score/src/thread.c, score/src/threaddispatch.c, score/src/threadloadenv.c: Add a per cpu data structure which contains the information required by RTEMS for each CPU core. This encapsulates information such as thread executing, heir, idle and dispatch needed. * score/include/rtems/score/percpu.h, score/src/percpu.c: New files.
* 2010-06-24 Gedare Bloom <giddyup44@yahoo.com>Joel Sherrill2010-06-241-8/+0
| | | | | | | | PR 1589/cpukit * score/Makefile.am, score/include/rtems/score/thread.h, score/inline/rtems/score/thread.inl: Make _Thread_Evaluate_mode() an inline method. It is only used in one place and relatively simple. * score/src/threadevaluatemode.c: Removed.
* 2010-06-24 Gedare Bloom <giddyup44@yahoo.com>Joel Sherrill2010-06-241-10/+0
| | | | | | | | | PR 1590/cpukit * score/Makefile.am, score/include/rtems/score/thread.h, score/src/threadtickletimeslice.c: Remove _Thread_Reset_timeslice and replaces its single use with a call to the functionally equivalent _Thread_Yield_processor(). * score/src/threadresettimeslice.c: Removed.
* 2010-06-18 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2010-06-181-4/+2
| | | | * score/include/rtems/score/thread.h: Remove ITRON.
* Remove RTEMS_ITRON_API conditional blocks.Ralf Corsepius2010-06-181-1/+1
|
* 2010-06-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2010-06-171-9/+0
| | | | | | * score/include/rtems/score/object.h, score/include/rtems/score/thread.h: Remove prototypes for ITRON only methods removed by Ralf.
* 2009-12-02 Glenn Humphrey <glenn.humphrey@OARcorp.com>Glenn Humphrey2009-12-021-14/+2
| | | | | | | | | | | | | * configure.ac, libcsupport/src/__times.c, libmisc/cpuuse/cpuusagedata.c, libmisc/cpuuse/cpuusagereport.c, libmisc/cpuuse/cpuusagereset.c, rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/types.h, rtems/src/ratemongetstatistics.c, rtems/src/ratemongetstatus.c, rtems/src/ratemonperiod.c, rtems/src/ratemonreportstatistics.c, score/include/rtems/score/thread.h, score/src/threaddispatch.c, score/src/threadinitialize.c, score/src/threadtickletimeslice.c: Changed the configuration of statistics granularity to use just one define.
* Whitespace removal.Ralf Corsepius2009-11-281-5/+5
|
* 2009-11-09 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-11-091-5/+1
| | | | | | | * score/include/rtems/score/thread.h: Revert accidentally committed change. It is possible that _Thread_Dispatch_disable_level can be an 8-bit variable but this impacts assembly and must be carefully considered.
* 2009-10-30 Glenn Humphrey <glenn.humphrey@oarcorp.com>Joel Sherrill2009-10-301-1/+5
| | | | | | | | PR pr1462/cpukit * rtems/include/rtems/rtems/ratemon.h, rtems/src/ratemongetstatus.c, rtems/src/ratemonperiod.c, rtems/src/ratemontimeout.c, score/include/rtems/score/thread.h: Fix bugs in rate monotonic statistics.
* 2009-09-13 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-09-131-6/+11
| | | | | | * score/include/rtems/score/thread.h, score/src/threadinitialize.c, score/src/threadstackfree.c: Disable capability for API to let user provide thread stack when no API configured includes this capability.
* 2009-09-11 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2009-09-111-3/+16
| | | | | | | * score/include/rtems/score/thread.h, score/src/threadhandler.c, score/src/threadinitialize.c, score/src/threadtickletimeslice.c: Disable thread protocol and scheduling capabilities not exercised when POSIX or ITRON API is disabled.
* 2009-08-19 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2009-08-191-0/+2
| | | | | | | * sapi/include/confdefs.h, score/Makefile.am, score/include/rtems/score/thread.h: Only instantiate _Thread_Idle_body() if it is going ot be used. * score/src/threadidlebody.c: Removed.
* 2009-06-01 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2009-06-011-1/+5
| | | | | | | * score/include/rtems/score/thread.h, score/src/threadinitialize.c, score/src/threadreset.c, score/src/threadresume.c, score/src/threadsuspend.c: Nesting count on thread suspension is only supported from ITRON API so disable if ITRON is disabled.
* 2009-06-01 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2009-06-011-2/+4
| | | | | | | | * score/include/rtems/score/thread.h, score/src/threadhandler.c: Merge conditional code from main and init/fini C++ constructors so the body of this method reads better. Mark thread prototypes which are not currently exercised by any APIs with FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API conditional.
* 2009-02-12 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-02-121-2/+2
| | | | | | * sapi/include/rtems/config.h, score/include/rtems/score/thread.h, score/src/threadidlebody.c: Change prototype of IDLE thread to consistently return void * and take a uintptr_t argument.
* Eliminate TRUE/FALSE.Ralf Corsepius2008-12-221-1/+1
|
* 2008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-12-171-9/+2
| | | | | | | | | | | | | * sapi/include/rtems/extension.h, sapi/include/rtems/io.h, sapi/src/exinit.c, sapi/src/extension.c, sapi/src/io.c, score/include/rtems/score/mpci.h, score/include/rtems/score/object.h, score/include/rtems/score/thread.h, score/include/rtems/score/tod.h, score/include/rtems/score/userext.h, score/include/rtems/score/wkspace.h, score/src/coretod.c, score/src/mpci.c, score/src/object.c, score/src/thread.c, score/src/userext.c, score/src/wkspace.c: Convert SAPI manager and SuperCore Handler initialization routines to directly pull parameters from configuration table.
* 2008-12-10 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-12-101-5/+3
| | | | | | | | | | * rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/types.h, rtems/src/ratemongetstatistics.c, rtems/src/ratemongetstatus.c, rtems/src/ratemonperiod.c, rtems/src/ratemonreportstatistics.c, score/include/rtems/score/thread.h, score/src/coretodgetuptime.c: Make all Thread and Period Statistics use publicly defined types. Do not leak the SuperCore Timestamp type through the APIs.
* 2008-12-08 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-12-081-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | * libcsupport/src/__times.c, libmisc/cpuuse/cpuusagereport.c, libmisc/cpuuse/cpuusagereset.c, posix/src/clockgettime.c, posix/src/pthread.c, posix/src/timersettime.c, rtems/include/rtems/rtems/ratemon.h, rtems/src/clockgetsecondssinceepoch.c, rtems/src/clockgetuptime.c, rtems/src/ratemongetstatus.c, rtems/src/ratemonperiod.c, rtems/src/ratemonreportstatistics.c, rtems/src/taskwakewhen.c, rtems/src/timerfirewhen.c, rtems/src/timerserver.c, rtems/src/timerserverfirewhen.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/thread.h, score/include/rtems/score/tod.h, score/src/coretod.c, score/src/coretodget.c, score/src/coretodgetuptime.c, score/src/coretodset.c, score/src/coretodtickle.c, score/src/threaddispatch.c, score/src/threadinitialize.c: Add SuperCore handler Timestamp to provide an opaque class for the representation and manipulation of uptime, time of day, and the difference between two timestamps. By using SuperCore Timestamp, it is clear which methods and APIs really have to be struct timespec and which can be in an optimized native format. * score/include/rtems/score/timestamp.h, score/src/coretodgetuptimetimespec.c: New files.
* Convert to "bool".Ralf Corsepius2008-09-041-13/+13
|
* 2008-08-05 Sebastian Huber <sebastian.huber@embedded-brains.de>Joel Sherrill2008-08-081-28/+39
| | | | | | | | * libmisc/monitor/monitor.h, rtems/include/rtems/rtems/tasks.h, score/include/rtems/score/thread.h, score/src/threadreset.c, score/src/threadrestart.c, score/src/threadstart.c: New type Thread_Entry_numeric_type for numeric arguments in thread entry functions with at least one numeric argument.
* 2008-08-04 Sebastian Huber <sebastian.huber@embedded-brains.de>Joel Sherrill2008-08-051-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | * rtems/include/rtems/rtems/sem.h, rtems/src/semobtain.c: Changed option set type to rtems_option. * score/src/objectgetinfo.c: Check return value of _Objects_API_maximum_class(). * libmisc/monitor/mon-mpci.c, libmisc/monitor/monitor.h, rtems/include/rtems/rtems/message.h, rtems/src/msgmp.c, rtems/src/msgqallocate.c, rtems/src/msgqbroadcast.c, rtems/src/msgqcreate.c, rtems/src/msgqreceive.c, rtems/src/msgqsend.c, rtems/src/msgqurgent.c, score/include/rtems/score/coremsg.h, score/include/rtems/score/mpci.h, score/include/rtems/score/thread.h, score/inline/rtems/score/coremsg.inl, score/src/coremsg.c, score/src/coremsgbroadcast.c, score/src/coremsgseize.c, score/src/coremsgsubmit.c: Removed parameters of _Message_queue_Allocate(). Changed option set type to rtems_option. Changed type of maximum message and packet size to size_t. Changed the input buffer type for message send functions to "const void *". Changed the pointer to the second return argument in the thread wait information to a union. This union can contain a pointer to an immutable or a mutable object. This is somewhat fragile. An alternative would be to add a third pointer for immutable objects, but this would increase the structure size.
* Add missing prototype.Ralf Corsepius2008-08-011-1/+1
|
* Support rtems_ada_self iff __RTEMS_ADA__ is given.Ralf Corsepius2008-07-021-0/+2
|
* Rename __STRICT_ORDER_MUTEX__ to __RTEMS_STRICT_ORDER_MUTEX__.Ralf Corsepius2008-06-301-1/+1
|
* 2008-06-06 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-06-061-3/+3
| | | | | | * rtems/include/rtems/rtems/ratemon.h, rtems/src/ratemonperiod.c, score/include/rtems/score/thread.h: Complete previous patch. Add typedef for cpu usage statistics.
* 2008-06-06 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-06-061-5/+6
| | | | | | | | | | | | | * libcsupport/src/__times.c, libmisc/cpuuse/cpuusagereport.c, libmisc/cpuuse/cpuusagereset.c, libmisc/monitor/mon-task.c, rtems/include/rtems/rtems/ratemon.h, rtems/src/ratemongetstatus.c, rtems/src/ratemonperiod.c, score/include/rtems/score/thread.h, score/src/threaddispatch.c, score/src/threadinitialize.c, score/src/threadtickletimeslice.c: Add typedefs for cpu usage and period timing statistics. Also renamed related variables and structure members so they are the same whether you are using nanosecond (e.g. struct timespec) or ticks (e.g. uint32_t) granularity. This lays the groundwork for future cleanup.
* 2008-01-29 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-01-291-2/+2
| | | | | | | | | | | | | | | | * score/Doxyfile: Update to latest Doxygen format. * score/include/rtems/score/apimutex.h, score/include/rtems/score/corebarrier.h, score/include/rtems/score/coremutex.h, score/include/rtems/score/corerwlock.h, score/include/rtems/score/heap.h, score/include/rtems/score/object.h, score/include/rtems/score/protectedheap.h, score/include/rtems/score/thread.h, score/include/rtems/score/threadsync.h, score/include/rtems/score/tod.h, score/inline/rtems/score/corerwlock.inl, score/inline/rtems/score/corespinlock.inl: Remove most doxygen warnings.
* 2008-01-22 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-01-221-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rtems/include/rtems/rtems/event.h, rtems/inline/rtems/rtems/eventset.inl, rtems/src/event.c, rtems/src/eventseize.c, rtems/src/eventsurrender.c, rtems/src/eventtimeout.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/interr.h, score/include/rtems/score/thread.h, score/include/rtems/score/threadq.h, score/include/rtems/score/tqdata.h, score/inline/rtems/score/threadq.inl, score/inline/rtems/score/tqdata.inl, score/src/threadq.c, score/src/threadqdequeue.c, score/src/threadqdequeuefifo.c, score/src/threadqdequeuepriority.c, score/src/threadqenqueue.c, score/src/threadqenqueuefifo.c, score/src/threadqenqueuepriority.c, score/src/threadqextract.c, score/src/threadqextractfifo.c, score/src/threadqextractpriority.c, score/src/threadqextractwithproxy.c, score/src/threadqfirst.c, score/src/threadqfirstfifo.c, score/src/threadqfirstpriority.c, score/src/threadqflush.c, score/src/threadqrequeue.c, score/src/threadqtimeout.c: Refactor thread queue enqueue and event blocking synchronization critical sections. This resulted in three copies of essentially the same hard to test critical section code becoming the one shared routine _Thread_blocking_operation_Cancel. In addition, the thread queue and event code now share a common synchronization enumerated type. Along the way, switches were reworked to eliminate dead code generated by gcc and comments and copyrights were updated. * score/include/rtems/score/threadsync.h, score/src/threadblockingoperationcancel.c: New files.
* 2007-12-21 Xi Yang <hiyangxi@gmail.com>Joel Sherrill2007-12-211-0/+5
| | | | | | | | | * configure.ac, score/include/rtems/score/coremutex.h, score/include/rtems/score/thread.h, score/inline/rtems/score/coremutex.inl, score/src/coremutexsurrender.c, score/src/threadinitialize.c: Add support for proper stacking of priority inheritance on mutexes as well as enforce proper order of release.
* 2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-11-281-2/+5
| | | | | | | * sapi/src/exinit.c, score/include/rtems/score/object.h, score/include/rtems/score/thread.h, score/src/object.c, score/src/thread.c: Conditionally compile out more code that is specific to multiprocessor configurations.
* 2007-11-26 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-11-261-1/+1
| | | | * score/include/rtems/score/thread.h: Fix spelling error.
* 2007-10-26 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-10-261-0/+21
| | | | | | | | | | | | * score/Makefile.am, score/include/rtems/score/thread.h, score/inline/rtems/score/thread.inl: No longer inline _Thread_Get. It resulted in unnessary code explosion, many uncovered paths when looking at binary executable coverage, and only optimized getting self. Id translations were still getting pushed to a subroutine call to _Objects_Get. Later the non-inlined version can be further optimized to get Ids in range for the current API, then self, then look at other APIs. * score/src/threadget.c: New file.
* 2007-05-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2007-05-171-2/+35
| | | | | | | | | | | | | | | | | | | | * ChangeLog, configure.ac, libcsupport/src/__times.c, libmisc/cpuuse/cpuuse.c, libmisc/stackchk/check.c, rtems/include/rtems/rtems/ratemon.h, rtems/src/ratemongetstatus.c, rtems/src/ratemonperiod.c, rtems/src/ratemonreportstatistics.c, rtems/src/ratemonresetall.c, rtems/src/ratemontimeout.c, score/Makefile.am, score/include/rtems/score/thread.h, score/include/rtems/score/timespec.h, score/src/threaddispatch.c, score/src/threadinitialize.c, score/src/threadtickletimeslice.c, score/src/timespecdivide.c: Add nanoseconds granularity to the rate monotonic period statistics and CPU usage statistics. This capability is enabled by default although may be conditionally disabled by the user. It could be too much overhead on small targets but it does not appear to be bad in early testing. Its impact on code size has not been evaluated either. It is possible that both forms of statistics gathering could be disabled with further tweaking of the conditional compilation. * score/src/timespecdividebyinteger.c: New file.