Всем добрый вечер. Не мог бы кто пояснить технологию мапирования адресов из физических в виртуальные и наоборот. Стоит задача: Есть некоторое устройство на PCI шине, для обмена с которым считывается «физический адрес» из конфигурационного пространства PCI. Этот адрес указывает на структуры данных, с помощью которых и происходит взаимодействие (DMA). Главная структура должна содержать физические адреса на другие структуры и т.д. Мне необходимо заполнить эти структуры и в одной из них выставить бит, сигнализирующий устройству, что данные загружены в память DMA и оно может их обработать. Мало того, оно мне присылает ответ в этих же структурах. Проблема в том, что я не могу работать с физическими адресами напрямую, а устройство не может работать с виртуальными адресами. Не понимаю каков механизм мапирования/размапирования даной секции DMA памяти, подскажите пожалуйста...