메뉴 건너뛰기

그외 개발정보


안녕하세요 인터럽트 루틴에 대한 질문이 있어서...
PCI 시리얼통신 카드를 만들어서...
드라이버를 작성하고 있는데...
StartIoRoutine( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp )
{
.....................
KeSynchronizeExecution( DeviceExtension->InterruptObject,
(PKSYNCHRONIZE_ROUTINE)XxTransmit,
DeviceExtension ));
....................
}

XxTransmit 로 하드웨어 인터럽트를 발생시켜
인터럽트 서비스 루틴인
BOOLEAN OnInterrupt(PKINTERRUPT InterruptObject, PDEVICE_EXTENSION pdx)
{
}
을 실행하려고 합니다.

이때 XxTransmit 에서 하드웨어 인터럽트가 발생되지 않으면
인터럽트 서비스 루틴에 들어 갈 수 없는건가요??

인터럽트 서비스 루틴은 하드웨어 인터럽트가 발생해야지 실행되는 건가요??

답변 부탁드립니다.

제대로 이해가 되지 않아서...

  • >안녕하세요.
    >
    >네, 드라이버의 인터럽트 핸들러 루틴은 하드웨어 인터럽트와 제대로 연결되었을 때 호출 됩니다.
    >하드웨어에서 강제로 인터럽트를 띄워 드라이버의 인터럽트 서비스 루틴의 코드가 동작하는지 확인해 보실수도 있습니다.
    >
    >도움이 되었길 바라겠습니다.
    >
    >>안녕하세요 인터럽트 루틴에 대한 질문이 있어서...
    >>PCI 시리얼통신 카드를 만들어서...
    >>드라이버를 작성하고 있는데...
    >>StartIoRoutine( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp )
    >>{
    >>.....................
    >>KeSynchronizeExecution( DeviceExtension->InterruptObject,
    >>(PKSYNCHRONIZE_ROUTINE)XxTransmit,
    >>DeviceExtension ));
    >>....................
    >>}
    >>
    >>XxTransmit 로 하드웨어 인터럽트를 발생시켜
    >>인터럽트 서비스 루틴인
    >>BOOLEAN OnInterrupt(PKINTERRUPT InterruptObject, PDEVICE_EXTENSION pdx)
    >>{
    >>}
    >>을 실행하려고 합니다.
    >>
    >>이때 XxTransmit 에서 하드웨어 인터럽트가 발생되지 않으면
    >>인터럽트 서비스 루틴에 들어 갈 수 없는건가요??
    >>
    >>인터럽트 서비스 루틴은 하드웨어 인터럽트가 발생해야지 실행되는 건가요??
    >>
    >>답변 부탁드립니다.
    >>
    >>제대로 이해가 되지 않아서...
    >>
    >
    >

  • profile
    안녕하세요.

    네, 드라이버의 인터럽트 핸들러 루틴은 하드웨어 인터럽트와 제대로 연결되었을 때 호출 됩니다.
    하드웨어에서 강제로 인터럽트를 띄워 드라이버의 인터럽트 서비스 루틴의 코드가 동작하는지 확인해 보실수도 있습니다.

    도움이 되었길 바라겠습니다.

    >안녕하세요 인터럽트 루틴에 대한 질문이 있어서...
    >PCI 시리얼통신 카드를 만들어서...
    >드라이버를 작성하고 있는데...
    >StartIoRoutine( IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp )
    >{
    >.....................
    >KeSynchronizeExecution( DeviceExtension->InterruptObject,
    >(PKSYNCHRONIZE_ROUTINE)XxTransmit,
    >DeviceExtension ));
    >....................
    >}
    >
    >XxTransmit 로 하드웨어 인터럽트를 발생시켜
    >인터럽트 서비스 루틴인
    >BOOLEAN OnInterrupt(PKINTERRUPT InterruptObject, PDEVICE_EXTENSION pdx)
    >{
    >}
    >을 실행하려고 합니다.
    >
    >이때 XxTransmit 에서 하드웨어 인터럽트가 발생되지 않으면
    >인터럽트 서비스 루틴에 들어 갈 수 없는건가요??
    >
    >인터럽트 서비스 루틴은 하드웨어 인터럽트가 발생해야지 실행되는 건가요??
    >
    >답변 부탁드립니다.
    >
    >제대로 이해가 되지 않아서...
    >

제목 날짜
mouclass 접근.. 3 2010.03.13
[TIP] NEXUS(넥서스) 5x 루팅 방법입니다. 2016.01.05
class callback호출시 에러가 나는데 뭐가 문제인지 모르겠습니다..ㅠㅠ 1 2006.07.22
혹시 PCI보드에 사용할수 있는 예제 있으신가요?? 4 2005.10.17
한 가지만 더 올리겠습니다. 1 2006.07.18
필터 드라이버 질문입니다. 1 2006.07.12
필터 드라이버 설치문의.. 1 2004.05.18
플로피 필터 드라이버 관련 질문입니다..답변좀해주세요.. 2 2006.12.12
프로세스 숨기기 4 2006.06.09
토글키 만들기 예제를 키 인풋으로 전환하는데 1 2004.01.13
터치스크린 - 마우스제어 2 2010.03.10
키보드 인터럽트에 대해서 2 2005.07.11
최근에 찾은 드라이버 관련 사이트들 2002.10.14
전에 질문드렸던 내용에 대한 자답입니다. 1 2006.07.25
저번 질문에 이어서...책 소스 이용건.. 1 2005.10.24
재질문 드립니다. 1 2005.10.25
잘구현된 uC/OS Task Switching 데모 2002.07.09
인터럽트에 대한 질문 하나더 드립니다. 1 2006.01.25
인터럽트 루틴에 대한 문의 2 2006.01.12
이쪽은 처음이라 황당한 질문을 드리겠습니다. 1 2005.05.11
이건우님 감사합니다. 내친김에 마우스동작을 바꿔보려고합니다. 1 2005.05.12
이 소스대로 하면 열여야 하는거 아닌가요? 1 2004.06.23
웹에서하드웨어제어하기 1 에 관한질문입니다!!!! 1 2005.10.24
태그 목록
위로