дма это только передача данных. А вам ещё надо разобрать пакет, посчитать кс. Переспросить если что. Каждый раз ваша прикладная прога будет прерываться вайфайным и тсп стеком. И в тот момент когда вам нужно что то срочно сделать приходит пакет по сети. Диспетчер вашу программу прерывает и идёт обработка этого вайфайного пакета.
Если используеются прерывания (аппартные или программные) то на каждое прерывание происходит сохраннеие регистров в стеке, и потом возврат их. Это потеря времени.
Да, с квитированием всё сложнее. Не задумывался про это, плюс я думал стек на уровне проверки чексумм тоже аппаратный.
Спасибо за пояснения.