На первый взгляд кажется хорошей идеей позволить жесткому диску писать в RAM самостоятельно, без инструкций процессора, копирующих данные, особенно с учетом успеха асинхронной сети. Но в статье Википедии о прямом доступе к памяти (DMA) говорится следующее:
Благодаря DMA ЦП освобождается от этих накладных расходов и может выполнять полезные задачи во время передачи данных (хотя шина ЦП будет ] частично заблокирован DMA).
Я не понимаю, как автобусная линия может быть «частично заблокирована». Предположительно, к памяти может получить доступ одно устройство за раз, и тогда кажется, что ЦП действительно мало что может сделать. Он будет заблокирован при первой попытке чтения некэшированной памяти, что, как я ожидаю, будет очень быстро в случае кеш-памяти 2 МБ.
Цель освобождения процессора для выполнения других задач кажется бесполезной. Способствует ли DMA жесткого диска повышению производительности на практике?