From 1ca951cebfe261c60f694173607a8346813fa6ec Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Mon, 4 Aug 1997 20:05:48 +0000 Subject: Added information based on comments from Katsu Shibuya. --- doc/user/event.t | 1 + doc/user/msg.t | 4 +++- doc/user/region.t | 3 +++ doc/user/rtmon.t | 14 +++++++++++--- doc/user/sem.t | 5 +++-- doc/user/task.t | 13 +++++++++++++ doc/user/timer.t | 28 +++++++++++++++++++++++----- 7 files changed, 57 insertions(+), 11 deletions(-) (limited to 'doc/user') diff --git a/doc/user/event.t b/doc/user/event.t index b859c32c95..1cae0f8807 100644 --- a/doc/user/event.t +++ b/doc/user/event.t @@ -380,3 +380,4 @@ RTEMS: @item @code{EVENT_ANY} return after any events @end itemize +A clock tick is required to support the functionality of this directive. diff --git a/doc/user/msg.t b/doc/user/msg.t index 906b80cff7..1ab487a121 100644 --- a/doc/user/msg.t +++ b/doc/user/msg.t @@ -768,7 +768,6 @@ defined by RTEMS: @item @code{NO_WAIT} - task should not wait @end itemize - Receiving a message from a global message queue which does not reside on the local node will generate a request to the remote node to obtain a message from the specified message @@ -777,6 +776,9 @@ the task must be blocked until a message is posted. A proxy is allocated on the remote node to represent the task until the message is posted. +A clock tick is required to support the timeout functionality of +this directive. + @page @ifinfo @node MESSAGE_QUEUE_GET_NUMBER_PENDING - Get number of messages pending on a queue, MESSAGE_QUEUE_FLUSH - Flush all messages on a queue, MESSAGE_QUEUE_RECEIVE - Receive message from a queue, Message Manager Directives diff --git a/doc/user/region.t b/doc/user/region.t index 3858de52e0..aa68badb16 100644 --- a/doc/user/region.t +++ b/doc/user/region.t @@ -592,6 +592,9 @@ are defined by RTEMS: @item @code{NO_WAIT} - task should not wait @end itemize +A clock tick is required to support the timeout functionality of +this directive. + @page @ifinfo @node REGION_RETURN_SEGMENT - Return segment to a region, REGION_GET_SEGMENT_SIZE - Obtain size of a segment, REGION_GET_SEGMENT - Get segment from a region, Region Manager Directives diff --git a/doc/user/rtmon.t b/doc/user/rtmon.t index 2d7960f3ce..5744bcae86 100644 --- a/doc/user/rtmon.t +++ b/doc/user/rtmon.t @@ -44,11 +44,12 @@ directives provided by the rate monotonic manager are: @end itemize @ifinfo -@node Rate Monotonic Manager Background, Rate Monotonic Manager Definitions, Rate Monotonic Manager Introduction, Rate Monotonic Manager +@node Rate Monotonic Manager Background, Rate Monotonic Manager Required Support, Rate Monotonic Manager Introduction, Rate Monotonic Manager @end ifinfo @section Background @ifinfo @menu +* Rate Monotonic Manager Required Support:: * Rate Monotonic Manager Definitions:: * Rate Monotonic Scheduling Algorithm:: * Schedulability Analysis:: @@ -72,7 +73,14 @@ systems, the services provided by the rate monotonic manager may be used by any application which requires periodic tasks. @ifinfo -@node Rate Monotonic Manager Definitions, Rate Monotonic Scheduling Algorithm, Rate Monotonic Manager Background, Rate Monotonic Manager Background +@node Rate Monotonic Manager Required Support, Rate Monotonic Manager Definitions, Rate Monotonic Manager Background, Rate Monotonic Manager Background +@end ifinfo +@subsection Rate Monotonic Manager Required Support + +A clock tick is required to support the functionality provided by this manager. + +@ifinfo +@node Rate Monotonic Manager Definitions, Rate Monotonic Scheduling Algorithm, Rate Monotonic Manager Required Support, Rate Monotonic Manager Background @end ifinfo @subsection Rate Monotonic Manager Definitions @@ -180,7 +188,7 @@ set and priority assignments: & 1 && 100 && Low &\cr\noalign{\hrule} & 2 && 50 && Medium &\cr\noalign{\hrule} & 3 && 50 && Medium &\cr\noalign{\hrule} -& 4 && 25 && Low &\cr\noalign{\hrule} +& 4 && 25 && High &\cr\noalign{\hrule} }}\hfil} @end tex @end ifset diff --git a/doc/user/sem.t b/doc/user/sem.t index 8d5d512d79..47eca9614b 100644 --- a/doc/user/sem.t +++ b/doc/user/sem.t @@ -502,8 +502,6 @@ defined by RTEMS: @item GLOBAL - global task @end itemize - - Semaphores should not be made global unless remote tasks must interact with the created semaphore. This is to avoid the system overhead incurred by the creation of a global @@ -725,6 +723,9 @@ access the semaphore. If the semaphore is not available and the semaphore is released. A proxy is allocated on the remote node to represent the task until the semaphore is released. +A clock tick is required to support the timeout functionality of +this directive. + @page @ifinfo @node SEMAPHORE_RELEASE - Release a semaphore, Message Manager, SEMAPHORE_OBTAIN - Acquire a semaphore, Semaphore Manager Directives diff --git a/doc/user/task.t b/doc/user/task.t index 33add0256b..6764f08cec 100644 --- a/doc/user/task.t +++ b/doc/user/task.t @@ -560,6 +560,9 @@ compete for the processor and resources. If the task was blocked as well as suspended, this directive clears the suspension and leaves the task in the blocked state. +Suspending a task which is already suspended or resuming a +task which is not suspended is considered an error. + @ifinfo @node Delaying the Currently Executing Task, Changing Task Priority, Suspending and Resuming Tasks, Task Manager Operations @end ifinfo @@ -1062,6 +1065,9 @@ Suspending a global task which does not reside on the local node will generate a request to the remote node to suspend the specified task. +If the task specified by id is already suspended, then the +ALREADY_SUSPENDED status code is returned. + @page @ifinfo @@ -1107,6 +1113,9 @@ Resuming a global task which does not reside on the local node will generate a request to the remote node to resume the specified task. +If the task specified by id is not suspended, then the +INCORRECT_STATE status code is returned. + @page @ifinfo @@ -1448,6 +1457,8 @@ by specifying a value of @code{YIELD_PROCESSOR} in ticks. The maximum timer interval that can be specified is the maximum value which can be represented by the rtems_unsigned32 type. +A clock tick is required to support the functionality of this directive. + @page @ifinfo @@ -1487,3 +1498,5 @@ task will be unblocked and made ready to execute. @subheading NOTES: The ticks portion of time_buffer @value{STRUCTURE} is ignored. The timing granularity of this directive is a second. + +A clock tick is required to support the functionality of this directive. diff --git a/doc/user/timer.t b/doc/user/timer.t index cbca2a868e..a4f52d6464 100644 --- a/doc/user/timer.t +++ b/doc/user/timer.t @@ -39,18 +39,26 @@ facilities. The directives provided by the timer manager are: @ifinfo -@node Timer Manager Background, Timers, Timer Manager Introduction, Timer Manager +@node Timer Manager Background, Timer Manager Required Support, Timer Manager Introduction, Timer Manager @end ifinfo @section Background @ifinfo @menu +* Timer Manager Required Support:: * Timers:: * Timer Service Routines:: @end menu @end ifinfo @ifinfo -@node Timers, Timer Service Routines, Timer Manager Background, Timer Manager Background +@node Timer Manager Required Support, Timers, Timer Manager Background, Timer Manager Background +@end ifinfo +@subsection Required Support + +A clock tick is required to support the functionality provided by this manager. + +@ifinfo +@node Timers, Timer Service Routines, Timer Manager Required Support, Timer Manager Background @end ifinfo @subsection Timers @@ -183,8 +191,11 @@ timer_fire_when directives. The timer_reset directive is used to restore an interval timer initiated by a previous invocation of -timer_fire_after to its original interval length. The timer -service routine is not changed or fired by this directive. +timer_fire_after to its original interval length. If the +timer has not been used or the last usage of this timer +was by a timer_fire_when directive, then an error is +returned. The timer service routine is not changed or +fired by this directive. @ifinfo @node Deleting a Timer, Timer Manager Directives, Resetting a Timer, Timer Manager Operations @@ -520,7 +531,7 @@ procedure Timer_Reset ( @subheading DIRECTIVE STATUS CODES: @code{SUCCESSFUL} - timer reset successfully@* @code{INVALID_ID} - invalid timer id@* -@code{NOT_DEFINED} - attempted to reset a when timer +@code{NOT_DEFINED} - attempted to reset a when or newly created timer @subheading DESCRIPTION: @@ -533,5 +544,12 @@ directive used. @subheading NOTES: +If the timer has not been used or the last usage of this timer +was by a timer_fire_when directive, then the NOT_DEFINED error is +returned. + +Restarting a cancelled after timer results in the timer being +reinitiated with its previous timer service routine and interval. + This directive will not cause the running task to be preempted. -- cgit v1.2.3