Что вы должны знать о своем компьютере
bf1271d8

Каналы прямого доступа к памяти - DMA


Механизм прямого доступа к памяти (Direct Memory Access - DMA) позволяет устройствам компьютера получать непосредственный доступ к оперативной памяти, расположенной на системной плате компьютера. Центральный процессор может заниматься своими делами и не отвлекаться на передачу данных. Это позволяет значительно ускорить работу программ и повысить производительность работы компьютера.

Особенно важно использование каналов прямого доступа в случае большого потока данных между оперативной памятью и устройством. В качестве примера такого устройства можно привести звуковой адаптер. Если программа передает информацию звуковому адаптеру, не через канал прямого доступа, тогда выполнение остальных функций замедляется.

Управление прямым доступом к памяти осуществляется специальной микросхемой контроллера DMA. Компьютеры IBM PC и IBM PC/XT содержали один такой контроллер. Он позволял организовать четыре канала прямого доступа к памяти для четырех различных устройств. На современных моделях компьютеров IBM PC/AT установлено два контроллера прямого доступа к памяти. Это позволило увеличить количество каналов прямого доступа к памяти до восьми. Один канал прямого доступа используется для объединения контроллеров DMA и не может быть использован для других устройств.

Обычно каналы прямого доступа используются следующим образом. Для компьютеров IBM PC и IBM PC/XT:



Номер канала Для чего используется
DMA0 Зарезервирован для системной платы. Недоступен для устройств расширения
DMA1 Свободен
DMA2 Контроллер накопителей на гибких магнитных дисках
DMA3 Контроллер накопителей на жестких магнитных дисках

Только один канал прямого доступа к памяти свободен для использования его другими устройствами.

В компьютере IBM PC/AT имеется значительно больше свободных каналов прямого доступа:

Номер канала Для чего используется
DMA0 Зарезервирован для системной платы. Недоступно для устройств расширения (16 бит)
DMA1 Свободно (8 бит)
DMA2 Контроллер накопителей на гибких магнитных дисках (8 бит)
DMA3 Свободен (8 бит)
DMA4 Для подключения второго контроллера DMA
DMA5 Свободен (16 бит)
DMA6 Свободен (16 бит)
DMA7 Свободен (16 бит)
<
Каналы прямого доступа к памяти используются большинством современных плат расширения. Вот далеко не полный список таких устройств:

  • Контроллеры накопителей на жестких и гибких дисках


  • Сетевые адаптеры


  • Контроллеры сканера


  • Звуковые адаптеры


  • Контроллеры стримера


  • Если в вашем компьютере установлено несколько устройств, использующих каналы прямого доступа, каждое устройство должно пользоваться собственным каналом прямого доступа. Если несколько устройств работают с одним каналом прямого доступа, возможно возникновение конфликтных ситуаций и, как результат, "зависание" компьютера.

    Так же как номера аппаратных прерываний и адреса портов ввода/вывода, номера каналов прямого доступа, используемые платами расширения, выбираются с помощью специальных переключателей или перемычек.

    Диагностические программы, в том числе Microsoft Diagnostics, CheckIt for DOS, и CheckIt for Windows, не позволяют автоматически определить, какие из каналов прямого доступа задействованы аппаратурой компьютера. Отчасти это связано с тем, что каналы прямого доступа задействуются только в моменты передачи данных.


    Содержание раздела