NdisMSynchronizeWithInterrupt
BOOLEAN
NdisMSynchronizeWithInterrupt(
IN PNDIS_MINIPORT_INTERRUPT Interrupt,
IN PVOID SynchronizeFunction,
IN PVOID SynchronizeContext
);
|
NdisMSynchronizeWithInterrupt ÇÔ¼ö´Â MiniportISR ȤÀº MiniportDisableInterrupt ÇÔ¼ö¸¦ °¡Áö°í ¹Ì´ÏÆ÷Æ® Á¦°ø ÇÔ¼öÀÇ ½ÇÇàÀ» µ¿±âÈÇÑ´Ù.
¸Å°³º¯¼ö
- Interrupt
- NdisMRegisterInterrupt ÇÔ¼ö¸¦ °¡Áö°í ÃʱâÈµÈ ÀÎÅÍ·´Æ® °´Ã¼¿¡ ´ëÇÑ È£ÃâÀÚ Á¦°ø ÀúÀå¼Ò¸¦ °¡¸®Å²´Ù.
- SynchronizeFunction
- µå¶óÀ̹öÀÇ MiniportSynchronizeISR ÇÔ¼öÀÇ ¿£Æ®·¹ Æ÷ÀÎÆ®¸¦ ¼¼úÇÑ´Ù.
- SynchronizeContext
- MiniportSynchronizeISR ÇÔ¼ö°¡ È£ÃâµÆÀ» ¶§ Àü´ÞµÇ´Â ¹Ì´ÏÆ÷Æ® °áÁ¤ ÄÁÅØ½ºÆ®¸¦ °¡¸®Å²´Ù.
¸®Åϰª
NdisMSynchronizeWithInterrupt ÇÔ¼ö´Â MiniportSynchronizeISR ÇÔ¼ö¿¡ ÀÇÇØ¼ ¸®ÅÏµÈ Boolean °ªÀ» ¸®ÅÏÇÑ´Ù.
ÁÖ¼®
MiniportSynchronizeISR ÇÔ¼ö¿¡ ÀÇÇØ¼ ¸®ÅÏµÈ °ªÀº ¶ÇÇÑ NdisMSynchronizeWithInterrupt ÇÔ¼ö¿¡ ÀÇÇØ¼ ¸®ÅϵȴÙ. ÀüÆÄµÈ ÀÌ °ªÀº »óŸ¦ È£ÃâÀÚ¿¡°Ô Á¦°øÇϱâ À§Çؼ »ç¿ëµÉ ¼ö ÀÖ´Ù.
DIRQL¿¡¼ ½ÇÇàÇÏ´Â ´Ù¸¥ µå¶óÀ̹ö ÇÔ¼ö¿Í ÇÔ²² ÀÚ¿øÀ» °øÀ¯ÇÏ´Â ¹Ì´ÏÆ÷Æ® ÇÔ¼ö´Â ±× ÀÚ¿øÀ¸·ÎÀÇ Á¢±ÙÀ» µ¿±âÈÇϱâ À§Çؼ NdisMSynchronizeWithInterrupt ÇÔ¼ö¸¦ »ç¿ëÇØ¾ßÇÑ´Ù. MiniportSynchronizeISR ÇÔ¼ö´Â ¶ÇÇÑ DIRQL¿¡¼ ½ÇÇàÇÏ°í °øÀ¯µÈ ÀÚ¿øÀº ¸ÖƼÇÁ·Î¼¼¼ Ç÷§Æû¿¡¼ ½Ã½ºÅÛ ÇÒ´ç ½ºÇɶô¿¡ ÀÇÇØ¼ º¸È£µÈ´Ù. ±×·¡¼ °øÀ¯ÀÚ¿øÀº µå¶óÀ̹ö°¡ ¸ÖƼÇÁ·Î¼¼¼ ±â°è¿¡¼ ½ÇÇàÁßÀÏ ¶§¸¶´Ù MiniportISR ȤÀº MiniportDisableInterrupt ÇÔ¼ö ±×¸®°í È£ÃâÀÚ¿¡ ÀÇÇÑ µ¿½Ã Á¢±ÙÀ¸·ÎºÎÅÍ º¸È£µÈ´Ù.
NdisMSynchronizeWithInterrupt ÇÔ¼ö´Â ½Ã½ºÅÛ ½ºÇɶôÀ» ÇØÁ¦Çϰí ÅëÁ¦¸¦ ¸®ÅÏÇϱâ Àü¿¡ È£ÃâÀÚÀÇ ¿ø·¡ IRQLÀ» ÀúÀåÇÑ´Ù.
NdisMSynchronizeWithInterrupt ÇÔ¼öÀÇ È£ÃâÀÚ´Â IRQL <= DIRQL¿¡¼ ½ÇÇàÇÑ´Ù.
|