Yeah you are a bit right but for systems with an MMU, RTOS generally allows you to perform DMA and
interprocessor communication more efficiently by rendering related buffers
noncacheable. This is necessary to ensure that data is not being buffered locally
when other processors or DMA devices are accessing the same memory location.
Without the ability to make portions of memory noncacheable, caching must be
turned off globally (resulting in performance degradation) or buffers must be
flushed/invalidated manually.
Architectures that do not support bus snooping must disable the memory caching
that is used for interprocessor communication.