LINUX.ORG.RU

irq в userspace


0

0

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

вопрос:

как красиво проинформировать прогу о том что тикнуло прерывание. можно конечно драйвер написать и там все обращения к плате обернуть в ioctl или через read. но может есть метод проще ?

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

?


посмотри на uio - его как раз для такого случая придумали. Хотя не знаю, как там с ISA.

tailgunner ★★★★★
()
Ответ на: комментарий от true_admin

>Я думал что к портам ввода-вывода из юзерспейса обращаться нельзя, я ошибался?

Можно. man ioperm, man outb, etc...

Dead ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.