Polling, Interrupt방식

Polling은 특정 주기를 가지고 그 주기 마다 처리를 위한 시그널이 들어 왔는지를 체크 합니다.
따라서 커널과 같은 Interrupt Handler가 필요하지 않습니다.
해당 드라이버에서 스레드를 돌면서 주기적으로 체크만 하면 되기 때문입니다.
그래서 Interrupt 방식보다 구현이 쉽습니다.
하지만 시스템의 리소스를 많이 먹는 부분에 구현시 시스템 성능 저하의 원인이 되기도 합니다.
또한 처리에 정확한 타이밍을 요하는 곳에 사용을 할 경우, 이 또한 문제 발생의 원인이 되기도 합니다.

 

Interrupt 방식은 하드웨어에서 지정한 시그널을 받도록 구현하는 방식입니다.
커널의 Interrupt Handler가 Interrupt를 체크하고, Interrupt 발생시 Interrupt Thread(해당 드라이버)로 Interrupt 발생을
알려 줍니다.
따라서 Polling보다 다소 구현이 복잡합니다.
하지만 처리의 정확한 타이밍을 요하는 드라이버에 적합하고 드라이버에서는 Interrupt 발생 이벤트가 들어
올때만 처리를 하기 때문에 시스템에 부하를 줄일수 있습니다




이 글을 공유하기

댓글

Designed by JB FACTORY