NDIS 5.1 and Windows XP
ÀÌ ÆäÀÌÁöµéÀº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® À©µµ¿ìÁî XP¿Í À©µµ¿ìÁî .NET ¼¹ö ¿î¿µ üÁ¦µé³»¿¡¼ »õ·Î¿öÁø ³×Æ®¿öÅ© ƯÁ¤ ¾÷µ¥ÀÌÆ®µéÀ» ¿ä¾àÇÑ´Ù.
»õ·Î¿î ¹Ì´ÏÆ÷Æ® ÇÔ¼ö MiniportPnPEventNotify¸¦ ÅëÇØ, ¹Ì´ÏÆ÷Æ®µéÀº
½Ã½ºÅÛ
Àü¿ø ÇÁ·ÎÆÄÀÏ(¹èÅ͸® ȤÀº AC ÆÄ¿ö)³» º¯Èµé°ú ¹Ì´ÏÆ÷Æ®ÀÇ ³×Æ®¿öÅ©
¾î´ð
ÅͰ¡ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ(°©ÀÚ½º·± Á¦°Å) ¿ì¼± ÁÖÁö ¾øÀÌ Á¦°ÅµÉ ¶§
°¨
ÁöµÈ´Ù.
¸ðµç 100Mbps¿Í ´õ ºü¸¥ ³×Æ®¿öÅ© ¾î´ðÅ͵éÀº ¾î¶² Åë°è OIDµéÀ» À§ÇÑ 64ºñ
Æ® Ä«¿îÅ͵éÀ» Á¦°øÇØ¾ß ÇÑ´Ù. ´õ ¸¹Àº Á¤º¸´Â Windows DDK³» "General
Objects and Connection-Oriented Objects"¸¦ ºÁ¶ó.
ÇÁ·ÎÅäÄÝ µå¶óÀ̹öµé°ú ÀÎÅ͹̵ð¾ù µå¶óÀ̹öµéÀº ÆÐŶµé³»¿¡ ÆÐŶ Ãë¼Ò¸¦
¼³
Á¤ÇÒ ¼ö ÀÖ°í ¸¶Å©µÈ ÆÐŶµéÀÇ Áö¿¬ Àü¼ÛÀÇ Ãë¼Ò¸¦ ¿ä±¸ÇÒ ¼ö ÀÖ´Ù. ´õ ¸¹Àº
Á¤º¸¿¡ ´ëÇØ, À©µµ¿ìÁî DDK³» NdisGeneratePartialCancelId,
NDIS_SET_PACKET_CANCEL_ID, NDIS_GET_PACKET_CANCEL_ID,
NdisCancelSendPackets, MiniportCancelSendPackets ¸¦ ºÁ¶ó.
¹Ì´ÏÆ÷Æ®¿Í ÀÎÅ͹̵ð¾ù µå¶óÀ̹öµéÀº °¢°¢ NdisMRegisterMiniport ȤÀº
NdisIMRegisterLayeredMiniport ÇÔ¼ö¸¦ È£ÃâÇÒ ¶§, MiniportShutdown ÇÔ¼ö¸¦
µî·ÏÇØ¾ß ÇÑ´Ù. ±×·¯ÇÑ µå¶óÀ̹öµéÀº MiniportShutdown ÇÔ¼ö¸¦ µî·ÏÇϱâ À§ÇØ
NdisMRegisterAdapterShutdownHandler ÇÔ¼ö¸¦ ´õ ÀÌ»ó È£ÃâÇÒ Çʿ䰡 ¾ø´Ù.
OID_GEN_PHYSICAL_MEDIUMÀÇ Äõ¸®¿¡ ´ëÇÑ ÀÀ´äÀ¸·Î ¹Ì´ÏÆ÷Æ® µå¶óÀ̹ö´Â
NdisPhysicalMediumWirelessLanÀ» ÁöÁ¤ÇÒ ¶§, NDIS´Â À©µµ¿ìÁî XP¸¦ À§ÇÑ
»õ·Î¿î °´Ã¼ÀÎ OID_GEN_MACHINE_NAMEÀ» ¼³Á¤ÇÑ´Ù.
Á÷·ÄÈµÈ ¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµéÀº NdisMInitializeScatterGatherDma ÇÔ¼ö¸¦
Áö
±Ý È£ÃâÇÒ ¼ö ÀÖ´Ù.
°¢ NDIS ÆÐŶÀº Áö±Ý µÎ °³ÀÇ NDIS_PACKET_STACK ±¸Á¶Ã¼µéÀ» Æ÷ÇÔÇÑ´Ù.
NDIS_PACKET_STACK ±¸Á¶Ã¼¿¡ ´ëÇÑ Æ÷ÀÎÅ͸¦ ¾ò±â À§ÇØ
NdisIMGetCurrentPacketStack ÇÔ¼ö¸¦ È£ÃâÇÑ ÈÄ, ÀÎÅ͹̵ð¾ù µå¶óÀ̹ö´Â
ÀÌ
·¯ÇÑ ±¸Á¶Ã¼³» Æ÷ÀÎÅ͵鿡 ÀÇÇØ ÂüÁ¶µÈ À§Ä¡µé¿¡ µå¶óÀ̹ö Á¤ÀÇµÈ Á¤º¸¸¦
Àú
ÀåÇÒ ¼ö ÀÖ°í °Ë»öÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ´É·ÂÀº ÆÐŶÀ» ´Ù½Ã »ç¿ëÇϱâ À§ÇØ
ÀÎÅÍ
¹Ìµð¾ù µå¶óÀ̹ö¸¦ Çã¶ôÇÑ´Ù - Áï, ÆÐŶÀ» ÀÎÅ͹̵ð¾ù µå¶óÀ̹ö°¡ ¿ø·¡
ÆÐŶ
À» º¹»çÇÏ´Â °÷À¸·Î Ãß°¡ÀûÀÎ ÆÐŶÀ» ÇÒ´çÇÏ´Â °Í ¾øÀÌ ±ÙÁ¢ÇÑ µå¶óÀ̹ö¿¡
ÆÐ
ŶÀ» Àü´ÞÇÑ´Ù.
ÀÎÅ͹̵ð¾ù µå¶óÀ̹ö´Â À§¿¡ ÀÖ´Â µå¶óÀ̹ö¿¡ Plug and Play ȤÀº Power
Management À̺¥Æ®ÀÇ ÁÖÁö¸¦ Àü´ÞÇϱâ À§ÇØ ProtocolPnPEvent ÇÔ¼öÀÇ
ÄÁÅØ
½ºÆ®³» NdisIMNotifyPnPEvent ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.
NdisMSetAttributes ÇÔ¼öÀÇ È£ÃâÀÚµéÀº »õ·Î¿î µÎ°³ÀÇ AttibuteFlags¸¦ ¼³Á¤ÇÒ
¼ö ÀÖ´Ù. : NDIS_ATTRIBUTE_SUPPRISE_REMOVE_OK ¿Í
NDIS_ATTRIBUTE_NOT_CO_NDIS
´õ ¸¹Àº Á¤º¸¸¦ À§ÇØ À©µµ¿ìÁî DDK¿¡ ÀÖ´Â NdisGetPoolFromPacket,
NdisQueryPendingIoCount, NdisGetFirstBufferFromPacketSafe,
NdisGetSharedDataAlignment¸¦ ºÁ¶ó.
¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµéÀº ½Ã½ºÅÛ ÀÚ¿øµéÀ» ¿ä±¸Çϱâ À§ÇØ
NdisMQueryAdapterResources ÇÔ¼ö¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.
¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµéÀº ±×µéÀÌ ·¹Áö½ºÆ®¸®¿¡¼ Àд ¸ðµç ۸¦ À§ÇÑ µðÆúÆ®
°ªÀ» °¡Á®¾ß ÇÑ´Ù.
NDIS 5.1 ¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµéÀº ±×µéÀÇ non-safe ¹öÀüµé ´ë½Å¿¡
(NdisBufferVirtualAddressSafe, NdisGetFirstBufferFromPacketSafe,
NdisQueryBufferSafe) ÇÔ¼öµéÀÇ ¾ÈÀü ¹öÀüÀ» È£ÃâÇØ¾ß ÇÑ´Ù.
Remote NDIS´Â USB, IEEE 1394, Bluetooth, InfiniBand¿Í °°Àº µ¿Àû PnP ¹ö½º
µé¿¡ ´ëÇÑ ÀÌ´õ³Ý(802.3) ³×Æ®¿öÅ© ÀåÄ¡µéÀ» À§ÇÑ ¹ö½º µ¶¸³ Ŭ·¡½º »ç¿ëÀÌ´Ù.
Remote NDIS´Â È£½ºÆ® PC¿Í Ãß»óÀûÀÎ Á¦¾î¿Í µ¥ÀÌÅÍ Ã¤³ÎµéÀ» °ÉÃÄ Remote
NDIS ÀåÄ¡ »çÀÌ¿¡ ¹ö½º µ¶¸³ ¸Þ½ÃÁö ÇÁ·ÎÅäÄÝÀ» Á¤ÀÇÇÑ´Ù.
´ÙÀ½ ÇÔ¼öµéÀº NdisMPciAssignResources¿Í ¸ðµç NdisImmediateXxx
ÇÔ¼öµé
Àº À©µµ¿ìÁî XP¿Í ³ªÁß ¹öÀüµé¿¡¼ Áö¿øµÇÁö ¾Ê´Â´Ù.
´ÜÁö NDIS 4.0°ú 5.0 ÇÁ·ÎÅäÄÝ µå¶óÀ̹öµéÀÌ Áö¿øµÈ´Ù. ¸ðµç ÇÁ·ÎÅäÄÝ
µå¶óÀÌ
¹öµéÀº ProtocolBindAdapter¿Í ProtocolUnbindAdapter ÇÔ¼öµéÀ» Á¦°øÇؾß
ÇÑ
´Ù.
|