Pergunta

Eu poderia estar se aproximando isso tudo errado, mas ...

Eu tenho um driver de dispositivo do kernel linux que lida com uma interrupção externa e atualmente realiza uma printk () quando ele ocorre.

O que eu gostaria de fazer é dizer um aplicativo de espaço do usuário que este evento tenha ocorrido para que ele possa acordar e fazer algumas coisas.

É possível (/ simples / boas práticas) para definir o SIGUSR1 de dentro do kernel e, em seguida, capturá-lo no espaço de usuário através

signal (SIGUSR1, <handler function>);

Graças

Foi útil?

Solução

Esta não soa como uma idéia muito boa. Se é mesmo possível, você tem que dar alguma forma o motorista o ID do processo do cara espaço do usuário para que o motorista poderia finagle recebendo um sinal para ele.

Gostaria de criar um / dev / xxx, abri-lo, eo motorista poderia fazer o descritor de arquivo ativa quando o evento ocorre. Talvez até mesmo fornecer mais informações.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top