Changeset 464d541 in rtems-docs
- Timestamp:
- 03/07/18 13:18:10 (5 years ago)
- Branches:
- 5, am, master
- Children:
- c65aeed
- Parents:
- 690b7f9
- git-author:
- Sebastian Huber <sebastian.huber@…> (03/07/18 13:18:10)
- git-committer:
- Sebastian Huber <sebastian.huber@…> (03/07/18 14:33:02)
- Location:
- c-user
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
c-user/configuring_a_system.rst
r690b7f9 r464d541 604 604 NOTES: 605 605 This configuration option is only used in SMP configurations. In 606 uni -processor configurations, the :ref:`PriorityCeiling` is used for MrsP606 uniprocessor configurations, the :ref:`PriorityCeiling` is used for MrsP 607 607 semaphores and thus no extra memory is necessary. 608 608 … … 1436 1436 NOTES: 1437 1437 If there are more processors available than configured, the rest will be 1438 ignored. This configuration define is ignored in uni -processor1438 ignored. This configuration define is ignored in uniprocessor 1439 1439 configurations. 1440 1440 … … 3328 3328 DESCRIPTION: 3329 3329 The Constant Bandwidth Server Scheduler (CBS) is an alternative scheduler 3330 in RTEMS for uni -processor applications. The CBS is a budget aware3330 in RTEMS for uniprocessor applications. The CBS is a budget aware 3331 3331 extension of EDF scheduler. The goal of this scheduler is to ensure 3332 3332 temporal isolation of tasks. The CBS is equipped with a set of additional … … 3360 3360 DESCRIPTION: 3361 3361 The Earliest Deadline First Scheduler (EDF) is an alternative scheduler in 3362 RTEMS for uni -processor applications. The EDF schedules tasks with dynamic3362 RTEMS for uniprocessor applications. The EDF schedules tasks with dynamic 3363 3363 priorities equal to deadlines. The deadlines are declared using only Rate 3364 3364 Monotonic manager which handles periodic behavior. Period is always equal … … 3458 3458 DESCRIPTION: 3459 3459 The Deterministic Priority Scheduler is the default scheduler in RTEMS for 3460 uni -processor applications and is designed for predictable performance3460 uniprocessor applications and is designed for predictable performance 3461 3461 under the highest loads. It can block or unblock a thread in a constant 3462 3462 amount of time. This scheduler requires a variable amount of memory based -
c-user/interrupt_manager.rst
r690b7f9 r464d541 342 342 This directive will not cause the calling task to be preempted. 343 343 344 This directive is only available in uni -processor configurations. The344 This directive is only available in uniprocessor configurations. The 345 345 directive ``rtems_interrupt_local_disable`` is available in all 346 346 configurations. … … 415 415 This directive will not cause the calling task to be preempted. 416 416 417 This directive is only available in uni -processor configurations. The417 This directive is only available in uniprocessor configurations. The 418 418 directive ``rtems_interrupt_local_enable`` is available in all 419 419 configurations. … … 455 455 This directive will not cause the calling task to be preempted. 456 456 457 This directive is only available in uni -processor configurations. The457 This directive is only available in uniprocessor configurations. The 458 458 directives ``rtems_interrupt_local_disable`` and 459 459 ``rtems_interrupt_local_enable`` are available in all configurations. -
c-user/key_concepts.rst
r690b7f9 r464d541 360 360 non-preemptive sections present with priority boosting 361 361 :cite:`Brandenburg:2013:OMIP`. The :math:`m` denotes the number of processors 362 in the system. Similar to the uni -processor priority inheritance protocol, the362 in the system. Similar to the uniprocessor priority inheritance protocol, the 363 363 OMIP mutexes do not need any external configuration data, e.g. a ceiling 364 364 priority. This makes them a good choice for general purpose libraries that … … 379 379 in FIFO or priority order. 380 380 381 In uni -processor configurations, the priority queuing discipline just orders381 In uniprocessor configurations, the priority queuing discipline just orders 382 382 the threads according to their current priority and in FIFO order in case of 383 383 equal priorities. However, in SMP configurations, the situation is a bit more -
c-user/self_contained_objects.rst
r690b7f9 r464d541 123 123 The :c:type:`rtems_mutex` and :c:type:`rtems_recursive_mutex` objects provide 124 124 mutual-exclusion synchronization using the :ref:`PriorityInheritance` in 125 uni -processor configurations or the :ref:`OMIP` in SMP configurations.125 uniprocessor configurations or the :ref:`OMIP` in SMP configurations. 126 126 Recursive locking should be used with care :cite:`Williams:2012:CA`. The 127 127 storage space for these object must be provided by the user. There are no -
c-user/semaphore_manager.rst
r690b7f9 r464d541 115 115 116 116 RTEMS supports the :ref:`MrsP` for local, binary semaphores that use the 117 priority task wait queue blocking discipline. In uni -processor configurations,117 priority task wait queue blocking discipline. In uniprocessor configurations, 118 118 the :ref:`PriorityCeiling` is used instead. 119 119 -
c-user/symmetric_multiprocessing_services.rst
r690b7f9 r464d541 305 305 ================== 306 306 307 Most operating system services provided by the uni -processor RTEMS are307 Most operating system services provided by the uniprocessor RTEMS are 308 308 available in SMP configurations as well. However, applications designed for an 309 uni -processor environment may need some changes to correctly run in an SMP309 uniprocessor environment may need some changes to correctly run in an SMP 310 310 configuration. 311 311 312 312 As discussed earlier, SMP systems have opportunities for true parallelism which 313 was not possible on uni -processor systems. Consequently, multiple techniques314 that provided adequate critical sections on uni -processor systems are unsafe on313 was not possible on uniprocessor systems. Consequently, multiple techniques 314 that provided adequate critical sections on uniprocessor systems are unsafe on 315 315 SMP systems. In this section, some of these unsafe techniques will be 316 316 discussed. … … 334 334 ----------------------------------------- 335 335 336 On a uni -processor system, it is safe to assume that when the highest priority336 On a uniprocessor system, it is safe to assume that when the highest priority 337 337 task in an application executes, it will execute without being preempted until 338 338 it voluntarily blocks. Interrupts may occur while it is executing, but there … … 348 348 executing. It should be assumed that every processor is executing another 349 349 application task. Further, those tasks will be ones which would not have been 350 executed in a uni -processor configuration and should be assumed to have data350 executed in a uniprocessor configuration and should be assumed to have data 351 351 synchronization conflicts with what was formerly the highest priority task 352 352 which executed without conflict. … … 356 356 357 357 A thread which disables preemption prevents that a higher priority thread gets 358 hold of its processor involuntarily. In uni -processor configurations, this can358 hold of its processor involuntarily. In uniprocessor configurations, this can 359 359 be used to ensure mutual exclusion at thread level. In SMP configurations, 360 360 however, more than one executing thread may exist. Thus, it is impossible to … … 367 367 ----------------------- 368 368 369 A low overhead means that ensures mutual exclusion in uni -processor369 A low overhead means that ensures mutual exclusion in uniprocessor 370 370 configurations is the disabling of interrupts around a critical section. This 371 371 is commonly used in device driver code. In SMP configurations, however, … … 393 393 interrupt locks. The interrupt locks are a simple API layer on top of the SMP 394 394 locks used for low-level synchronization in the operating system core. 395 Currently, they are implemented as a ticket lock. In uni -processor395 Currently, they are implemented as a ticket lock. In uniprocessor 396 396 configurations, they degenerate to simple interrupt disable/enable sequences by 397 397 means of the C pre-processor. It is disallowed to acquire a single interrupt … … 471 471 472 472 Timer service routines run in the context of the clock interrupt. On 473 uni -processor configurations, it is sufficient to disable interrupts and remove473 uniprocessor configurations, it is sufficient to disable interrupts and remove 474 474 a timer from the set of active timers to stop it. In SMP configurations, 475 475 however, the timer service routine may already run and wait on an SMP lock … … 521 521 522 522 DESCRIPTION: 523 In uni -processor configurations, a value of one will be returned.523 In uniprocessor configurations, a value of one will be returned. 524 524 525 525 In SMP configurations, this returns the value of a global variable set … … 550 550 551 551 DESCRIPTION: 552 In uni -processor configurations, a value of zero will be returned.552 In uniprocessor configurations, a value of zero will be returned. 553 553 554 554 In SMP configurations, an architecture specific method is used to obtain the -
c-user/timer_manager.rst
r690b7f9 r464d541 68 68 associated with all task-based timers. This task executes at a priority 69 69 specified by :ref:`rtems_timer_initiate_server() <rtems_timer_initiate_server>` 70 and it may have a priority of zero (the highest priority). In uni -processor70 and it may have a priority of zero (the highest priority). In uniprocessor 71 71 configurations, it is created non-preemptible. 72 72
Note: See TracChangeset
for help on using the changeset viewer.