You copied the Doc URL to your clipboard.

About OS awareness

Arm® Development Studio provides support for a number of operating systems that can run on the target. This is called OS awareness and it provides a representation of the operating system threads and other relevant data structures.

The OS awareness support in Arm Debugger depends on the OS version and the processor architecture on the target.

Arm Debugger provides OS awareness for:

  • ThreadX 5.6, 5.7: Armv5, Armv5T, Armv5TE, Armv5TEJ, Armv6-M, Armv7-M, Armv7-R, Armv7-A, Armv8-A.
  • μC/OS-II 2.92: Armv6-M, Armv7-M, Armv7-R, Armv7-A.
  • μC/OS-III 3.04: Armv6-M, Armv7-M, Armv7-R, Armv7-A.
  • embOS 3.88: Armv5, Armv5T, Armv5TE, Armv5TEJ, Armv6-M, Armv7-M, Armv7-R, Armv7-A.
  • Keil® CMSIS-RTOS RTX 4.7 and RTX 5: Armv6-M, Armv7-M, Armv7-R, Armv7-A, Armv8-M.
  • FreeRTOS 8.0: Armv6-M, Armv7-M, Armv7-R, Armv7-A.
  • Freescale MQX 4.0: Freescale-based Cortex®-M4 and Cortex-A5 processors
  • Quadros RTXC 1.0.2: Armv5, Armv5T, Armv5TE, Armv5TEJ, Armv7-M, Armv7-R, Armv7-A.
  • Nucleus RTOS 2014.06: Armv5, Armv5T, Armv5TE, Armv5TEJ, Armv6-M, Armv7-M, Armv7-R, Armv7-A.
  • μC3 Standard: Armv7-R, Armv7-A.
  • μC3 Compact: Armv6-M, Armv7-M.
  • PikeOS 4.1, 4.2: Armv7-A, Armv7-R, Armv8-A.
  • VxWorks 7: Armv7-A, Armv7-R, Armv8-A.

Note

  • By default, OS awareness is not present for an architecture or processor that is not listed above.
  • OS awareness support for newer versions of the OS depends on the scope of changes to their internal data structures.
  • OS awareness in Arm Debugger does not support the original non-CMSIS Keil RTX.
  • OS awareness for μC3 Standard requires you to set the vfp-flag parameter based on the --fpu option that the μC3 Standard kernel was compiled with. You can set this using the OS Awareness tab in the Debug Configurations dialog box, or using the command set os vfp-flag. You can set the value to disabled, vfpv3_16, or vfpv3_32.

The Linux kernels that Arm Debugger provides OS awareness for are:

  • Linux 2.6.28, Armv7-A
  • Linux 2.6.38: Armv7-A
  • Linux 3.0: Armv7-A
  • Linux 3.11.0-rc6: Armv7-A
  • Linux 3.13.0-rc3: Armv7-A
  • Linux 3.6.0-rc6: Armv7-A
  • Linux 3.7.0: Armv7-A
  • Linux 3.9.0-rc3: Armv7-A
  • Linux 3.11.0-rc6: Armv8-A

Note

Later versions of Linux are expected to work on Armv7-A Armv8-A architectures.

This section contains the following subsections:

Was this page helpful? Yes No