Changeset a94c5a5d in rtems
- Timestamp:
- 05/31/97 15:55:10 (27 years ago)
- Branches:
- 4.10, 4.11, 4.8, 4.9, 5, master
- Children:
- 6d4e604b
- Parents:
- 1499931d
- Location:
- doc
- Files:
-
- 30 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/new_chapters/posix_test_plan.texi
r1499931d ra94c5a5d 48 48 49 49 @set edition 4.1.0a 50 @set update-date 1 June 9751 @set update-month June 9750 @set update-date 1 June 1997 51 @set update-month June 1997 52 52 53 53 @c -
doc/posix_users/posix_test_plan.texi
r1499931d ra94c5a5d 48 48 49 49 @set edition 4.1.0a 50 @set update-date 1 June 9751 @set update-month June 9750 @set update-date 1 June 1997 51 @set update-month June 1997 52 52 53 53 @c -
doc/relnotes/relnotes.texi
r1499931d ra94c5a5d 48 48 49 49 @set edition 4.1.0a 50 @set update-date 1 June 9751 @set update-month June 9750 @set update-date 1 June 1997 51 @set update-month June 1997 52 52 53 53 @c -
doc/supplements/hppa1_1/hppa1_1.texi
r1499931d ra94c5a5d 35 35 36 36 @set edition 4.1.0a 37 @set update-date 1 June 9738 @set update-month June 9737 @set update-date 1 June 1997 38 @set update-month June 1997 39 39 40 40 @c -
doc/supplements/i386/i386.texi
r1499931d ra94c5a5d 41 41 42 42 @set edition 4.1.0a 43 @set update-date 1 June 9744 @set update-month June 9743 @set update-date 1 June 1997 44 @set update-month June 1997 45 45 46 46 @c -
doc/supplements/i960/i960.texi
r1499931d ra94c5a5d 35 35 36 36 @set edition 4.1.0a 37 @set update-date 1 June 9738 @set update-month June 9737 @set update-date 1 June 1997 38 @set update-month June 1997 39 39 40 40 @c -
doc/supplements/m68k/m68k.texi
r1499931d ra94c5a5d 35 35 36 36 @set edition 4.1.0a 37 @set update-date 1 June 9738 @set update-month June 9737 @set update-date 1 June 1997 38 @set update-month June 1997 39 39 40 40 @c -
doc/supplements/sparc/sparc.texi
r1499931d ra94c5a5d 35 35 36 36 @set edition 4.1.0a 37 @set update-date 1 June 9738 @set update-month June 9737 @set update-date 1 June 1997 38 @set update-month June 1997 39 39 40 40 @c -
doc/user/bsp.t
r1499931d ra94c5a5d 95 95 state. 96 96 97 @item Must allocate a stack of at least MINIMUM_STACK_SIZE97 @item Must allocate a stack of at least @code{MINIMUM_STACK_SIZE} 98 98 bytes and initialize the stack pointer for the 99 99 initialize_executive directive. … … 140 140 141 141 The size of the interrupt stack must be greater than 142 or equal to the constant MINIMUM_STACK_SIZE.142 or equal to the constant @code{MINIMUM_STACK_SIZE}. 143 143 144 144 @ifinfo -
doc/user/c_user.texi
r1499931d ra94c5a5d 40 40 @set is-C 41 41 @clear is-Ada 42 @set RTEMS-LANGUAGE C 43 @set RTEMS-STRUCTURE structure 44 @set RTEMS-ROUTINE function 45 @c the language is @value{RTEMS-LANGUAGE} 42 @set LANGUAGE C 43 @set STRUCTURE structure 44 @set ROUTINE function 45 @set OR | 46 @c the language is @value{LANGUAGE} 46 47 @c NOTE: don't use underscore in the name 47 48 @c … … 52 53 53 54 @set edition 4.1.0a 54 @set update-date 1 June 9755 @set update-month June 9755 @set update-date 1 June 1997 56 @set update-month June 1997 56 57 57 58 @c … … 65 66 @finalout 66 67 67 @title RTEMS ApplicationsC User's Guide68 @title RTEMS C User's Guide 68 69 @subtitle Edition @value{edition}, for RTEMS 4.1.0 69 70 @sp 1 -
doc/user/clock.t
r1499931d ra94c5a5d 6 6 7 7 @ifinfo 8 @node Clock Manager, Clock Manager Introduction, INTERRUPT_ CATCH - Establish an ISR, Top8 @node Clock Manager, Clock Manager Introduction, INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress, Top 9 9 @end ifinfo 10 10 @chapter Clock Manager … … 240 240 241 241 @itemize @bullet 242 @item CLOCK_GET_TOD - obtain native style date and time 243 @item CLOCK_GET_TIME_VALUE - obtain UNIX-style date and time 244 @item CLOCK_GET_TICKS_SINCE_BOOT - obtain number of ticks since RTEMS was initialized 245 @item CLOCK_GET_SECONDS_SINCE_EPOCH - obtain number of seconds since RTEMS epoch 246 @item CLOCK_GET_TICKS_PER_SECOND - obtain number of clock ticks per second 242 @item @code{CLOCK_GET_TOD} - obtain native style date and time 243 244 @item @code{CLOCK_GET_TIME_VALUE} - obtain UNIX-style date and time 245 246 @item @code{CLOCK_GET_TICKS_SINCE_BOOT} - obtain number of ticks 247 since RTEMS was initialized 248 249 @item @code{CLOCK_GET_SECONDS_SINCE_EPOCH} - obtain number of seconds 250 since RTEMS epoch 251 252 @item @code{CLOCK_GET_TICKS_PER_SECOND} - obtain number of clock ticks 253 per second 254 247 255 @end itemize 248 256 … … 355 363 This directive obtains the system date and time. If 356 364 the caller is attempting to obtain the date and time (i.e. 357 option is set to either CLOCK_GET_SECONDS_SINCE_EPOCH,358 CLOCK_GET_TOD, or CLOCK_GET_TIME_VALUE) and the date and time365 option is set to either @code{CLOCK_GET_SECONDS_SINCE_EPOCH}, 366 @code{CLOCK_GET_TOD}, or @code{CLOCK_GET_TIME_VALUE}) and the date and time 359 367 has not been set with a previous call to clock_set, then the 360 NOT_DEFINEDstatus code is returned. The caller can always368 @code{NOT_DEFINED} status code is returned. The caller can always 361 369 obtain the number of ticks per second (option is 362 CLOCK_GET_TICKS_PER_SECOND) and the number of ticks since the363 executive was initialized option is CLOCK_GET_TICKS_SINCE_BOOT).370 @code{CLOCK_GET_TICKS_PER_SECOND}) and the number of ticks since the 371 executive was initialized option is @code{CLOCK_GET_TICKS_SINCE_BOOT}). 364 372 365 373 @subheading NOTES: -
doc/user/conf.t
r1499931d ra94c5a5d 36 36 argument to the initialize_executive directive, which MUST be 37 37 the first RTEMS directive called. The RTEMS Configuration Table 38 is defined in the following @value{ RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:38 is defined in the following @value{LANGUAGE} @value{STRUCTURE}: 39 39 40 40 @ifset is-C … … 152 152 For example, the user can configure the maximum number of tasks for 153 153 this application. The RTEMS API Configuration Table is defined in 154 the following @value{ RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:154 the following @value{LANGUAGE} @value{STRUCTURE}: 155 155 156 156 @ifset is-C … … 245 245 For example, the user can configure the maximum number of threads for 246 246 this application. The POSIX API Configuration Table is defined in 247 the following @value{ RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:247 the following @value{LANGUAGE} @value{STRUCTURE}: 248 248 249 249 @ifset is-C … … 487 487 Configuration Table. The format of each entry in the Device 488 488 Driver Table is defined in 489 the following @value{ RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:489 the following @value{LANGUAGE} @value{STRUCTURE}: 490 490 491 491 @ifset is-C … … 544 544 545 545 Driver entry points configured as NULL will always 546 return a status code of SUCCESSFUL. No user code will be546 return a status code of @code{SUCCESSFUL}. No user code will be 547 547 executed in this situation. 548 548 … … 755 755 Multiprocessing chapter. The format of the Multiprocessor 756 756 Configuration Table is defined in 757 the following @value{ RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:757 the following @value{LANGUAGE} @value{STRUCTURE}: 758 758 759 759 @ifset is-C … … 830 830 831 831 The format of this table is defined in 832 the following @value{ RTEMS-LANGUAGE} @value{RTEMS-STRUCTURE}:832 the following @value{LANGUAGE} @value{STRUCTURE}: 833 833 834 834 @ifset is-C … … 971 971 be aligned on a four-byte boundary. Failure to properly align 972 972 the workspace area will result in the fatal_error_occurred 973 directive being invoked with the INVALID_ADDRESSerror code.973 directive being invoked with the @code{INVALID_ADDRESS} error code. 974 974 975 975 A worksheet is provided in the Memory Requirements -
doc/user/dirstat.texi
r1499931d ra94c5a5d 10 10 @chapter Directive Status Codes 11 11 @table @b 12 @item @ b{SUCCESSFUL} - successful completion13 @item @ b{TASK_EXITTED} - returned from a task14 @item @ b{MP_NOT_CONFIGURED} - multiprocessing not configured15 @item @ b{INVALID_NAME} - invalid object name16 @item @ b{INVALID_ID} - invalid object id17 @item @ b{TOO_MANY} - too many18 @item @ b{TIMEOUT} - timed out waiting19 @item @ b{OBJECT_WAS_DELETED} - object was deleted while waiting20 @item @ b{INVALID_SIZE} - invalid specified size21 @item @ b{INVALID_ADDRESS} - invalid address specified22 @item @ b{INVALID_NUMBER} - number was invalid23 @item @ b{NOT_DEFINED} - item not initialized24 @item @ b{RESOURCE_IN_USE} - resources outstanding25 @item @ b{UNSATISFIED} - request not satisfied26 @item @ b{INCORRECT_STATE} - task is in wrong state27 @item @ b{ALREADY_SUSPENDED} - task already in state28 @item @ b{ILLEGAL_ON_SELF} - illegal for calling task29 @item @ b{ILLEGAL_ON_REMOTE_OBJECT} - illegal for remote object30 @item @ b{CALLED_FROM_ISR} - invalid environment31 @item @ b{INVALID_PRIORITY} - invalid task priority32 @item @ b{INVALID_CLOCK} - invalid time buffer33 @item @ b{INVALID_NODE} - invalid node id34 @item @ b{NOT_CONFIGURED} - directive not configured35 @item @ b{NOT_OWNER_OF_RESOURCE} - not owner of resource36 @item @ b{NOT_IMPLEMENTED} - directive not implemented37 @item @ b{INTERNAL_ERROR} - RTEMS inconsistency detected38 @item @ b{NO_MEMORY} - could not get enough memory12 @item @code{SUCCESSFUL} - successful completion 13 @item @code{TASK_EXITTED} - returned from a task 14 @item @code{MP_NOT_CONFIGURED} - multiprocessing not configured 15 @item @code{INVALID_NAME} - invalid object name 16 @item @code{INVALID_ID} - invalid object id 17 @item @code{TOO_MANY} - too many 18 @item @code{TIMEOUT} - timed out waiting 19 @item @code{OBJECT_WAS_DELETED} - object was deleted while waiting 20 @item @code{INVALID_SIZE} - invalid specified size 21 @item @code{INVALID_ADDRESS} - invalid address specified 22 @item @code{INVALID_NUMBER} - number was invalid 23 @item @code{NOT_DEFINED} - item not initialized 24 @item @code{RESOURCE_IN_USE} - resources outstanding 25 @item @code{UNSATISFIED} - request not satisfied 26 @item @code{INCORRECT_STATE} - task is in wrong state 27 @item @code{ALREADY_SUSPENDED} - task already in state 28 @item @code{ILLEGAL_ON_SELF} - illegal for calling task 29 @item @code{ILLEGAL_ON_REMOTE_OBJECT} - illegal for remote object 30 @item @code{CALLED_FROM_ISR} - invalid environment 31 @item @code{INVALID_PRIORITY} - invalid task priority 32 @item @code{INVALID_CLOCK} - invalid time buffer 33 @item @code{INVALID_NODE} - invalid node id 34 @item @code{NOT_CONFIGURED} - directive not configured 35 @item @code{NOT_OWNER_OF_RESOURCE} - not owner of resource 36 @item @code{NOT_IMPLEMENTED} - directive not implemented 37 @item @code{INTERNAL_ERROR} - RTEMS inconsistency detected 38 @item @code{NO_MEMORY} - could not get enough memory 39 39 @end table 40 40 -
doc/user/event.t
r1499931d ra94c5a5d 79 79 be used to determine when the request is satisfied. An event 80 80 condition is satisfied based upon one of two algorithms which 81 are selected by the user. The EVENT_ANYalgorithm states that81 are selected by the user. The @code{EVENT_ANY} algorithm states that 82 82 an event condition is satisfied when at least a single requested 83 event is posted. The EVENT_ALLalgorithm states that an event83 event is posted. The @code{EVENT_ALL} algorithm states that an event 84 84 condition is satisfied when every requested event is posted. 85 85 … … 90 90 91 91 An event set or condition is built by a bitwise OR of 92 the desired events. The set of valid events is EVENT_0through93 EVENT_31. If an event is not explicitly specified in the set or92 the desired events. The set of valid events is @code{EVENT_0} through 93 @code{EVENT_31}. If an event is not explicitly specified in the set or 94 94 condition, then it is not present. Events are specifically 95 95 designed to be mutually exclusive, therefore bitwise OR and … … 98 98 99 99 For example, when sending the event set consisting of 100 EVENT_6, EVENT_15, and EVENT_31, the event parameter to the 101 event_send directive should be EVENT_6 | EVENT_15 | EVENT_31. 100 @code{EVENT_6}, @code{EVENT_15}, and @code{EVENT_31}, 101 the event parameter to the event_send directive should be 102 @code{EVENT_6 @value{OR} EVENT_15 @value{OR} EVENT_31}. 102 103 103 104 @ifinfo … … 111 112 112 113 @itemize @bullet 113 @item WAIT- task will wait for event (default)114 @item NO_WAIT- task should not wait115 @item EVENT_ALL- return after all events (default)116 @item EVENT_ANY- return after any events114 @item @code{WAIT} - task will wait for event (default) 115 @item @code{NO_WAIT} - task should not wait 116 @item @code{EVENT_ALL} - return after all events (default) 117 @item @code{EVENT_ANY} - return after any events 117 118 @end itemize 118 119 … … 123 124 required to appear in the option list, although it is a good 124 125 programming practice to specify default options. If all 125 defaults are desired, the option DEFAULT_OPTIONSshould be126 defaults are desired, the option @code{DEFAULT_OPTIONS} should be 126 127 specified on this call. 127 128 … … 129 130 to poll for all events in a particular event condition to 130 131 arrive. The option parameter passed to the event_receive 131 directive should be either EVENT_ALL | NO_WAIT or NO_WAIT. The 132 option parameter can be set to NO_WAIT because EVENT_ALL is the 132 directive should be either @code{EVENT_ALL @value{OR} NO_WAIT} 133 or @code{NO_WAIT}. The option parameter can be set to 134 @code{NO_WAIT} because @code{EVENT_ALL} is the 133 135 default condition for event_receive. 134 136 … … 195 197 event condition to be satisfied. 196 198 197 @item Specifying the NO_WAIToption forces an immediate return199 @item Specifying the @code{NO_WAIT} option forces an immediate return 198 200 with an error status code. 199 201 … … 219 221 A task can receive all of the currently pending 220 222 events by calling the event_receive directive with a value of 221 ALL_EVENTS for the input event condition and NO_WAIT | EVENT_ANY 223 @code{ALL_EVENTS} for the input event condition and 224 @code{NO_WAIT @value{OR} EVENT_ANY} 222 225 for the option set. The pending events are returned to the 223 226 calling task and the event set is cleared. If no events are 224 pending then the UNSATISFIEDstatus code will be returned.227 pending then the @code{UNSATISFIED} status code will be returned. 225 228 226 229 @ifinfo … … 283 286 @subheading NOTES: 284 287 285 Specifying SELFfor id results in the event set being288 Specifying @code{SELF} for id results in the event set being 286 289 sent to the calling task. 287 290 … … 331 334 @subheading DIRECTIVE STATUS CODES: 332 335 @code{SUCCESSFUL} - event received successfully@* 333 @code{UNSATISFIED} - input event not satisfied ( NO_WAIT)@*336 @code{UNSATISFIED} - input event not satisfied (@code{NO_WAIT})@* 334 337 @code{TIMEOUT} - timed out waiting for event 335 338 … … 338 341 This directive attempts to receive the event 339 342 condition specified in event_in. If event_in is set to 340 PENDING_EVENTS, then the current pending events are returned in341 event_out and left pending. The WAIT and NO_WAIToptions in the343 @code{PENDING_EVENTS}, then the current pending events are returned in 344 event_out and left pending. The @code{WAIT} and @code{NO_WAIT} options in the 342 345 option_set parameter are used to specify whether or not the task 343 346 is willing to wait for the event condition to be satisfied. 344 EVENT_ANY and EVENT_ALLare used in the option_set parameter are347 @code{EVENT_ANY} and @code{EVENT_ALL} are used in the option_set parameter are 345 348 used to specify whether a single event or the complete event set 346 349 is necessary to satisfy the event condition. The event_out … … 351 354 event_out is set to the satisfied events and the pending events 352 355 in the event condition are cleared. If the event condition is 353 not satisfied and NO_WAITis specified, then event_out is set to356 not satisfied and @code{NO_WAIT} is specified, then event_out is set to 354 357 the currently satisfied events. If the calling task chooses to 355 358 wait, then it will block waiting for the event condition. … … 357 360 If the calling task must wait for the event condition 358 361 to be satisfied, then the timeout parameter is used to specify 359 the maximum interval to wait. If it is set to NO_TIMEOUT, then362 the maximum interval to wait. If it is set to @code{NO_TIMEOUT}, then 360 363 the calling task will wait forever. 361 364 … … 370 373 371 374 @itemize @bullet 372 @item WAITtask will wait for event (default)373 @item NO_WAITtask should not wait374 @item EVENT_ALLreturn after all events (default)375 @item EVENT_ANYreturn after any events376 @end itemize 377 375 @item @code{WAIT} task will wait for event (default) 376 @item @code{NO_WAIT} task should not wait 377 @item @code{EVENT_ALL} return after all events (default) 378 @item @code{EVENT_ANY} return after any events 379 @end itemize 380 -
doc/user/fatal.t
r1499931d ra94c5a5d 91 91 fatal error handlers or the RTEMS fatal error handler, the 92 92 fatal_error_occurred directive stores useful information in the 93 variable _Internal_errors_What_happened. This structure93 variable @code{_Internal_errors_What_happened}. This structure 94 94 contains three pieces of information: 95 95 -
doc/user/intr.t
r1499931d ra94c5a5d 57 57 interrupt occurs, the processor will automatically vector to 58 58 RTEMS. RTEMS saves and restores all registers which are not 59 preserved by the normal @value{ RTEMS-LANGUAGE} calling convention59 preserved by the normal @value{LANGUAGE} calling convention 60 60 for the target 61 61 processor and invokes the user's ISR. The user's ISR is … … 266 266 @menu 267 267 * INTERRUPT_CATCH - Establish an ISR:: 268 * INTERRUPT_DISABLE - Disable Interrupts:: 269 * INTERRUPT_ENABLE - Enable Interrupts:: 270 * INTERRUPT_FLASH - Flash Interrupts:: 271 * INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress:: 268 272 @end menu 269 273 @end ifinfo … … 276 280 @page 277 281 @ifinfo 278 @node INTERRUPT_CATCH - Establish an ISR, Clock Manager, Interrupt Manager Directives, Interrupt Manager Directives282 @node INTERRUPT_CATCH - Establish an ISR, INTERRUPT_DISABLE - Disable Interrupts, Interrupt Manager Directives, Interrupt Manager Directives 279 283 @end ifinfo 280 284 @subsection INTERRUPT_CATCH - Establish an ISR … … 318 322 @subheading NOTES: 319 323 320 This directive will not cause the calling task to be 321 preempted. 322 324 This directive will not cause the calling task to be preempted. 325 326 @page 327 @ifinfo 328 @node INTERRUPT_DISABLE - Disable Interrupts, INTERRUPT_ENABLE - Enable Interrupts, INTERRUPT_CATCH - Establish an ISR, Interrupt Manager Directives 329 @end ifinfo 330 @subsection INTERRUPT_DISABLE - Disable Interrupts 331 332 @subheading CALLING SEQUENCE: 333 334 @ifset is-C 335 @example 336 void rtems_interrupt_disable( 337 rtems_isr_level level 338 ); 339 @end example 340 @end ifset 341 342 @ifset is-Ada 343 @example 344 function Interrupt_Disable 345 return RTEMS.ISR_Level; 346 @end example 347 @end ifset 348 349 @subheading DIRECTIVE STATUS CODES: 350 351 NONE 352 353 @subheading DESCRIPTION: 354 355 This directive disables all maskable interrupts and returns 356 the previous @code{level}. A later invocation of the 357 @code{rtems_interrupt_enable} directive should be used to 358 restore the interrupt level. 359 360 @subheading NOTES: 361 362 This directive will not cause the calling task to be preempted. 363 364 @ifset is-C 365 @b{This directive is implemented as a macro which modifies the @code{level} 366 parameter.} 367 @end ifset 368 369 @page 370 @ifinfo 371 @node INTERRUPT_ENABLE - Enable Interrupts, INTERRUPT_FLASH - Flash Interrupts, INTERRUPT_DISABLE - Disable Interrupts, Interrupt Manager Directives 372 @end ifinfo 373 @subsection INTERRUPT_ENABLE - Enable Interrupts 374 375 @subheading CALLING SEQUENCE: 376 377 @ifset is-C 378 @example 379 void rtems_interrupt_enable( 380 rtems_isr_level level 381 ); 382 @end example 383 @end ifset 384 385 @ifset is-Ada 386 @example 387 procedure Interrupt_Enable ( 388 Level : in RTEMS.ISR_Level 389 ); 390 @end example 391 @end ifset 392 393 @subheading DIRECTIVE STATUS CODES: 394 395 NONE 396 397 @subheading DESCRIPTION: 398 399 This directive enables maskable interrupts to the @code{level} 400 which was returned by a previous call to @code{rtems_interrupt_disable}. 401 Immediately prior to invoking this directive, maskable interrupts should 402 be disabled by a call to @code{rtems_interrupt_disable} and will be enabled 403 when this directive returns to the caller. 404 405 @subheading NOTES: 406 407 This directive will not cause the calling task to be preempted. 408 409 410 @page 411 @ifinfo 412 @node INTERRUPT_FLASH - Flash Interrupts, INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress, INTERRUPT_ENABLE - Enable Interrupts, Interrupt Manager Directives 413 @end ifinfo 414 @subsection INTERRUPT_FLASH - Flash Interrupts 415 416 @subheading CALLING SEQUENCE: 417 418 @ifset is-C 419 @example 420 void rtems_interrupt_flash( 421 rtems_isr_level level 422 ); 423 @end example 424 @end ifset 425 426 @ifset is-Ada 427 @example 428 procedure Interrupt_Flash ( 429 Level : in RTEMS.ISR_Level 430 ); 431 @end example 432 @end ifset 433 434 @subheading DIRECTIVE STATUS CODES: 435 436 NONE 437 438 @subheading DESCRIPTION: 439 440 This directive temporarily enables maskable interrupts to the @code{level} 441 which was returned by a previous call to @code{rtems_interrupt_disable}. 442 Immediately prior to invoking this directive, maskable interrupts should 443 be disabled by a call to @code{rtems_interrupt_disable} and will be redisabled 444 when this directive returns to the caller. 445 446 @subheading NOTES: 447 448 This directive will not cause the calling task to be preempted. 449 450 @page 451 @ifinfo 452 @node INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress, Clock Manager, INTERRUPT_FLASH - Flash Interrupts, Interrupt Manager Directives 453 @end ifinfo 454 @subsection INTERRUPT_IS_IN_PROGRESS - Is an ISR in Progress 455 456 @subheading CALLING SEQUENCE: 457 458 @ifset is-C 459 @example 460 rtems_boolean rtems_interrupt_is_in_progress( void ); 461 @end example 462 @end ifset 463 464 @ifset is-Ada 465 @example 466 function Interrupt_Is_In_Progress 467 return RTEMS.Boolean; 468 @end example 469 @end ifset 470 471 @subheading DIRECTIVE STATUS CODES: 472 473 NONE 474 475 @subheading DESCRIPTION: 476 477 This directive returns @code{TRUE} if the processor is currently 478 servicing an interrupt and @code{FALSE} otherwise. A return value 479 of @code{TRUE} indicates that the caller is an interrupt service 480 routine, @b{NOT} a task. The directives available to an interrupt 481 service routine are restricted. 482 483 @subheading NOTES: 484 485 This directive will not cause the calling task to be preempted. 486 -
doc/user/io.t
r1499931d ra94c5a5d 78 78 If the device driver does not support a particular 79 79 entry point, then that entry in the Configuration Table should 80 be NULL. RTEMS will return SUCCESSFULas the executive's and80 be NULL. RTEMS will return @code{SUCCESSFUL} as the executive's and 81 81 zero (0) as the device driver's return code for these device 82 82 driver entry points. … … 384 384 Name : in String; 385 385 Device_Info : out RTEMS.Driver_Name_t; 386 Result : out RTEMS.Status_Codes 386 387 ); 387 388 @end example -
doc/user/mp.t
r1499931d ra94c5a5d 600 600 @item Packets are composed of both RTEMS and application data. 601 601 All RTEMS data is treated as thirty-two (32) bit unsigned 602 quantities and is in the first MINIMUM_UNSIGNED32S_TO_CONVERT602 quantities and is in the first @code{MINIMUM_UNSIGNED32S_TO_CONVERT} 603 603 thirty-two (32) quantities of the packet. 604 604 -
doc/user/msg.t
r1499931d ra94c5a5d 101 101 appear in the attribute list, although it is a good programming 102 102 practice to specify default attributes. If all defaults are 103 desired, the attribute DEFAULT_ATTRIBUTESshould be specified on103 desired, the attribute @code{DEFAULT_ATTRIBUTES} should be specified on 104 104 this call. 105 105 … … 107 107 needed to create a local message queue with the task priority 108 108 waiting queue discipline. The attribute_set parameter to the 109 message_queue_create directive could be either PRIORITY or LOCAL 110 | PRIORITY. The attribute_set parameter can be set to PRIORITY 111 because LOCAL is the default for all created message queues. If 109 message_queue_create directive could be either 110 @code{PRIORITY} or @code{LOCAL @value{OR} PRIORITY}. 111 The attribute_set parameter can be set to @code{PRIORITY} 112 because @code{LOCAL} is the default for all created message queues. If 112 113 a similar message queue were to be known globally, then the 113 attribute_set parameter would be GLOBAL | PRIORITY.114 attribute_set parameter would be @code{GLOBAL @value{OR} PRIORITY}. 114 115 115 116 @ifinfo … … 124 125 125 126 @itemize @bullet 126 @item WAIT- task will wait for a message (default)127 @item NO_WAIT- task should not wait127 @item @code{WAIT} - task will wait for a message (default) 128 @item @code{NO_WAIT} - task should not wait 128 129 @end itemize 129 130 … … 131 132 appear in the option OR list, although it is a good programming 132 133 practice to specify default options. If all defaults are 133 desired, the option DEFAULT_OPTIONSshould be specified on this134 desired, the option @code{DEFAULT_OPTIONS} should be specified on this 134 135 call. 135 136 136 137 This example demonstrates the option parameter needed 137 138 to poll for a message to arrive. The option parameter passed to 138 the message_queue_receive directive should be NO_WAIT.139 the message_queue_receive directive should be @code{NO_WAIT}. 139 140 140 141 @ifinfo … … 204 205 message to arrive. 205 206 206 @item Specifying the NO_WAIToption forces an immediate return207 @item Specifying the @code{NO_WAIT} option forces an immediate return 207 208 with an error status code. 208 209 … … 422 423 preempted. 423 424 424 If node is SEARCH_ALL_NODES, all nodes are searched425 If node is @code{SEARCH_ALL_NODES}, all nodes are searched 425 426 with the local node being searched first. All other nodes are 426 427 searched with the lowest numbered node searched first. … … 730 731 731 732 This directive receives a message from the message 732 queue specified in id. The WAIT and NO_WAIToptions of the733 queue specified in id. The @code{WAIT} and @code{NO_WAIT} options of the 733 734 options parameter allow the calling task to specify whether to 734 735 wait for a message to become available or return immediately. … … 752 753 parameter specifies the maximum interval to wait before the 753 754 calling task desires to be unblocked. If it is set to 754 NO_TIMEOUT, then the calling task will wait forever.755 @code{NO_TIMEOUT}, then the calling task will wait forever. 755 756 756 757 @subheading NOTES: … … 760 761 761 762 @itemize @bullet 762 @item WAIT- task will wait for a message (default)763 @item NO_WAIT- task should not wait763 @item @code{WAIT} - task will wait for a message (default) 764 @item @code{NO_WAIT} - task should not wait 764 765 @end itemize 765 766 … … 768 769 does not reside on the local node will generate a request to the 769 770 remote node to obtain a message from the specified message 770 queue. If no message is available and WAITwas specified, then771 queue. If no message is available and @code{WAIT} was specified, then 771 772 the task must be blocked until a message is posted. A proxy is 772 773 allocated on the remote node to represent the task until the -
doc/user/overview.t
r1499931d ra94c5a5d 55 55 56 56 This manual describes the usage of RTEMS for 57 applications written in the @value{ RTEMS-LANGUAGE} programming language. Those57 applications written in the @value{LANGUAGE} programming language. Those 58 58 implementation details that are processor dependent are provided 59 59 in the Applications Supplement documents. A supplement … … 410 410 management as well as intertask communication and 411 411 synchronization. Since directives, user related data 412 structures, and examples are presented in @value{ RTEMS-LANGUAGE}, a basic413 understanding of the @value{ RTEMS-LANGUAGE} programming language412 structures, and examples are presented in @value{LANGUAGE}, a basic 413 understanding of the @value{LANGUAGE} programming language 414 414 is required to fully 415 415 understand the material presented. However, because of the -
doc/user/part.t
r1499931d ra94c5a5d 87 87 required to appear in the attribute list, although it is a good 88 88 programming practice to specify default attributes. If all 89 defaults are desired, the attribute DEFAULT_ATTRIBUTESshould be89 defaults are desired, the attribute @code{DEFAULT_ATTRIBUTES} should be 90 90 specified on this call. The attribute_set parameter should be 91 91 GLOBAL to indicate that the partition is to be known globally. … … 324 324 preempted. 325 325 326 If node is SEARCH_ALL_NODES, all nodes are searched326 If node is @code{SEARCH_ALL_NODES}, all nodes are searched 327 327 with the local node being searched first. All other nodes are 328 328 searched with the lowest numbered node searched first. -
doc/user/preface.texi
r1499931d ra94c5a5d 182 182 functionally compliant real-time multiprocessor executive. It 183 183 describes the user interface and run-time behavior of Release 184 @value{R TEMS-RELEASE} of the @value{RTEMS-LANGUAGE} interface184 @value{RELEASE} of the @value{LANGUAGE} interface 185 185 to RTEMS. 186 186 -
doc/user/region.t
r1499931d ra94c5a5d 99 99 required to appear in the attribute list, although it is a good 100 100 programming practice to specify default attributes. If all 101 defaults are desired, the attribute DEFAULT_ATTRIBUTESshould be101 defaults are desired, the attribute @code{DEFAULT_ATTRIBUTES} should be 102 102 specified on this call. 103 103 … … 117 117 118 118 @itemize @bullet 119 @item WAIT- task will wait for semaphore (default)120 @item NO_WAIT- task should not wait119 @item @code{WAIT} - task will wait for semaphore (default) 120 @item @code{NO_WAIT} - task should not wait 121 121 @end itemize 122 122 … … 127 127 required to appear in the option list, although it is a good 128 128 programming practice to specify default options. If all 129 defaults are desired, the option DEFAULT_OPTIONSshould be129 defaults are desired, the option @code{DEFAULT_OPTIONS} should be 130 130 specified on this call. 131 131 132 132 This example demonstrates the option parameter needed 133 133 to poll for a segment. The option parameter passed to the 134 region_get_segment directive should be NO_WAIT.134 region_get_segment directive should be @code{NO_WAIT}. 135 135 136 136 @ifinfo … … 217 217 @item By default, the calling task will wait forever to acquire the segment. 218 218 219 @item Specifying the NO_WAIToption forces an immediate return219 @item Specifying the @code{NO_WAIT} option forces an immediate return 220 220 with an error status code. 221 221 … … 348 348 waiting for a segment to be serviced according to task priority. 349 349 Specifying FIFO in attribute_set or selecting 350 DEFAULT_ATTRIBUTESwill cause waiting tasks to be serviced in350 @code{DEFAULT_ATTRIBUTES} will cause waiting tasks to be serviced in 351 351 First In-First Out order. 352 352 … … 554 554 This directive obtains a variable size segment from 555 555 the region specified by id. The address of the allocated 556 segment is returned in segment. The WAIT and NO_WAITcomponents556 segment is returned in segment. The @code{WAIT} and @code{NO_WAIT} components 557 557 of the options parameter are used to specify whether the calling 558 558 tasks wish to wait for a segment to become available or return … … 560 560 sufficiently sized segment is available, then the segment is 561 561 successfully acquired by returning immediately with the 562 SUCCESSFULstatus code.562 @code{SUCCESSFUL} status code. 563 563 564 564 If the calling task chooses to return immediately and … … 575 575 The timeout parameter specifies the maximum interval 576 576 that a task is willing to wait to obtain a segment. If timeout 577 is set to NO_TIMEOUT, then the calling task will wait forever.577 is set to @code{NO_TIMEOUT}, then the calling task will wait forever. 578 578 579 579 @subheading NOTES: … … 587 587 588 588 @itemize @bullet 589 @item WAIT- task will wait for semaphore (default)590 @item NO_WAIT- task should not wait589 @item @code{WAIT} - task will wait for semaphore (default) 590 @item @code{NO_WAIT} - task should not wait 591 591 @end itemize 592 592 -
doc/user/rtmon.t
r1499931d ra94c5a5d 730 730 731 731 If the rate_monotonic_period directive is invoked 732 with a period of PERIOD_STATUSticks, the current state of the732 with a period of @code{PERIOD_STATUS} ticks, the current state of the 733 733 specified rate monotonic period will be returned. The following 734 734 table details the relationship between the period's status and … … 737 737 738 738 @itemize @bullet 739 @item SUCCESSFUL- period is running740 741 @item TIMEOUT- period has expired742 743 @item NOT_DEFINED- period has never been initiated739 @item @code{SUCCESSFUL} - period is running 740 741 @item @code{TIMEOUT} - period has expired 742 743 @item @code{NOT_DEFINED} - period has never been initiated 744 744 @end itemize 745 745 … … 1150 1150 immediately initiated and the directive returns immediately. 1151 1151 1152 If invoked with a period of PERIOD_STATUSticks, the1152 If invoked with a period of @code{PERIOD_STATUS} ticks, the 1153 1153 current state of id will be returned. The directive status 1154 1154 indicates the current state of the period. This does not alter … … 1218 1218 @end ifset 1219 1219 1220 If the period's state is RATE_MONOTONIC_INACTIVE, both1220 If the period's state is @code{RATE_MONOTONIC_INACTIVE}, both 1221 1221 ticks_since_last_period and ticks_executed_since_last_period 1222 1222 will be set to 0. Otherwise, ticks_since_last_period will -
doc/user/schedule.t
r1499931d ra94c5a5d 166 166 algorithm is called manual round-robin. Manual round-robin is 167 167 invoked by using the task_wake_after directive with a time 168 interval of YIELD_PROCESSOR. This allows a task to give up the168 interval of @code{YIELD_PROCESSOR}. This allows a task to give up the 169 169 processor and be immediately returned to the ready chain at the 170 170 end of its priority group. If no other tasks of the same … … 194 194 195 195 Tasks that utilize a numeric coprocessor and are 196 created with the FLOATING_POINTattribute require additional196 created with the @code{FLOATING_POINT} attribute require additional 197 197 operations during a context switch. These additional operations 198 198 are necessary to save and restore the floating point context of 199 FLOATING_POINTtasks. To avoid unnecessary save and restore199 @code{FLOATING_POINT} tasks. To avoid unnecessary save and restore 200 200 operations, the state of the numeric coprocessor is only saved 201 when a FLOATING_POINTtask is dispatched and that task was not201 when a @code{FLOATING_POINT} task is dispatched and that task was not 202 202 the last task to utilize the coprocessor. 203 203 -
doc/user/sem.t
r1499931d ra94c5a5d 229 229 required to appear in the attribute list, although it is a good 230 230 programming practice to specify default attributes. If all 231 defaults are desired, the attribute DEFAULT_ATTRIBUTESshould be231 defaults are desired, the attribute @code{DEFAULT_ATTRIBUTES} should be 232 232 specified on this call. 233 233 … … 235 235 needed to create a local semaphore with the task priority 236 236 waiting queue discipline. The attribute_set parameter passed to 237 the semaphore_create directive could be either PRIORITY or LOCAL 238 | PRIORITY. The attribute_set parameter can be set to PRIORITY 239 because LOCAL is the default for all created tasks. If a 237 the semaphore_create directive could be either 238 @code{PRIORITY} or @code{LOCAL @value{OR} PRIORITY}. 239 The attribute_set parameter can be set to @code{PRIORITY} 240 because @code{LOCAL} is the default for all created tasks. If a 240 241 similar semaphore were to be known globally, then the 241 attribute_set parameter would be GLOBAL | PRIORITY.242 attribute_set parameter would be @code{GLOBAL @value{OR} PRIORITY}. 242 243 243 244 @ifinfo … … 251 252 252 253 @itemize @bullet 253 @item WAIT- task will wait for semaphore (default)254 @item NO_WAIT- task should not wait254 @item @code{WAIT} - task will wait for semaphore (default) 255 @item @code{NO_WAIT} - task should not wait 255 256 @end itemize 256 257 … … 261 262 required to appear in the list, although it is a good 262 263 programming practice to specify default options. If all 263 defaults are desired, the option DEFAULT_OPTIONSshould be264 defaults are desired, the option @code{DEFAULT_OPTIONS} should be 264 265 specified on this call. 265 266 266 267 This example demonstrates the option parameter needed 267 268 to poll for a semaphore. The option parameter passed to the 268 semaphore_obtain directive should be NO_WAIT.269 semaphore_obtain directive should be @code{NO_WAIT}. 269 270 270 271 @ifinfo … … 343 344 acquire the semaphore. 344 345 345 @item Specifying NO_WAITforces an immediate return with an346 @item Specifying @code{NO_WAIT} forces an immediate return with an 346 347 error status code. 347 348 … … 561 562 preempted. 562 563 563 If node is SEARCH_ALL_NODES, all nodes are searched564 If node is @code{SEARCH_ALL_NODES}, all nodes are searched 564 565 with the local node being searched first. All other nodes are 565 566 searched with the lowest numbered node searched first. … … 673 674 674 675 This directive acquires the semaphore specified by 675 id. The WAIT and NO_WAITcomponents of the options parameter676 id. The @code{WAIT} and @code{NO_WAIT} components of the options parameter 676 677 indicate whether the calling task wants to wait for the 677 678 semaphore to become available or return immediately if the 678 semaphore is not currently available. With either WAITor679 NO_WAIT, if the current semaphore count is positive, then it is679 semaphore is not currently available. With either @code{WAIT} or 680 @code{NO_WAIT}, if the current semaphore count is positive, then it is 680 681 decremented by one and the semaphore is successfully acquired by 681 682 returning immediately with a successful return code. … … 703 704 The timeout parameter specifies the maximum interval 704 705 the calling task is willing to be blocked waiting for the 705 semaphore. If it is set to NO_TIMEOUT, then the calling task706 will wait forever. If the semaphore is available or the NO_WAIT706 semaphore. If it is set to @code{NO_TIMEOUT}, then the calling task 707 will wait forever. If the semaphore is available or the @code{NO_WAIT} 707 708 option component is set, then timeout is ignored. 708 709 … … 712 713 713 714 @itemize @bullet 714 @item WAIT- task will wait for semaphore (default)715 @item NO_WAIT- task should not wait715 @item @code{WAIT} - task will wait for semaphore (default) 716 @item @code{NO_WAIT} - task should not wait 716 717 @end itemize 717 718 … … 719 720 the local node will generate a request to the remote node to 720 721 access the semaphore. If the semaphore is not available and 721 NO_WAITwas not specified, then the task must be blocked until722 @code{NO_WAIT} was not specified, then the task must be blocked until 722 723 the semaphore is released. A proxy is allocated on the remote 723 724 node to represent the task until the semaphore is released. -
doc/user/signal.t
r1499931d ra94c5a5d 99 99 100 100 A signal set is built by a bitwise OR of the desired 101 signals. The set of valid signals is SIGNAL_0through102 SIGNAL_31. If a signal is not explicitly specified in the101 signals. The set of valid signals is @code{SIGNAL_0} through 102 @code{SIGNAL_31}. If a signal is not explicitly specified in the 103 103 signal set, then it is not present. Signal values are 104 104 specifically designed to be mutually exclusive, therefore … … 107 107 108 108 This example demonstrates the signal parameter used 109 when sending the signal set consisting of SIGNAL_6, SIGNAL_15, 110 and SIGNAL_31. The signal parameter provided to the signal_send 111 directive should be SIGNAL_6 | SIGNAL_15 | SIGNAL_31. 109 when sending the signal set consisting of 110 @code{SIGNAL_6}, @code{SIGNAL_15}, and @code{SIGNAL_31}. 111 The signal parameter provided to the signal_send directive should be 112 @code{SIGNAL_6 @value{OR} SIGNAL_15 @value{OR} SIGNAL_31}. 112 113 113 114 @ifinfo … … 145 146 with the signal_catch to establish an ASR which executes at 146 147 interrupt level three and is non-preemptible. The mode should 147 be set to INTERRUPT_LEVEL(3) | NO_PREEMPT to indicate the 148 be set to 149 @code{INTERRUPT_LEVEL(3) @value{OR} NO_PREEMPT} to indicate the 148 150 desired processor mode and interrupt level. 149 151 … … 232 234 limited to the meaning of the single argument passed to an ASR. 233 235 The ASR should have the following calling sequence and adhere to 234 @value{ RTEMS-LANGUAGE} calling conventions:236 @value{LANGUAGE} calling conventions: 235 237 236 238 @ifset is-C -
doc/user/task.t
r1499931d ra94c5a5d 279 279 @subsection Floating Point Considerations 280 280 281 Creating a task with the FLOATING_POINTflag results in281 Creating a task with the @code{FLOATING_POINT} flag results in 282 282 additional memory being allocated for the TCB to store the state 283 283 of the numeric coprocessor during task switches. This 284 additional memory is NOT allocated for NO_FLOATING_POINTtasks.285 Saving and restoring the context of a FLOATING_POINTtask takes286 longer than that of a NO_FLOATING_POINTtask because of the284 additional memory is @b{NOT} allocated for @code{NO_FLOATING_POINT} tasks. 285 Saving and restoring the context of a @code{FLOATING_POINT} task takes 286 longer than that of a @code{NO_FLOATING_POINT} task because of the 287 287 relatively large amount of time required for the numeric 288 288 coprocessor to save or restore its computational state. … … 292 292 is optimized to avoid unnecessarily saving and restoring the 293 293 state of the numeric coprocessor. The state of the numeric 294 coprocessor is only saved when a FLOATING_POINTtask is294 coprocessor is only saved when a @code{FLOATING_POINT} task is 295 295 dispatched and that task was not the last task to utilize the 296 coprocessor. In a system with only one FLOATING_POINTtask, the296 coprocessor. In a system with only one @code{FLOATING_POINT} task, the 297 297 state of the numeric coprocessor will never be saved or 298 298 restored. 299 299 300 Although the overhead imposed by FLOATING_POINTtasks is300 Although the overhead imposed by @code{FLOATING_POINT} tasks is 301 301 minimal, some applications may wish to completely avoid the 302 overhead associated with FLOATING_POINTtasks and still utilize302 overhead associated with @code{FLOATING_POINT} tasks and still utilize 303 303 a numeric coprocessor. By preventing a task from being 304 304 preempted while performing a sequence of floating point 305 operations, a NO_FLOATING_POINTtask can utilize the numeric306 coprocessor without incurring the overhead of a FLOATING_POINT305 operations, a @code{NO_FLOATING_POINT} task can utilize the numeric 306 coprocessor without incurring the overhead of a @code{FLOATING_POINT} 307 307 context switch. This approach also avoids the allocation of a 308 308 floating point context area. However, if this approach is taken 309 309 by the application designer, NO tasks should be created as 310 FLOATING_POINTtasks. Otherwise, the floating point context310 @code{FLOATING_POINT} tasks. Otherwise, the floating point context 311 311 will not be correctly maintained because RTEMS assumes that the 312 312 state of the numeric coprocessor will not be altered by 313 NO_FLOATING_POINTtasks.313 @code{NO_FLOATING_POINT} tasks. 314 314 315 315 If the supported processor type does not have hardware floating … … 317 317 provide built-in support for hardware floating point on that 318 318 processor. In this case, all tasks are considered 319 NO_FLOATING_POINT whether created as FLOATING_POINTor320 NO_FLOATING_POINTtasks. A floating point emulation software319 @code{NO_FLOATING_POINT} whether created as @code{FLOATING_POINT} or 320 @code{NO_FLOATING_POINT} tasks. A floating point emulation software 321 321 library must be utilized for floating point operations. 322 322 … … 325 325 processor, then RTEMS will utilize this capability to enable the 326 326 floating point unit only for tasks which are created with the 327 FLOATING_POINTattribute. The consequence of a328 NO_FLOATING_POINTtask attempting to access the floating point327 @code{FLOATING_POINT} attribute. The consequence of a 328 @code{NO_FLOATING_POINT} task attempting to access the floating point 329 329 unit is CPU dependent but will i general result in an exception 330 330 condition. … … 352 352 to appear in the component list, although it is a good 353 353 programming practice to specify default components. If all 354 defaults are desired, then DEFAULT_ATTRIBUTESshould be used.354 defaults are desired, then @code{DEFAULT_ATTRIBUTES} should be used. 355 355 356 356 This example demonstrates the attribute_set parameter needed to 357 357 create a local task which utilizes the numeric coprocessor. The 358 attribute_set parameter could be FLOATING_POINT or LOCAL | 359 FLOATING_POINT. The attribute_set parameter can be set to 360 FLOATING_POINT because LOCAL is the default for all created 358 attribute_set parameter could be @code{FLOATING_POINT} or 359 @code{LOCAL @value{OR} FLOATING_POINT}. 360 The attribute_set parameter can be set to 361 @code{FLOATING_POINT} because @code{LOCAL} is the default for all created 361 362 tasks. If the task were global and used the numeric 362 coprocessor, then the attribute_set parameter would be GLOBAL |363 FLOATING_POINT.363 coprocessor, then the attribute_set parameter would be 364 @code{GLOBAL @value{OR} FLOATING_POINT}. 364 365 365 366 @ifinfo … … 450 451 the mode component list, although it is a good programming 451 452 practice to specify default components. If all defaults are 452 desired, the mode DEFAULT_MODES and the mask ALL_MODE_MASKS453 desired, the mode @code{DEFAULT_MODES} and the mask @code{ALL_MODE_MASKS} 453 454 should be used. 454 455 … … 456 457 used with the task_mode directive to place a task at interrupt 457 458 level 3 and make it non-preemptible. The mode should be set to 458 INTERRUPT_LEVEL(3) | NO_PREEMPTto indicate the desired459 @code{INTERRUPT_LEVEL(3) @value{RTEMSOR} NO_PREEMPT} to indicate the desired 459 460 preemption mode and interrupt level, while the mask parameter 460 should be set to INTERRUPT_MASK | NO_PREEMPT_MASK to indicate461 t hat the calling task's interrupt level and preemption mode are461 should be set to @code{INTERRUPT_MASK @value{RTEMSOR} NO_PREEMPT_MASK} 462 to indicate that the calling task's interrupt level and preemption mode are 462 463 being altered. 463 464 … … 567 568 blocked until the delay interval has elapsed, at which time the 568 569 task is unblocked. A task calling the task_wake_after directive 569 with a delay interval of YIELD_PROCESSORticks will yield the570 with a delay interval of @code{YIELD_PROCESSOR} ticks will yield the 570 571 processor to any other ready task of equal or greater priority 571 572 and remain ready to execute. … … 726 727 floating point context area. The mode parameter contains values 727 728 which sets the task's initial execution mode. The 728 FLOATING_POINTattribute should be specified if the created task729 @code{FLOATING_POINT} attribute should be specified if the created task 729 730 is to use a numeric coprocessor. For performance reasons, it is 730 731 recommended that tasks not using the numeric coprocessor should 731 specify the NO_FLOATING_POINTattribute. If the GLOBAL732 specify the @code{NO_FLOATING_POINT} attribute. If the GLOBAL 732 733 attribute is specified, the task can be accessed from remote 733 734 nodes. The task id, returned in id, is used in other task … … 745 746 target processor. 746 747 747 The requested stack size should be at least MINIMUM_STACK_SIZE748 bytes. The value of MINIMUM_STACK_SIZEis processor dependent.748 The requested stack size should be at least @code{MINIMUM_STACK_SIZE} 749 bytes. The value of @code{MINIMUM_STACK_SIZE} is processor dependent. 749 750 Application developers should consider the stack usage of the 750 751 device drivers when calculating the stack size required for … … 821 822 This directive obtains the task id associated with the task name 822 823 specified in name. A task may obtain its own id by specifying 823 SELFor its own task name in name. If the task name is not824 @code{SELF} or its own task name in name. If the task name is not 824 825 unique, then the task id returned will match one of the tasks 825 826 with that name. However, this task id is not guaranteed to … … 830 831 This directive will not cause the running task to be preempted. 831 832 832 If node is SEARCH_ALL_NODES, all nodes are searched with the833 If node is @code{SEARCH_ALL_NODES}, all nodes are searched with the 833 834 local node being searched first. All other nodes are searched 834 835 with the lowest numbered node searched first. … … 945 946 946 947 @subheading NOTES: 947 If id is SELF, the calling task will be restarted and will not948 If id is @code{SELF}, the calling task will be restarted and will not 948 949 return from this directive. 949 950 … … 988 989 another task, as specified by id. RTEMS stops the execution of 989 990 the task and reclaims the stack memory, any allocated delay or 990 timeout timers, the TCB, and, if the task is FLOATING_POINT, its991 timeout timers, the TCB, and, if the task is @code{FLOATING_POINT}, its 991 992 floating point context area. RTEMS does not reclaim the 992 993 following resources: region segments, partition buffers, … … 1003 1004 argument or by sending it a message, an event, or a signal. 1004 1005 1005 Deletion of the current task ( SELF) will force RTEMS to select1006 Deletion of the current task (@code{SELF}) will force RTEMS to select 1006 1007 another task to execute. 1007 1008 … … 1052 1053 1053 1054 @subheading NOTES: 1054 The requesting task can suspend itself by specifying SELFas id.1055 The requesting task can suspend itself by specifying @code{SELF} as id. 1055 1056 In this case, the task will be suspended and a successful 1056 1057 return code will be returned when the task is resumed. … … 1141 1142 @subheading DESCRIPTION: 1142 1143 This directive manipulates the priority of the task specified by 1143 id. An id of SELFis used to indicate the calling task. When1144 id. An id of @code{SELF} is used to indicate the calling task. When 1144 1145 new_priority is not equal to CURRENT_PRIORITY, the specified 1145 1146 task's previous priority is returned in old_priority. When … … 1334 1335 This directive will not cause the running task to be preempted. 1335 1336 1336 If id is set to SELF, the calling task accesses its own notepad.1337 If id is set to @code{SELF}, the calling task accesses its own notepad. 1337 1338 1338 1339 @c This version of the paragraph avoids the overfull hbox error. … … 1341 1342 1342 1343 The sixteen notepad locations can be accessed using the constants 1343 NOTEPAD_0 through NOTEPAD_15.1344 @code{NOTEPAD_0} through @code{NOTEPAD_15}. 1344 1345 1345 1346 Getting a note of a global task which does not reside on the … … 1386 1387 1387 1388 @subheading NOTES: 1388 If id is set to SELF, the calling task accesses its own notepad1389 If id is set to @code{SELF}, the calling task accesses its own notepad 1389 1390 locations. 1390 1391 … … 1396 1397 1397 1398 The sixteen notepad locations can be accessed using the constants 1398 NOTEPAD_0 through NOTEPAD_15.1399 @code{NOTEPAD_0} through @code{NOTEPAD_15}. 1399 1400 1400 1401 Setting a notepad location of a global task which does not … … 1441 1442 1442 1443 A task may give up the processor and remain in the ready state 1443 by specifying a value of YIELD_PROCESSORin ticks.1444 by specifying a value of @code{YIELD_PROCESSOR} in ticks. 1444 1445 1445 1446 The maximum timer interval that can be specified is the maximum -
doc/user/timer.t
r1499931d ra94c5a5d 75 75 @subsection Timer Service Routines 76 76 77 The timer service routine should adhere to @value{ RTEMS-LANGUAGE} calling77 The timer service routine should adhere to @value{LANGUAGE} calling 78 78 conventions and have a prototype similar to the following:: 79 79 -
doc/user/userext.t
r1499931d ra94c5a5d 199 199 of each extension. Each section will contain a prototype of a 200 200 function with the appropriate calling sequence for the 201 corresponding extension. The names given for the @value{ RTEMS-LANGUAGE}202 @value{R TEMS-ROUTINE} and201 corresponding extension. The names given for the @value{LANGUAGE} 202 @value{ROUTINE} and 203 203 its arguments are all defined by the user. The names used in 204 204 the examples were arbitrarily chosen and impose no naming … … 497 497 returns control to RTEMS, then the RTEMS default handler will be 498 498 used. This default handler invokes the directive 499 fatal_error_occurred with the TASK_EXITTEDdirective status.499 fatal_error_occurred with the @code{TASK_EXITTED} directive status. 500 500 501 501 @lowersections
Note: See TracChangeset
for help on using the changeset viewer.