Цитата(hitower @ Jun 29 2005, 04:09)
man 4 pci
получаете конфигурацию, дальше - через обычные ф-ии inb, inw, inl и т.п.
привилегии процесс может получить, открыв устройство /dev/io
к прерываниям так не добраться
Вместо in/out можно сделать mmap используя /dev/mem и получить прямой доступ к памяти PCI устройства. Но могут быть сюрпризы с кэшированием памяти.
К прерываниям, действительно, добраться труднее - придется-таки написать простой драйвер и будить процесс.
C DMA тоже интересно выходит. PCI устройству нужен физический адрес, а программа знает только о виртуальном. Можно DMA организовать в драйвере, но тогда, практически, выйдет нормальный драйвер.