TaskMarket

From Xenomai

Jump to: navigation, search

Contents

[edit] Scheduled Tasks

[edit] Next Maintenance Release

[edit] Next Major Release (2.4)

  • Conform to __ARCH_WANT_INTERRUPTS_ON_CTXSW on ARM to drastically reduce latencies. (completed)
  • timer rework
    • periodic over aperiodic (completed)
    • support for multiple timer bases (completed)
    • start absolute timers (completed)
    • optimised conversion functions (completed)
    • RTDM: timer API
    • RTDM: handle unsynched timestamps from different CPUs
  • auto-cleanup of native API resources (completed)
  • hardened real-time signal handling (under investigation)
  • finalise TLSF support
    • 64 bit archs
    • extensible heaps
  • benchmark BSD vs. TLSF allocators and decide about merging both or replacing the former with the latter
  • x86_64 support (completed)
  • locking audit
    • reduce the pressure on the nklock by using private locks whenever possible

[edit] Xenomai 3

[edit] Unscheduled Tasks

  • New nucleus feature: Robust locks
    • Report held locks on task cleanup (=>debugging)
    • Release those locks and inform the waiters
    • Apply robust locks on RTOS skins
    • Keep in mind: How to map on robust futexes for PREEMPT_RT support?
  • RTDM: CPU affinity for driver threads (likely part of a broader SMP API redesign)
  • Blocking on xnsync objects from root domain vs. automatic shadow thread creation (on demand mapping)
  • Generalised file descriptors for POSIX and RTDM
  • Automatic kernel object cleanup on process termination for all skins
  • RTDM: threaded IRQs
  • RTDM: user-space driver environment
  • More test suites
    • Native skin
    • RTDM skin
    • RTDM profiles
  • Add (Linux) Valgrind memory debugger support. Details here. (Fairly hard job, given that Valgrind runs in some emulated environment and only has some "kind of" posix thread support.)
  • LTTng intergration (Adeos patch, Xenomai facilities, maybe also tool enhancements)
  • Move snippets/demos into examples folder, refactoring them if required
  • More examples

[edit] Wish List and Weird Ideas

Documentation updates (e.g. on the Wiki):

  • Hyper links to related subjects (e.g. remote debugging via gdb, embedded tools & toolchain, etc.)

Code Snippets (could be done through the example sections of doxygen):

  • Typical use of the different OS skins: creation of tasks, semaphores, message queues, etc.
Personal tools