NdisInitializeSListHead

VOID 

  NdisInitializeSListHead(

    IN PSLIST_HEADER  SListHead

    );

NdisInitializeSListHeadÇÔ¼ö´Â ÀÏ·ÃÀÇ, Æ÷°³Áö´Â ÇϳªÀÇ ¸µÅ©µå¸®½ºÆ®¸¦ ÃʱâÈ­ÇÑ´Ù.

¸Å°³º¯¼ö

SListHead
»óÁÖ ¸Þ¸ð¸®³»¿¡ ÀÖ¾î¾ßÇÑ´Â ÃʱâÈ­µÇ´Â È£ÃâÀÚ Á¦°ø ¸®½ºÆ®ÇìµåÀÇ Æ÷ÀÎÅÍ.

ÁÖ¼®

NdisInitializeSListHeadÇÔ¼ö´Â SListHead¿¡ ¸ðÈ£ÇÑ ¸®½ºÆ® Çìµå¸¦ 0À¸·Î ÃʱâÈ­Çϰí óÀ½¿£Æ®¸® Æ÷ÀÎÅ͸¦ NULL·Î ¼³Á¤ÇÑ´Ù.

S-List³»ÀÇ ÀϷùøÈ£´Â ¿£Æ®¸®°¡ ¸®½ºÆ®¿¡ Ãß°¡µÇ°Å³ª ȤÀº ¸®½ºÆ®·ÎºÎÅÍ Á¦°ÅµÉ¶§¸¶´Ù Áõ°¡µÈ´Ù.

S-List³»ÀÇ ¸ðµç ¿£Æ®¸®µéÀº ºñÆäÀÌÁöÈ­µÇ¾î¾ßÇÑ´Ù.

S-List¸¦ »ç¿ëÇÏ´Â ¾î¶² µå¶óÀ̹ö¶óµµ NdisInterlockedPushEntrySListÇÔ¼ö¿Í NdisInterlockedPopEntrySListÇÔ¼ö¿¡°Ô ½ºÇÉ ¶ôÀ» Á¦°øÇؾ߸¸ ÇÑ´Ù. ÀÌ·¯ÇÑ ÇÔ¼öµéÁßÀÇ ¾î¶² ÇϳªÀÇ Ã³À½È£ÃâÀü¿¡, µå¶óÀ̹ö´Â NdisAllocateSpinLockÇÔ¼ö·Î ½ºÇɶôÀ» ÃʱâÈ­ ÇØ¾ß¸¸ ÇÑ´Ù. µ¥µå¶ôÀ» ¿¹¹æÇϱâÀ§ÇØ, µå¶óÀ̹ö´Â NdisInterlockedPushEntrySListÇÔ¼ö¿Í NdisInterlockedPopEntrySListÇÔ¼öÀÇ ¼øÂ÷ÀûÀΠȣÃâÀ» ¸¸µé¶§ ÀÌ ½ºÇɶôÀ» Àâ°íÀ־´Â ¾ÈµÈ´Ù.

ºñÆäÀÌÁöÈ­µÈ ¸Þ¸ð¸®·ÎºÎÅÍ °íÁ¤µÈ »çÀÌÁîÀÇ POOLÀ» ´Ù·ç±âÀ§ÇØ, S-List´ë½Å ·è¾î»çÀÌµå ¸®½ºÆ®ÀÇ »ç¿ëÀ» °í·ÁÇÑ´Ù.

I/O¿¬»êµéÀ» Àç½ÃµµÇÏ´Â µå¶óÀ̹öµéÀº S-Listº¸´Ù´Â ÀÌÁß ¿¬°á ÀÎÅͶôµÈ Å¥¿Í NdisInterlockedInsert/Remove..ListÇÔ¼ö¸¦ »ç¿ëÇØ¾ß¸¸ÇÑ´Ù.

NdisInitializeSListHeadÇÔ¼öÀÇ È£ÃâÀÚ´Â IRQL <= DISPATCH_LEVEL¿¡¼­ µ¿ÀÛÇØ¾ß¸¸ ÇÑ´Ù.