Я знаю, что уже немного поздно, но ответ на этот вопрос поможет кому-то вроде меня. Думаю, согласившись с вышеизложенными ответами, я думаю, что вопрос касался кеша.
Так что да, кеш хранит информацию где-то ближена память, это может быть результатом более ранних вычислений.Всякий раз, когда данные обнаруживаются в кеше, они называются попаданием в кеш, а всякий раз, когда они не обнаруживаются (потеря кеша), процессор продолжает вычислять требуемое значение.Устройство также может получить доступ к этим данным, поэтому при запуске мы обычно аннулируем данные кеша, чтобы строка кеша была чистой.Мы также сбрасываем данные кеша при запуске, чтобы все данные кеша записывались обратно в основную память для использования процессором, после чего мы обрабатывали для сброса или инициализации кеша.
DMA (прямой доступ к памяти), дадействительно позволяет вам получить доступ к основной памяти.Но я думаю, что лучшее определение в том, что он позволяет вам получить доступ к системному реестру, доступ к которому имеет только процессор.@Ronnie и @Yann Ramin были правы в том, что DMA может быть аппаратным обеспечением устройства, поэтому он может использоваться вашим последовательным периферийным устройством для доступа к системным регистрам, но он также может использоваться для передачи данных из памяти в память между двумя ядрами.
Более подробную информацию о DMA можно получить из википедии о режимах, в которых DMA может обращаться к системной памяти.Я объясню это просто
Пакетный режим: DMA полностью контролирует шину, процессор в это время простаивает.Данные передаются в пакете (в целом) без прерывания.
Режим циклического кражи: в этом случае данные передаются по одному байту за раз, передача идет медленно, но процессор не работает.