Changeset d5154d0f in rtems for c/src/librtems++


Ignore:
Timestamp:
Dec 23, 2015, 8:44:02 PM (5 years ago)
Author:
Aun-Ali Zaidi <admin@…>
Branches:
5, master
Children:
2268ee6
Parents:
a48b7c44
git-author:
Aun-Ali Zaidi <admin@…> (12/23/15 20:44:02)
git-committer:
Joel Sherrill <joel.sherrill@…> (12/24/15 22:52:34)
Message:

api: Remove deprecated Notepads

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.

Location:
c/src/librtems++
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • c/src/librtems++/include/rtems++/rtemsTask.h

    ra48b7c44 rd5154d0f  
    4747
    4848  Mode control is through the rtemsTaskMode class.
    49 
    50   The rtemsTask class reserved notepad register 31.
    5149
    5250  ------------------------------------------------------------------------ */
     
    126124                                       rtems_task_priority& old_priority);
    127125
    128   // notepad control
    129   const rtems_status_code get_note(const uint32_t notepad,
    130                                    uint32_t& note) RTEMS_DEPRECATED;
    131   const rtems_status_code set_note(const uint32_t notepad,
    132                                    const uint32_t note) RTEMS_DEPRECATED;
    133 
    134126  // object id, and name
    135127  const rtems_id id_is() const { return id; }
  • c/src/librtems++/src/rtemsTask.cc

    ra48b7c44 rd5154d0f  
    263263                                                 &old_priority));
    264264}
    265  
    266 const rtems_status_code rtemsTask::get_note(const uint32_t notepad,
    267                                             uint32_t& note)
    268 {
    269   return set_status_code(rtems_task_get_note(id, notepad, &note));
    270 }
    271 
    272 const rtems_status_code rtemsTask::set_note(const uint32_t notepad,
    273                                             const uint32_t note)
    274 {
    275   return set_status_code(rtems_task_set_note(id, notepad, note));
    276 }
    277265
    278266void rtemsTask::body(rtems_task_argument )
Note: See TracChangeset for help on using the changeset viewer.