Как узнать адрес физической памяти, передаваемой DMA?
От: IgorVlasov  
Дата: 25.03.16 13:17
Оценка:
Есть контроллер SATA, работающий в режиме IDE.
Нашёл способ трансляции виртуального адреса памяти в физический из-под юзермода.

Если я пишу/читаю на диск функциями write()/read(), то для того, чтобы узнать физический адрес памяти, который будет передан контроллеру DMA, достаточно преобразовать виртуальный адрес памяти, переданный функциям write()/read(), в физический?

Или Linux копирует память для DMA контроллера в другое место(может сперва копирует в какой-нибудь кэш или буфер отскока и т.п.)?
Отредактировано 25.03.2016 13:20 IgorVlasov . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.