Questions about Azure RTOS ThreadX

FnxQT 21 Reputation points
2022-11-07T10:00:51.163+00:00

Hello,

I read a lot of documentation about Azure RTOS , however some questions have been left unanswered.

  • Does Azure RTOS provide some sort of malloc/free function ? I only saw memory blocks/pools that require full manual intervention
  • Are threads created in privileged or unprivileged mode ?
  • Is the MPU supported ? There is a lot of documentation for the MPU support of ThreadX modules but nothing for standard threads. Are threads' stack protected by the MPU as in other RTOSes ?
  • Is there some sort of temporal isolation ? Can we have thread watchdog ? It seems one of your partner Renesas has created a module "Thread Monitor FrameWork". Is there something in house ?
  • Is there some sort of runtime check of kernel objets ? To prevent some corruption ?

Thank you, best regards.

Azure RTOS
Azure RTOS
An Azure embedded development suite including a small but powerful operating system for resource-constrained devices.
324 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Scott Azure RTOS 4,051 Reputation points
    2022-11-07T17:00:06.747+00:00
    1. ThreadX byte pools are what we suggest to use for dynamic memory allocation. ThreadX does not manage a heap at all - you are free to use a heap if you wish. I suggest using a thread-safe heap implementation.
    2. ThreadX and threads run in privileged mode.
    3. MPU is only supported in ThreadX Modules. Module threads would run in unprivileged mode.
    4. We do not have a thread watchdog. You could implement something like what Renesas has.
    5. ThreadX has optional thread stack checking, but no object checking.
    1 person found this answer helpful.
    0 comments No comments