Это вообще, по большому аппаратных средства, процессор может сделать более или менее ничего в то время как DMA выполняется. В общем, он просто продолжается с нормальным выполнением запущенных процессов или задач ядра под управлением ОС.
Относительно: [?]
... [а] й, если кэш процессора/регистры пусты, как другая команда может быть извлечена без перемежения DMA в ходе
As Я понимаю это, вы спрашиваете, что произойдет, если ЦП необходимо получить доступ к памяти. Обычно ЦПУ обычно часто обращается к памяти не только, когда «регистры или кеши пусты», и это действие может продолжаться более или менее нормально , когда выполняется DMA. Шина памяти уже обычно используется несколькими устройствами, включая несколько устройств с поддержкой DMA, PCI-карты, несколько ядер или несколько процессоров. memory controller несет ответственность за принятие и выполнение всех этих вопросов, включая арбитраж между ними.
Итак, вы правы в том, что может быть какой-то «чередование», когда и DMA, и память доступа к ЦП, так же, как это может произойти, когда два ядра (или даже два логических потока, работающих на одном и том же ядре) получают доступ к памяти. Как это работает на практике, зависит от того, как организована DRAM, как работает контроллер памяти (и сколько из них присутствуют) и многие другие детали, но в целом вы ожидаете, что современные системы памяти будут иметь высокую параллель - способные поддерживать несколько потоков доступ и часто приближается к ограничениям пропускной способности, налагаемым ОЗУ.
В эти дни, что в значительной степени означает что-то большее, чем встроенный микроконтроллер. Например, квалифицируются даже мобильные процессоры.
К обычно я имею в виду нормальные механизмы используются, и вы можете ожидать, доступ к памяти для работы, но не то, что производительность не будут затронуты. Доступ к памяти с помощью процессора будет конкурировать с доступом DMA (и, возможно, другим доступом к другим ЦП, устройствам PCI, таким как видеокарты и т. Д.) И, скорее всего, будет медленнее, но на разумных аппаратных средствах, безусловно, не придется ждать DMA заканчивается!
Любая конкретная архитектура в виду? Не все процессоры и DMA равны. Возможно, он слишком широк. –