Tips for Writing NDIS Drivers
Contents:
- NDIS ¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµéÀ» °³¹ßÇϱâÀ§ÇÑ °¡À̵å¶óÀεé
- NDIS µå¶óÀ̹ö ¹®Á¦µé¿¡ ´ëÇÑ Á¦½ÃµÇ´Â ¼Ö·ç¼Çµé
- µå¶óÀ̹ö ÃʱâÈ¿Í ¼º´É¿¡ ´ëÇÑ ÆÁµé
- µå¶óÀ̹ö Verifier·Î ³×Æ®¿öÅ© ¾î´ðÅ͸¦ Å×½ºÆ®ÇÏ´Â ¹ý
MS ³×Æ®¿öÅ· ÆÀÀÌ ÃÖ±Ù¿¡ ¿¬±¸Çß´ø ÇÑ ºÐ¾ß´Â ³×Æ®¿öÅ© µå¶óÀ̹öµé¿¡ ´ëÇØ¼, ƯÈ÷ NDIS ¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµé¿¡ ´ëÇÑ µå¶óÀ̹ö ÃʱâÈ ½Ã°£À̾ú´Ù. µå¶óÀ̹ö ÃʱâÈ ½Ã°£Àº ½Ã½ºÅÛÀÌ ½ÃÀÛÇϰųª ±ú¾î³¯ ¶§ Áß¿äÇÑ ¿µÇâÀ» ÁÙ ¼ö ÀÖ°í ½Ã½ºÅÛÀÌ ¾ó¸¶³ª ºü¸¥ÁöÀÇ ¿£µå À¯Àú »ç¿ëÀÚ °æÇè¿¡ ¿µÇâÀ» ÁØ´Ù. MS Å×½ºÅ͵éÀº ¸¹Àº °æ¿ì¿¡ ÃʱâÈ ½Ã°£Àº NDIS ¹Ì´ÏÆ÷Æ® µå¶óÀ̹öµéÀ» ÃÖÀûÈ ÇϹǷμ ¸î Ãʰ£Àº °¨¼Ò ½Ãų ¼ö À־ƴ °ÍÀº ¹ß°ßÇß´Ù.
µå¶óÀ̹ö ÃʱâÈ. µå¶óÀ̹ö ÃʱâÈ¿¡¼ ¼ÒºñµÇ´Â ½Ã°£Àº À©µµ¿ìÁî 2000ÀÌ ºÎÆ®½Ã °É¸®´Â ½Ã°£¿¡ Áß¿äÇÑ ¿µÇâÀ» ÁÙ ¼ö ÀÖ´Ù. ÀÌ ½Ã°£Àº °¨¼Ò½ÃŰ´Â °ÍÀº ¼½ºÆÒµåµÇ°í ´Ù½Ã ÀúÀåÇÏ´Â µ¥½ºÅ©Å¾ ½Ã½ºÅÛµéÀº ¹°·ÐÀÌ°í ³×Æ®¿öÅ©¿¡ ¿¬°áµÇÁö ¾ÊÀº ·¦Å¾µé¿¡ ´ëÇØ¼ ¸Å¿ì Áß¿äÇÏ´Ù.
µå¶óÀ̹ö Ãʱâȸ¦ ÃÖÀûÈÇÏ´Â ¹ý:
- Ç×»ó óÀ½¿¡ ¹Ìµð¾î ¹ß°ßÀ» ¼öÇàÇØ¶ó. ³×Æ®¿öÅ© ÄÉÀ̺íÀÌ Á¸ÀçÇÏÁö ¾Ê´Ù´Â ¾Ë ¼ö ÀÖ´Ù¸é, ±×¶§ ¸µÅ© ¼Óµµ ¹ß°ßÀ» »ý·«Çضó.
- ¸¸¾à ¹Ìµð¾î°¡ ¿¬°áµÇ¾ú´Ù¸é ¸µÅ© ¼Óµµ ¹ß°ßÀ» ½Ã°£ ·çƾÀ¸·Î Áö¿¬½ÃÄѶó. ³×Æ®¿öÅ© ½ºÅÃÀÇ ³ª¸ÓÁö´Â ÈÄ¿¡ ¹ß»ýÇϰí ÈÄ¿¡ µ¥ÀÌÅͰ¡ ÇÊ¿äÇÏ´Ù. Á¤º¸´Â ÀÌ¿ëµÇ¾î¾ß ÇÑ´Ù. ÀÌ Á¤º¸ÀÇ Áö½ÄÀº OID_GEN_MEDIA_SPEED Äõ¸®°¡ µµÂøÇÒ ¶§±îÁö ¿ä±¸µÇÁö ¾Ê´Â´Ù.
µå¶óÀ̹ö ¼Ë´Ù¿î. µå¶óÀ̹ö°¡ ¼Ë´Ù¿îÀÌ ¿ä±¸µÉ ¶§, À¯ÈÞ »óÅ·ΠÇϵå¿þ¾î¸¦ ¼ÂÆÃÇÏ´Â °ÍÀ» Á¦¿ÜÇÏ°í ¾Æ¹«Àϵµ ÇØ¼± ¾ÈµÈ´Ù.
Driver Halt. ¼Ë´Ù¿î¿¡ ó¸®ÇÏ´Â °Í¿¡ Ãß°¡Çؼ, Halt ·çƾÀº ¸ðµç ÀÚ¿øµéÀ» ÇØÁ¦ÇؾßÇÑ´Ù.:
µå¶óÀ̹ö ¼ºñ½º ·çƾ(ISR)ÀÌ È£ÃâµÉ ¶§, ÀÎÅÍ·´Æ®°¡ Çϵå¿þ¾î »óÅ·κÎÅÍ ³ÊÀǰÍÀÎÁö ¾Æ´ÑÁö¸¦ °áÁ¤Çضó. ¸¸¾à ±×°ÍÀÌ ÀÖ´Ù¸é, Áö¿¬µÈ ÇÁ·Î½ÃÁ® ÄÝ(DPC)°¡ Å¥µÇ°í ÀÎÅÍ·´Æ®°¡ µð½º¿¡À̺íµÇ´Â °ÍÀ» ¿ä±¸Çضó. DPC°¡ ¿Ï·áµÉ ¶§ ÀÎÅÍ·´Æ®¸¦ ´Ù½Ã Àο¡À̺íÇØ¶ó.
µå¶óÀ̹ö°¡ Çϵå¿þ¾î¸¦ ´Ù·ê Áغñ°¡ µÉ ¶§±îÁö Çϵå¿þ¾î°¡ ÀÎÅÍ·´Æ®¸¦ »ó½Â½ÃŰÁö ¾ÊÀ» °ÍÀ̶ó´Â °ÍÀ» È®½ÇÈ÷ ÇØ¶ó. Áï, NdisMRegisterInterrupt() °¡ ¿Ï·áµÈ ÈÄ¿¡.
General Guidelines for Writing NDIS Miniport Drivers

¹Ì´ÏÆ÷Æ® µå¶óÀ̹ö´Â NDIS ¶óÀ̺귯¸®¸¸À» È£ÃâÇØ¾ÆÇÑ´Ù. ¿î¿µÃ¼Á¦-½ºÆå ÄÁ¤© È£ÃâµéÀÇ »ç¿ëÀ» ÇÇÇÏ´Â °ÍÀº À©µµ¿ì Ç÷§Æûµé»çÀÌ¿¡¼ ÄÚµåÀÇ Æ÷Åͺô·¯Æ¼¸¦ Áõ°¡ÇÑ´Ù. ¶ÇÇÑ, À©µµ¿ìÁî 98°ú À©µµ¿ìÁî 2000»çÀÌ¿¡¼ ¹ÙÀ̳ʸ® ȣȯÇÏ´Â NDIS ¹Ì´ÏÆ÷Æ® µå¶óÀ̹ö¸¦ ¸¸µé±â À§Çؼ, BINARY_COMPATIBLE Ç÷¡±×´Â »ç¿ëµÇ¾î¾ß ÇÑ´Ù. ¸¸¾à, NDIS ¶óÀ̺귯¸® ¿ÜÀÇ È£ÃâÀ» ÇØ¾ß ÇÑ´Ù¸é, Wdm.h ÆÄÀϾȿ¡ ¾È¿¡ Á¤ÀÇµÈ È£Ã⸸À» »ç¿ëÇØ¶ó. ±×°ÍÀº Windows 98 DDK °ú Windows 2000 DDK¿¡¼ ãÀ» ¼ö ÀÖ´Ù.
Important: : µå¶óÀ̹öµéÀÇ °³¹ßÀº ´õ ÀÌ»ó DDKµé¿¡¼ ¹®¼ÈµÇÁö ¾Ê°Å³ª Áö¿øµÇÁö ¾Ê´Â´Ù. Full MAC µå¶óÀ̹öµé¿¡ ´ëÇÑ Áö¿øÀº À©µµ¿ì ½Ã½ºÅÛÀÇ ¹Ì·¡ ¹ßÇ¥¿¡¼ Á¦°ÅµÉ °ÍÀÌ´Ù.
Recommended Solutions for NDIS Driver Problems

Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾î º¥´õµéÀº ÇÁ·Î¼¼½ºµéÀ» Å×½ºÆ® ÇÏ´Â µ¿¾È ¹Ýº¹µÇ´Â °°Àº ¹®Á¦µéÀ» ÇÇÇϱâ À§Çؼ ¿©±â Á¤º¸¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
Problem: NDIS Driver Timers Fail during Driver Unload. µå¶óÀ̹öµéÀº MiniportHalt ·çƾÀÇ È£ÃâÀ» ÅëÇØ¼ À©µµ¿ì 2000¿¡¼ ¿©·¯ ¹ø ·Îµå µÇ°í ¾ð·Îµå µÉ ¼ö ÀÖ´Ù. µå¶óÀ̹ö¸¦ ¾ð·Îµå Çϱâ À§¿¡ ÇÊ¿äµÇ´Â ¸ðµç ¿¬»êµéÀº ÀÌ ·çƾÀÌ È£ÃâµÉ ¶§ ¸Þ¸ð¸®¸¦ ÇØÁ¦Çϰí ÀÎÅÍ·´Æ®µé°ú ¼Ë´Ù¿î Çڵ鷯ÀÇ µî·ÏÀ» ÇØÁ¦Çϰí ŸÀ̸ӵéÀ» Ãë¼ÒÇÏ´Â °ÍÀ» ¿Ï·áÇØ¾ßÇÑ´Ù. ŸÀÌ¸Ó µéÀº NdisMCancelTimer È£Ãâ·Î Ãë¼ÒµÈ´Ù.; ±×·¯³ª, ¾î¶² °æ¿ì¿¡´Â, NdisMCancelTimer È£ÃâÀÌ ½ÇÆÐÇÒ ¼öµµ ÀÖ´Ù.
¸¸¾à NdisMCancelTimer °¡ ½ÇÆÐÇÑ´Ù¸é, ±×°ÍÀº ŸÀ̸Ӱ¡ ÀÌ¹Ì ÆÄ±â µÇ¾ú´Ù´Â °ÍÀ» ÀǹÌÈù´Ù. ¸¸¾à ŸÀ̸Ӱ¡ ÆÄ±âµÇ¾ú´Ù¸é, µå¶óÀ̹ö´Â ŸÀÌ¸Ó ·çƾÀÌ È£ÃâµÇ°í ¿Ï·áµÉ ¶§±îÁö ¾ð·ÎµåÇÒ ¼ö ¾ø´Ù. ´ÙÀ½ÀÇ ¿É¼ÇµéÀº ÀÌ ¹®Á¦¸¦ ÇÇÇϴµ¥ µµ¿òÀ» ÁØ´Ù.:
- ŸÀ̸ӿ¡ ´ëÇØ¼ ÂüÁ¶ Ä«¿îÅ͸¦ À¯ÁöÇÑ´Ù.
- NdisMCancelTimer È£ÃâÀÌ ½ÇÆÐÇÏ´Â °æ¿ì¿¡ ŸÀÌ¸Ó ÇÔ¼ö°¡ À̺¥Æ®¸¦ Æ®¸®°ÅÇØ¶ó.; MiniportHalt Çڵ鷯´Â ±× À̺¥Æ®¿¡¼ ºí·ÏÀ¸·Î ¼ÂµÉ ¼ö ÀÖ´Ù.
- ŸÀÌ¸Ó ÇÔ¼ö´Â µå¶óÀ̹ö°¡ haltÇϰí ÀÖ°í ¶Ç ´Ù¸¥ ŸÀ̸Ӱ¡ Å¥ÇÏÁö ¾Ê´Â °ÍÀ» ¹ß°ßÇØ¾ßÇÏ´Â °ÍÀ» º¸ÁõÇØ¶ó.
¹Ì´ÏÆ÷Æ®ÀÇ ¼Ë´Ù¿î Çڵ鷯´Â ÀÎÅÍ·´Æ®µéÀ» »ý¼ºÇÏ´Â °Í, DMA Àü¼Û µîÀ» ¸ØÃç¾ß ÇÑ´Ù. ŸÀ̸ӵéÀ» Ãë¼ÒÇØ¾ß Çϰųª ÀÚ¿øµéÀ» de-allocateÇØ¾ßÇÑ´Ù.
Problem: NDIS Driver Doesn't Start during Initialization. ¸ðµç PCI Ä«µå µå¶óÀ̹öµéÀº Dma32BitAddresses ÀÎÀÚÀ» TRUE·Î ¼ÂÇØ¾ßÇÑ´Ù. ÀÌ Ç÷¡±×¸¦ FALSE·Î ¼ÂÆÃÇÏ´Â À¯ÀÏÇÑ °æ¿ì´Â Ä«µå°¡ 16MB ÀÌ»ó¿¡ ¸Þ¸ð¸®¸¦ ÁÖ¼ÒÈÇÒ ¼ö ¾øÀ» ¶§ÀÌ´Ù. ÀÌ Ç÷¡±×°¡ FALSE·Î ¼ÂµÇ¸é, µå¶óÀ̹ö´Â 16MB ¹ØÀÇ ¸Þ¸ð¸®°¡ ºÒÃæºÐÇÑ ÀÚ¿øÀÏ ¼ö ÀÖ´Â °Í °°Àº ÃʱâÈ µ¿¾È ½ÃÀÛÇÏÁö ¾Ê´Â´Ù. À̰ÍÀº ¶ÇÇÑ ÆÄ¿ö °ü¸®µÇÁö ¾Ê´Â Ä«µåµé¿¡ ¹®Á¦µéÀ» ÀÏÀ¸Å³ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì¿¡, µå¶óÀ̹öµéÀº ¼½ºÆÒµå½Ã haltµÇ°í ´Ù½Ã ½ÃÀ۽à ´Ù½Ã ÃʱâȵȴÙ. Ãß°¡ÀûÀ¸·Î, ³×Æ®¿öÅ© ¾î´ðÅÍ´Â ´Ù½Ã ½ÃÀ۽à ÃʱâÈÇÏ´Â °ÍÀÌ ½ÇÆÐ µÉ ¼ö ÀÖ´Ù.
À©µµ¿ì 2000 DDK¿¡¼ NE3200 »ùÇà µå¶óÀ̹ö´Â 16MB¸¦ ÃʰúÇÏ´Â ¹°¸® ¸Þ¸ð¸®¸¦ ÁÖ¼ÒÈÇÒ ¼ö ¾ø´Â PCI Ä«µå¿¡ ´ëÇÑ °ÍÀÌ´Ù.DMA Àü¼Ûµé¿¡ ´ëÇÑ ÀÚ¿øµéÀ» ÇÒ´çÇÒ ¶§, ÀÌ »ùÇà µå¶óÀ̹ö´Â Dma32BitAddresses À» FALSE ·Î NdisMAllocateMapRegistersÀ» È£ÃâÇÑ´Ù.
Tips for Driver Initialization and Performance

µå¶óÀ̹ö ÃʱâÈ, º¸³»±â ¿ä±¸µé°ú ¹öÆÛ ÇÒ´ç¿¡ ´ëÇØ¼ ÀÌ ÆÁµéÀ» µû¸£¶ó.
NDIS Driver Initialization Routine Process. ¹Ì´ÏÆ÷Æ® µå¶óÀ̹ö´Â ÅõƾÀ» ÃʱâÈÇÑ ÈÄ¿¡ NdisMIndicateStatusÀ» È£ÃâÇØ¾ß¸¸ ÇÑ´Ù. NDIS ¹Ì´ÏÆ÷Æ®ÀÇ MiniportInitialize ·çƾÀÌ ¿Ï·áµÉ ¶§±îÁö, NDIS´Â µå¶óÀ̹öµé·ÎºÎÅÍ »óÅ Áö½ÃµéÀ» ¼ö½ÅÇϰí ó¸®ÇÒ Áغñ°¡ µÇ¾îÀÖÁö ¾Ê´Ù.
NDIS Drivers Must Not Complete Requests at Device IRQL. . ¹Ì´ÏÆ÷Æ®µéÀº NdisMSendComplete¸¦ È£ÃâÇϹǷμ º¸³»±â ¿ä±¸¸¦ ¿Ï·áÇÑ´Ù. À̰ÍÀº ÀåÄ¡ ÀÎÅÍ·´Æ® ¿ä±¸ ·¹º§(DIRQL)¿¡¼ ÇàÇØÁú ¼ö ¾ø´Ù. ¾î¶² µå¶óÀ̹öµéÀº NdisMSynchronizeWithInterruptÀ» ÅëÇØ È£ÃâµÈ ÇÔ¼ö¿¡¼ º¸³»±â ¿ä±¸µéÀº ¿Ã¹Ù¸£Áö ¾Ê°Ô ¿Ï·áÇÑ´Ù. ÀÌ·¸°Ô ÇÏ´Â °ÍÀº È£ÃâµÈ ÇÔ¼ö°¡ DIRQL¿¡¼ ½ÇÇàÇϱ⠶§¹®ÀÌ´Ù. º¸³»±âµéÀº ÀÌ IRQL¿¡¼ ¿Ï·áµÇ¼± ¾ÈµÈ´Ù.(ÀÌ ±â»çÀÇ °¡Àå À̸¥ ¹öÀüÀÌ À߸øµÇ°Ô ½ÃÀÛÇß´Ù´Â °ÍÀ» ÁÖ¸ñÇØ¶ó.; ÀÌ ±ÛÀº ¹Ù¸¥ Á¤º¸¸¦ ¼³¸íÇÑ´Ù.)
Reduce Free Buffers for Drivers to Increase System Performance. ¸Þ¸ð¸®´Â °¡´ÉÇÑ ÇÊ¿äµÉ ¶§ µ¿ÀûÀ¸·Î ÇÒ´çµÇ¾î¾ßÇÑ´Ù. Å« ¸Þ¸ð¸®°¡ µå¶óÀ̹ö »ç¿ë¿¡¼ ÇÒ´çµÉ ¶§, ½Ã½ºÅÛ ¼º´ÉÀº ÀúÇÏÇÒ ¼ö ÀÖ´Ù. ÀûÀº ¸Þ¸ð¸® ȯ°á¿¡¼ Å« ¸Þ¸ð¸®ÀÇ ¼Òºñ´Â ¶ÇÇÑ ½Ã½ºÅÛ ¼º´É¿¡ ¿µÇâÀ» ÁÙ ¼ö ÀÖ´Ù.
ÀϹÝÀûÀ¸·Î ¹öÆÛµéÀÇ Ã³À½ ¼ö´Â 32¿¡¼ 64À̰í 32¿¡¼ Áõ°¡µÇ¾î¾ßÇÑ´Ù. Çã¿ëµÈ ¹öÆÛ ¼ö´Â 256ÀÌ´Ù.
³×Æ®¿öÅ© ¾î´ðÅÍ µå¶óÀ̹ö°¡ Ç×»ó ¼ö½ÅµÈ ÆÐŶµéÀ» ¼ÒÀ¯ÇÏ´Â NDIS 3.0 ¸ðµ¨ µå¶óÀ̹ö¿¡¼, °íÁ¤µÈ ¹öÆÛ ¼ö´Â(¹êµåÀ§µå¿¡ ¸Â°Ô) ÇÊ¿äµÇ´Â ¸ðµç °ÍÀÌ´Ù. 100 Mb/s ½Ã½ºÅÛ¿¡ ´ëÇØ¼, 32¿¡¼ 64 ¹öÆÛ´Â ÃæºÐÇÏ´Ù. ±â°¡ºñÆ® ÀÌ´õ³Ý¿¡ ´ëÇØ¼, ¹öÆÛ ¼ö´Â 100 Mb/s ½Ã½ºÅÛÀÇ µÎ¹èÀÏ ¼ö ÀÖ´Ù.
¼ö½Å ÆÐŶ ¸ðµ¨À» »ç¿ëÇÏ´Â µå¶óÀÔ¿¡¼, ³×Æ®¿öÅ© ¾î´ðÅÍ´Â ¼ö½Å ¹öÆÛÀÇ Á¦¾î¸¦ ³×Æ®¿öÅ© ½ºÅÿ¡°Ô ¾çµµÇÑ´Ù. ±×¶§ ³×Æ®¿öÅ© ¾î´ðÅÍ µå¶óÀ̹ö´Â ÀÌ Ç®À» °ü¸®ÇϱâÀ§Çؼ ¿ä±¸µÈ´Ù. À̰ÍÀ» ÇàÇÏ´Â ½ÇÁ¦ ¹æ¹ýÀº ´ÙÀ½°ú °°´Ù.
- 1. ÇÊ¿äÇÑ °¡Àå ÀûÀº ¹öÆÛ ¼ö¸¦ °áÁ¤Çضó. ÀÌ ¼ö°¡ µµÂøµÉ ¶§, ¸ðµç ¼ö½Å Áö½ÃµéÀº ÆÐŶ¿¡¼ÀÇ »óŸ¦ NDIS_STATUS_RESOURCES·Î ¼ÂÆÃÇϹǷμ ÀÌ ¹öÆÛµéÀÇ ¼ÒÀ¯±ÇÀÌ ³×Æ®¿öÅ© ¾î´ðÅÍ µå¶óÀ̹ö¿¡ À¯ÁöµÇ°Ô ÇϱâÀ§Çؼ ¸¶Å©µÈ´Ù.
- 2. ÇÊ¿äÇÑ °¡Àå Å« ¹öÆÛ ¼ö¸¦ °áÁ¤Çضó. µå¶óÀÌ´Â ÀÌ Á¦ÇÑ¿ÜÀÇ Ç®À» ´Ã·Á¼± ¾ÈµÈ´Ù. ÀÌ Á¦ÇÑÀº ¹Ù»Û ¼¹ö°¡ ¸¹Àº ÀÌ¿ëÇÒ ¼ö ÀÕ´Â ¸Þ¸ð¸®¸¦ ÀÌ¿ëÇÏÁö ¸øÇÏ°Ô ÇÏ´Â °ÍÀ» º¸ÁõÇÑ´Ù.
- 3. ¸¸¾à ÀÚÀ¯·Î¿î ¹öÆÛÀÇ ¼ö°¡ ÇÊ¿äÇÑ °¡Àå ÀûÀº ¼öÀÇ ¹öÆÛÀ̰í Àüü ¹öÆÛ ¼ö°¡ ÇÊ¿äÇÑ °¡Àå Å« ¹öÆÛ ¼öº¸´Ü Àû´Ù¸é, ±×¶§ ¹öÆÛ ¼ö¸¦ ´Ã¸®±âÀ§Çؼ ºñµ¿±â ÇÒ´çÀ» ÇÑ´Ù. ÇÒ´çÀÌ ¿Ï·áµÉ ¶§±îÁö ÆÐŶµéÀ» NDIS_STATUS_RESOURCES·Î Áö½ÃÇØ¶ó.
- 4. ¸¸¾à ÀÚÀ¯·Î¿î ¹öÆÛµéÀÇ ¼ö°¡ ÇÊ¿äÇÑ °¡Àå ÀûÀº ¼ö·Î µðÀÚÀÎµÈ °Íº¸´Ù Å©°í duration ½Ã°£¿¡ ´ëÇØ¼ °Å±â¿¡ ¸Ó¹°·¯ÀÖ´Ù¸é, °è¼Ó Ãß°¡ÀûÀÎ ¹öÆÛµéÀ» ÀÚÀ¯·Ó°Ô ÇØ¶ó.
Testing Network Adapter Drivers with Driver Verifier

µå¶óÀ̹ö ¼º´ÉÀ» º¸ÁõÇϱâÀ§Çؼ, À©µµ¿ì Å×½ºÅÍ ÆÀµéÀº µå¶óÀ̹ö VerifierÀÇ »ç¿ëÀ» Æ÷ÇÔÇϱâÀ§Çؼ ÇàÇÏ´Â Å×½ºÆÃÀ» È®ÀåÇß´Ù. µå¶óÀ̹öµéÀº À©µµ¿ì 2000¿¡ Æ÷ÇÔµµ±âÀ§Çؼ ÀÌ Å×½ºÆÃÀ» Åë°úÇÏ´Â °ÍÀÌ ¿ä±¸µÈ´Ù. ±×¸®°í Å×½ºÆ® ÅøµéÀº ÀÌ Åø·Îµé·Î Å×½ºÆ®µÉ ¸ðµç ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽º Ä«µå(NIC) µå¶óÀ̹öµé¿¡ ´ëÇØ¼ ·¹º§ 3¿¡¼ µå¶óÀ̹ö verificationÀ» ÀÚµ¿ÀûÀ¸·Î turn onÇϱâÀ§Çؼ ¼öÁ¤µÇ°í ÀÖ´Ù. µå¶óÀ̹ö Verifier´Â http://www.microsoft.com/hwdev/driver/driververify.htm.¿¡ ¹®¼ÈµÇ¾îÀÖ´Ù.
µå¶óÀ̹ö Verifier´Â ´ÙÀ½À» Å×½ºÆ®ÇÑ´Ù.
- Ưº°ÇÑ Ç®ÀÇ »ç¿ëÀ¸·Î ¿À¹ö·±À̳ª ¾ð´õ·±ÇÏ´Â ¹öÆÛ¸¦ ã´Â´Ù.
- IRQLÀÌ DISPATCH_LEVEL·Î »ó½ÂÇÒ ¶§ ÆäÀÌÁöµÈ ¸Þ¸ð¸®¸¦ ¾ð¸ÊÇÑ´Ù.
- Read-only ¸Þ¸ð¸® º¸È£¸¦ °¿äÇÑ´Ù.
³ôÀº ¼º´ÉÀÇ µå¶óÀ̹öµéÀÇ »ý¼ºÀ» º¸ÁõÇϱâÀ§ÇÑ °¡Àå ÁÁÀº ¹æ¹ýµéÀÇ Çϳª´Â µ¥½ºÆ®¿¡ ´ëÇØ¼ ³ÊÀÇ µå¶óÀ̹ö¸¦ MS¿¡ Á¦¾ÈÇϱâÀü¿¡ µå¶óÀ̹ö Verifier¸¦ ½ÇÇàÇÏ´Â °ÍÀÌ´Ù. µå¶óÀ̹ö Verifier´Â Á¦¾ÈÀü¿¡ ndis Å×½ºÆ®µéÀÇ Àüü ½´Æ®¸¦ ÅëÇØ¼ ·¹º§ 3¿¡¼ ½ÇÇàµÇ¾î¾ßÇÑ´Ù.
À©µµ¿ì Á¦Ç°¿¡ Æ÷ÇÔ¿¡ ´ëÇØ¼ Á¦¾ÈµÈ ¸ðµç µå¶óÀ̹öµéÀº À©µµ¿ì ³×Æ®¿öÅ· ÆÀ¿¡ÀÇÇØ¼ ³Ð°Ô Å×½ºÆ®µÈ´Ù. ÀÌ Å×½ºÆÃÀ» Åë°úÇÑ µå¶óÀ̹öµéÀº ¿î¿µÃ¼Á¦ÀÇ ÇöÀç ºôµåµé°ú ÇÔ²² ÁøÇàÁßÀÎ ±âº»¿¡ ÀÔÁõµÈ´Ù. ÀÌ µå¶óÀ̹öµéÀ» ÀÔÁõÇϴµ¥ »ç¿ëµÈ Å×½ºÆ®µé°ú ÅøµéÀÇ ¼ºê¼ÂÀº ¶ÇÇÑ Çϵå¿þ¾î¿¡ ´ëÇÑ À©µµ¿ì ·Î°í¿¡¼ ¿ä±¸µÇ´Â Microsoft Windows Hardware Compatibility Tests (HCTs)ÀÇ ÀϺκÐÀÌ´Ù.
Call to action for NDIS 5.0 driver writers:
- ³×Æ®¿öÅ© µå¶óÀ̹öµé¿¡¼ ÃʱâÈ ½Ã°£À» °¨¼Ò½ÃŰ´Â °Í¿¡ ´ëÇÑ ±âȸ¸¦ Æò°¡Çضó.
- Å×½ºÆÃÀ» Á¦¾ÈÇϱâÀü¿¡ µå¶óÀ̹ö VerifierÀ» »ç¿ëÇØ¼ ³ÊÀÇ µå¶óÀ̹ö¸¦ Å×½ºÆ®Çضó.
- NDIS µå¶óÀ̹ö Å×½ºÆÃ °á°úµéÀ» °³¼±ÇϱâÀ§Çؼ ¿©±â ÀÖ´Â ÆÁµéÀ» »ç¿ëÇØ¶ó.
- µå¶óÀ̹ö Verifier¿¡ ´ëÇÑ ´õ ¸¹Àº Á¤º¸¿¡ ´ëÇØ¼´Â, http://www.microsoft.com/hwdev/driver/driververify.htm. ¿¡¼ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ±â»ç¸¦ º¸¾Æ¶ó.
- µå¶óÀ̹ö ÀνºÅç À̽´ÀÎ INF ÆÄÀϵé°ú Æ÷¸Ë¿¡ ´ëÇÑ ´õ ¸¹Àº Á¤º¸¿¡ ´ëÇØ¼, http://www.microsoft.com/hwdev/devdes/netinf.htm.¿¡¼ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â "Network INF Format for Windows 2000 and Windows 98," ±â»ç¸¦ º¸¾Æ¶ó.
- ³×Æ®¿öÅ© ¾î´ðÅ͵鿡 ´ëÇÑ NDIS 5.0 Áö¿ø¿¡ °ü°èµÈ °¡À̵å¶óÀο¡ ´ëÇØ¼´Â, À©µµ¿ì 2000 DKKÀ» º¸°í ¶ÇÇÑ http://www.microsoft.com/hwdev/network/.¸¦ º¸¾Æ¶ó.
- ¸¸¾à ³Ê°¡ ÀÌ ±â»ç¿¡ ´ëÇÑ À̽´¿¡ ´ëÇØ¼ ±â¼ú Áú¹®µéÀ» °¡Áø´Ù¸é, ¸ÞÀÏÀÇ ¼ºêÁ§Æ® ¶óÀο¡ Driver initialization time·Î ndisfb@microsoft.com·Î º¸³»¶ó. À̸§, ŸÀÌÆ², ȸ»ç À̸§, ÀüȹøÈ£, ÆÑ½º¹øÈ£ ¸¦ Æ÷ÇÔÇØ¶ó.
|