mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-08-24 13:28:33 +08:00
Notepads where a feature of RTEMS' tasks that simply functioned in the same way as POSIX keys or threaded local storage (TLS). They were introduced well before per task variables, which are also deprecated, and were barely used in favor of their POSIX alternatives. In addition to their scarce usage, Notepads took up unnecessary memory. For each task: - 16 32-bit integers were allocated. - A total of 64 bytes per task per thread. This is especially critical in low memory and safety-critical applications. They are also defined as uint32_t, and therefore are not guaranteed to hold a pointer. Lastly, they are not portable solutions for SMP and uniprocessor systems, like POSIX keys and TLS. updates #2493.
7.6 KiB
7.6 KiB
| 1 | rtems_barrier_create: only case | tm30 | NA | Yes |
|---|---|---|---|---|
| 2 | rtems_barrier_delete: only case | tm30 | NA | Yes |
| 3 | rtems_barrier_ident: only case | tm30 | NA | Yes |
| 4 | ||||
| 5 | rtems_clock_tick: only case | tm25 | NA | Yes |
| 6 | ||||
| 7 | rtems_event_receive: available | tm15 | NA | Yes |
| 8 | rtems_event_receive: not available caller blocks | tm15 | NA | Yes |
| 9 | rtems_event_receive: not available NO_WAIT | tm15 | NA | Yes |
| 10 | rtems_event_receive: obtain current events | tm15 | NA | Yes |
| 11 | rtems_event_send: no task readied | tm15 | NA | Yes |
| 12 | rtems_event_send: task readied preempts caller | tm16 | NA | Yes |
| 13 | rtems_event_send: task readied returns to caller | tm15 | NA | Yes |
| 14 | ||||
| 15 | rtems internal: context switch: no floating point contexts | tm26 | NA | Yes |
| 16 | rtems internal: context switch: self | tm26 | NA | Yes |
| 17 | rtems internal: context switch to another task | tm26 | NA | Yes |
| 18 | rtems internal: fp context switch restore 1st FP task | tm26 | NA | Yes |
| 19 | rtems internal: fp context switch save idle and restore initialized | tm26 | NA | Yes |
| 20 | rtems internal: fp context switch save idle, restore idle | tm26 | NA | Yes |
| 21 | rtems internal: fp context switch save initialized, restore initialized | tm26 | NA | Yes |
| 22 | rtems internal: _Semaphore_Get | tm26 | NA | Yes |
| 23 | rtems internal: _Thread_Disable_dispatch | tm26 | NA | Yes |
| 24 | rtems internal: _Thread_Dispatch NO FP | tm26 | NA | Yes |
| 25 | rtems internal: _Thread_Enable_dispatch | tm26 | NA | Yes |
| 26 | rtems internal: _Thread_Get: invalid id | tm26 | NA | Yes |
| 27 | rtems internal: _Thread_Get | tm26 | NA | Yes |
| 28 | rtems internal: _Thread_Ready | tm26 | NA | Yes |
| 29 | rtems internal: _Thread_Resume | tm26 | NA | Yes |
| 30 | rtems internal: _Thread_Set_state | tm26 | NA | Yes |
| 31 | rtems internal: _Thread_Unblock | tm26 | NA | Yes |
| 32 | ||||
| 33 | rtems interrupt: entry overhead returns to interrupted task | tm27 | NA | Yes |
| 34 | rtems interrupt: entry overhead returns to nested interrupt | tm27 | NA | Yes |
| 35 | rtems interrupt: exit overhead returns to interrupted task | tm27 | NA | Yes |
| 36 | rtems interrupt: exit overhead returns to nested interrupt | tm27 | NA | Yes |
| 37 | rtems interrupt: _ISR_Disable | tm26 | NA | Yes |
| 38 | rtems interrupt: _ISR_Enable | tm26 | NA | Yes |
| 39 | rtems interrupt: _ISR_Flash | tm26 | NA | Yes |
| 40 | ||||
| 41 | rtems_io_close: only case | tm20 | NA | Yes |
| 42 | rtems_io_control: only case | tm20 | NA | Yes |
| 43 | rtems_io_initialize: only case | tm20 | NA | Yes |
| 44 | rtems_io_open: only case | tm20 | NA | Yes |
| 45 | rtems_io_read: only case | tm20 | NA | Yes |
| 46 | rtems_io_write: only case | tm20 | NA | Yes |
| 47 | ||||
| 48 | rtems_message_queue_broadcast: no waiting tasks | tm22 | NA | Yes |
| 49 | rtems_message_queue_broadcast: task readied returns to caller | tm22 | NA | Yes |
| 50 | rtems_message_queue_broadcast: task readied | tm22 | NA | Yes |
| 51 | rtems_message_queue_create: only case | tm09 | NA | Yes |
| 52 | rtems_message_queue_delete: only case | tm09 | NA | Yes |
| 53 | rtems_message_queue_flush: messages flushed | tm09 | NA | Yes |
| 54 | rtems_message_queue_flush: no messages flushed | tm09 | NA | Yes |
| 55 | rtems_message_queue_ident: only case | tm21 | NA | Yes |
| 56 | rtems_message_queue_receive: available | tm09 | NA | Yes |
| 57 | rtems_message_queue_receive: not available caller blocks | tm10 | NA | Yes |
| 58 | rtems_message_queue_receive: not available NO_WAIT | tm10 | NA | Yes |
| 59 | rtems_message_queue_send: no waiting tasks | tm09 | NA | Yes |
| 60 | rtems_message_queue_send: task readied preempts caller | tm11 | NA | Yes |
| 61 | rtems_message_queue_send: task readied returns to caller | tm12 | NA | Yes |
| 62 | rtems_message_queue_urgent: no waiting tasks | tm09 | NA | Yes |
| 63 | rtems_message_queue_urgent: task readied preempts caller | tm13 | NA | Yes |
| 64 | rtems_message_queue_urgent: task readied returns to caller | tm14 | NA | Yes |
| 65 | ||||
| 66 | rtems_partition_create: only case | tm20 | NA | Yes |
| 67 | rtems_partition_delete: only case | tm20 | NA | Yes |
| 68 | rtems_partition_get_buffer: available | tm20 | NA | Yes |
| 69 | rtems_partition_get_buffer: not available | tm20 | NA | Yes |
| 70 | rtems_partition_ident: only case | tm21 | NA | Yes |
| 71 | rtems_partition_return_buffer: only case | tm20 | NA | Yes |
| 72 | ||||
| 73 | rtems_port_create: only case | tm28 | NA | Yes |
| 74 | rtems_port_delete: only case | tm28 | NA | Yes |
| 75 | rtems_port_external_to_internal: only case | tm28 | NA | Yes |
| 76 | rtems_port_ident: only case | tm21 | NA | Yes |
| 77 | rtems_port_internal_to_external: only case | tm28 | NA | Yes |
| 78 | ||||
| 79 | rtems_rate_monotonic_cancel: only case | tm29 | NA | Yes |
| 80 | rtems_rate_monotonic_create: only case | tm29 | NA | Yes |
| 81 | rtems_rate_monotonic_delete: active | tm29 | NA | Yes |
| 82 | rtems_rate_monotonic_delete: inactive | tm29 | NA | Yes |
| 83 | rtems_rate_monotonic_ident: only case | tm21 | NA | Yes |
| 84 | rtems_rate_monotonic_period: conclude periods caller blocks | tm29 | NA | Yes |
| 85 | rtems_rate_monotonic_period: initiate period returns to caller | tm29 | NA | Yes |
| 86 | rtems_rate_monotonic_period: obtain status | tm29 | NA | Yes |
| 87 | ||||
| 88 | rtems_region_create: only case | tm20 | NA | Yes |
| 89 | rtems_region_delete: only case | tm20 | NA | Yes |
| 90 | rtems_region_get_segment: available | tm20 | NA | Yes |
| 91 | rtems_region_get_segment: not available caller blocks | tm20 | NA | Yes |
| 92 | rtems_region_get_segment: not available NO_WAIT | tm20 | NA | Yes |
| 93 | rtems_region_ident: only case | tm21 | NA | Yes |
| 94 | rtems_region_return_segment: no waiting tasks | tm20 | NA | Yes |
| 95 | rtems_region_return_segment: task readied preempts caller | tm20 | NA | Yes |
| 96 | rtems_region_return_segment: task readied returns to caller | tm20 | NA | Yes |
| 97 | ||||
| 98 | rtems_semaphore_create: only case | tm01 | NA | Yes |
| 99 | rtems_semaphore_delete: only case | tm01 | NA | Yes |
| 100 | rtems_semaphore_ident: only case | tm21 | NA | Yes |
| 101 | rtems_semaphore_obtain: available | tm01 | NA | Yes |
| 102 | rtems_semaphore_obtain: Counting/FIFO not available caller blocks | tm02 | NA | Yes |
| 103 | rtems_semaphore_obtain: not available NO_WAIT | tm01 | NA | Yes |
| 104 | rtems_semaphore_release: no waiting tasks | tm01 | NA | Yes |
| 105 | rtems_semaphore_release: Counting/FIFO task readied preempts caller | tm03 | NA | Yes |
| 106 | rtems_semaphore_release: task readied | tm04 | NA | Yes |
| 107 | rtems_semaphore_obtain: Counting/priority not available caller blocks | tm31 | NA | Yes |
| 108 | rtems_semaphore_release: Counting/priority task readied preempts caller | tm32 | NA | Yes |
| 109 | rtems_semaphore_obtain: Binary/FIFO not available caller blocks | tm33 | NA | Yes |
| 110 | rtems_semaphore_release: Binary/FIFO task readied preempts caller | tm34 | NA | Yes |
| 111 | rtems_semaphore_obtain: Binary/priority not available caller blocks | tm35 | NA | Yes |
| 112 | rtems_semaphore_release: Binary/priority task readied preempts caller | tm36 | NA | Yes |
| 113 | ||||
| 114 | rtems_signal_catch: only case | tm19 | NA | Yes |
| 115 | rtems_signal: exit ASR overhead returns to calling task | tm19 | NA | Yes |
| 116 | rtems_signal: exit ASR overhead returns to preempting task | tm19 | NA | Yes |
| 117 | rtems_signal_send: returns to caller | tm19 | NA | Yes |
| 118 | rtems_signal_send: signal to self | tm19 | NA | Yes |
| 119 | ||||
| 120 | rtems_task_create: only case | tm04 | NA | Yes |
| 121 | rtems_task_delete: blocked task | tm04 | NA | Yes |
| 122 | rtems_task_delete: calling task | tm18 | NA | Yes |
| 123 | rtems_task_delete: ready task | tm06 | NA | Yes |
| 124 | rtems_task_delete: suspended task | tm04 | NA | Yes |
| 125 | rtems_task_ident: only case | tm21 | NA | Yes |
| 126 | rtems_task_restart: blocked task preempts caller | tm04 | NA | Yes |
| 127 | rtems_task_restart: blocked task | tm04 | NA | Yes |
| 128 | rtems_task_restart: calling task | tm06 | NA | Yes |
| 129 | rtems_task_restart: ready task | tm04 | NA | Yes |
| 130 | rtems_task_restart: ready task | tm04 | NA | Yes |
| 131 | rtems_task_restart: suspended task preempts caller | tm07 | NA | Yes |
| 132 | rtems_task_restart: suspended task | tm04 | NA | Yes |
| 133 | rtems_task_resume: task readied preempts caller | tm05 | NA | Yes |
| 134 | rtems_task_resume: task readied returns to caller | tm06 | NA | Yes |
| 135 | rtems_task_set_priority: preempts caller | tm17 | NA | Yes |
| 136 | rtems_task_start: only case | tm04 | NA | Yes |
| 137 | rtems_task_suspend: calling task | tm05 | NA | Yes |
| 138 | rtems_task_suspend: returns to caller | tm06 | NA | Yes |
| 139 | rtems_task_wake_after: yield returns to caller | tm24 | NA | Yes |
| 140 | rtems_task_wake_after: yields preempts caller | tm24 | NA | Yes |
| 141 | rtems_task_wake_when: only case | tm23 | NA | Yes |
| 142 | ||||
| 143 | rtems_timer_cancel: active | tm23 | NA | Yes |
| 144 | rtems_timer_cancel: inactive | tm23 | NA | Yes |
| 145 | rtems_timer_create: only case | tm23 | NA | Yes |
| 146 | rtems_timer_delete: active | tm23 | NA | Yes |
| 147 | rtems_timer_delete: inactive | tm23 | NA | Yes |
| 148 | rtems_timer_fire_after: active | tm23 | NA | Yes |
| 149 | rtems_timer_fire_after: inactive | tm23 | NA | Yes |
| 150 | rtems_timer_fire_when: active | tm23 | NA | Yes |
| 151 | rtems_timer_fire_when: inactive | tm23 | NA | Yes |
| 152 | rtems_timer_ident: only case | tm21 | NA | Yes |
| 153 | rtems_timer_reset: active | tm23 | NA | Yes |
| 154 | rtems_timer_reset: inactive | tm23 | NA | Yes |