2. PnP °¡ ÇÏ´Â ÀÏ : "¹ö½º¸®¼Ò½º(Bus-Resources)" ÀÇ ÇÒ´ç

2.1. Ç÷¯±× ¾Øµå Ç÷¹ÀÌ(PnP, Plug-and-Play)¶õ ¹«¾ùÀΰ¡?

ÀÌ ÀýÀÇ ³»¿ëÀ» ÀÌÇØÇÏÁö ¸øÇÏ°Ú´Ù¸é ´ÙÀ½ Àý 2.2Àý À» º¸¶ó.

¾ÆÁÖ °£·«È÷ ¸»ÇÑ´Ù¸é, PnP ´Â ¼ÒÇÁÆ®¿þ¾î(µð¹ÙÀ̽º µå¶óÀ̹öµé)¿¡°Ô ¾îµð¿¡¼­ ¸ðµ©, ³×Æ®¿öÅ© Ä«µå, »ç¿îµå Ä«µåµîÀÇ °¢Á¾ Çϵå¿þ¾î(µð¹ÙÀ̽º)¸¦ ã¾Æ¾ß ÇÏ´ÂÁö¸¦ ÀÚµ¿À¸·Î ¾Ë·ÁÁÖ´Â °ÍÀÌ´Ù(¿ªÁÖ: PnP ¸¦ ¾²Áö ¾Ê´Â´Ù¸é »ç¿ëÀÚ°¡ ÀÏÀÏÀÌ ÁöÁ¤ÇØ ÁÖ¾î¾ß¸¸ ÇÑ´Ù). PnP ÀÇ ÀÓ¹«´Â ¹°¸®Àû ÀåÄ¡(µð¹ÙÀ̽º)¿Í ±×¸¦ Á¶ÀÛÇÏ´Â ¼ÒÇÁÆ®¿þ¾î(µð¹ÙÀ̽º µå¶óÀ̹ö)¸¦ ¼­·Î ÀÏÄ¡½Ã۰í, °¢ µð¹ÙÀ̽º¿Í ±× µå¶óÀ̹ö »çÀÌ¿¡ Åë½Åä³ÎµéÀ» ¸¸µå´Â °ÍÀÌ´Ù. À̸¦ ½ÇÇöÇϱâ À§Çؼ­ PnP´Â ´ÙÀ½ÀÇ "¹ö½º¸®¼Ò½º(bus-resources)" ¶ó´Â °ÍÀ» µå¶óÀ̹ö¿Í Çϵå¿þ¾îÀÇ ¾çÂÊ¿¡ ÇÒ´çÇÑ´Ù: I/O ¾îµå·¹½º, IRQ, DMA ä³Î(ISA ¹ö½ºÀÇ °æ¿ì¸¸ ÇØ´ç), ¸Þ¸ð¸® ¿µ¿ª. ÀÌ 4 °¡Áö¸¦ ÀÏÂ÷Àû ¸®¼Ò½º¶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ÀÌ 4 °³ÀÇ ¹ö½º¸®¼Ò½ºµéÀÌ ¹ºÁö Àß ¸ð¸£°Ú´Ù¸é µÚ¿¡ ³ª¿Ã I/O ¾îµå·¹½º, IRQ, DMA ä³Î, ¸Þ¸ð¸® ¿µ¿ªÀÇ ÀýÀ» Àо¶ó. ¶Ç ÀÌ ¹ö½º¸®¼Ò½ºµé Áß 3 °¡Áö¿¡ °üÇÑ Linux Gazette ÀÇ ±â»ç°¡ Introduction to IRQs, DMAs and Base Addresses ¿¡ ÀÖ´Ù. ÀÏ´Ü ÀÌ ¹ö½º¸®¼Ò½ºµéÀÌ ÇÒ´çµÇ¸é (±×¸®°í ¿Ã¹Ù¸¥ µå¶óÀ̹ö°¡ ¼³Ä¡µÇ¸é), /dev µð·ºÅ丮¿¡ ÀÖ´Â µð¹ÙÀ̽º¿ë "ÆÄÀÏ"µéÀ» »ç¿ëÇÒ ¼ö ÀÖ°Ô µÈ´Ù.

ÀÌ·¸°Ô PnP °¡ ¹ö½º¸®¼Ò½ºµéÀ» ÇÒ´çÇÏ´Â °ÍÀ» "¼³Á¤(configuring)" ÇÑ´Ù¶ó°í ¸»Çϱ⵵ ÇÏÁö¸¸, ½Ã½Ç ÀÌ PnP ¼³Á¤À̶ó´Â °ÍÀº Àú¼öÁØ ¼³Á¤¿¡ ÇØ´çÇÒ »ÓÀÌ´Ù. /etc µð·ºÅ丮 ¹Ø¿¡´Â ¸¹Àº ¼³Á¤ È­ÀϵéÀÌ ÀÖ´Ù. ±× ³»¿ëµéÀÇ ´ëºÎºÐÀº PnP ¼³Á¤ÀÌ ¾Æ´Ï´Ù. Çϵå¿þ¾î µð¹ÙÀ̽ºµéÀ» ¼³Á¤ÇÏ´Â ÀÛ¾÷ÀÇ »ó´çºÎºÐÀº PnP ¿Í´Â ¹«°üÇÏ´Ù. PnP ¼³Á¤Àº Àüü ¼³Á¤ÀÛ¾÷ÀÇ ÀϺÎÀÏ »ÓÀÎ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î, "ÃʱâÈ­ ¹®ÀÚ¿­(init string)"À» º¸³» ¸ðµ©À» ÃʱâÈ­½ÃŰ°Å³ª ¸ðµ© ¼Óµµ¸¦ ¼³Á¤ÇÏ´Â ÀÛ¾÷Àº ¼³Á¤ÀÛ¾÷À̱ä ÇØµµ PnP ¼³Á¤ÀÛ¾÷Àº ¾Æ´Ñ °ÍÀÌ´Ù. µû¶ó¼­, ¾ÕÀ¸·Î PnP ¹®Á¦¸¦ ³íÇÒ ¶§ÀÇ "¼³Á¤(configure)" À̶ó´Â ¿ë¾î´Â ¾î¶² ƯÁ¤ÇÑ Á¾·ùÀÇ ¼³Á¤ÀÛ¾÷¸¸À» ¶æÇϱâ·Î ÇÑ´Ù. ´Ù¸¥ ¹®¼­(¿¹¸¦ µé¸é MS À©µµ¿ìÁî¿ëÀÇ ¹®¼­µî)¿¡¼­´Â ¹ö½º ¸®¼Ò½º¸¦ "¸®¼Ò½º(resources)" ¶ó°í ¸»Çϱ⵵ ÇÏÁö¸¸, ÀÌ ¹®¼­¿¡¼­´Â ´Ù¸¥ Á¾·ùÀÇ ¸¹Àº ¸®¼Ò½ºµé°ú ±¸º°Çϱâ À§Çؼ­ "¹ö½º ¸®¼Ò½º" ¶ó´Â ¿ë¾î¸¦ »ç¿ëÇϱâ·Î ÇÑ´Ù.

2.2. ÄÄÇ»ÅÍ¿Í µð¹ÙÀ̽º´Â ¼­·Î¸¦ ¾î¶»°Ô ã¾Æ³»´Â°¡?

ÄÄÇ»ÅÍ´Â °è»êÀ» ´ã´çÇÏ´Â CPU(ÇÁ·Î¼¼¼­)¿Í ÇÁ·Î±×·¥ ¹× µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â ·¥ ¸Þ¸ð¸®(¾×¼¼½º¼Óµµ°¡ ºü¸£´Ù)·Î ±¸¼ºµÇ¾î ÀÖ´Ù. ¿©±â¿¡´Ù °¢Á¾ µð½ºÅ© µå¶óÀ̺êµé°ú ºñµð¿À Ä«µå, Űº¸µå, ³×Æ®¿÷ Ä«µå, ¸ðµ© Ä«µå, »ç¿îµå Ä«µå, USB ¹ö½º, ½Ã¸®¾ó Æ÷Æ®, ÆÐ·¯·¼ Æ÷Æ® µîµîÀÌ ÀÖ°í, ¶Ç Àü·ÂÀ» °ø±ÞÇÏ´Â Àü¿øºÎ, µð¹ÙÀ̽º¸¦ CPU ¿¡ Á¢¼ÓÇϱâ À§ÇÑ ¸¶´õº¸µå»óÀÇ °¢Á¾ ¹ö½ºµé, ±×¸®°í ÀÌ ¸ðµÎ¸¦ ´ã´Â ÄÉÀ̽º°¡ ÀÖ´Ù.

¿¾³¯¿¡´Â ´ëºÎºÐÀÇ µð¹ÙÀ̽ºµéÀº °¢°¢ ȸ·Î±âÆÇÇü(PCB, Printed Circuit Board) Ä«µåÇüÅ·ΠÁ¦ÀÛµÇ¾î ¸ÞÀκ¸µåÀÇ ½½·Ô¿¡ ²ÈÈ÷µµ·Ï µÇ¾ú¾ú´Ù. ±×·¯´ø °ÍÀÌ ÃÖ±Ù¿¡´Â ¸¹Àº "µð¹ÙÀ̽º" µéÀÌ È¸·Î±âÆÇÇüÅÂ»Ó ¾Æ´Ï¶ó ÀÛÀº ¹ÝµµÃ¼ Ĩ ÇüÅ·εµ ÁýÀûµÇ¾î "¸¶´õº¸µå" »ó¿¡ ¾Æ¿¹ ¿µ±¸ÀûÀ¸·Î ½ÇÀåµÇ±âµµ ÇÑ´Ù. ¶ÇÇÑ ¸¶´õº¸µå¿¡ ²È´Â ÇϳªÀÇ Ä«µåÀ§¿¡ ¿©·¯°³ÀÇ µð¹ÙÀ̽º°¡ žÀçµÇ´Â °æ¿ìµµ ÀÖ´Ù. ¸Þ¸ð¸® Ĩµé ¿ª½Ã ¶§·Î´Â µð¹ÙÀ̽º·Î Ãë±ÞÇÒ ¼öµµ ÀÖÁö¸¸, ÀÌ °æ¿ì´Â º» HOWTO ÀÇ PnP ÀÇ Àǹ̿¡´Â ÇØ´çÇÏÁö ¾Ê´Â´Ù.

ÄÄÇ»ÅÍ ½Ã½ºÅÛÀÌ Á¦´ë·Î µ¿ÀÛÇÏ·Á¸é °¢°¢ÀÇ µð¹ÙÀ̽º´Â ÇØ´ç "µð¹ÙÀ̽º µå¶óÀ̹ö" ÀÇ Á¦¾îÇÏ¿¡ ÀÖ¾î¾ß¸¸ ÇÑ´Ù. µð¹ÙÀ̽º µå¶óÀ̹ö´Â ¿î¿µÃ¼Á¦ÀÇ ÀϺÎÀÎ ¼ÒÇÁÆ®¿þ¾î·Î¼­ (´ë°³´Â ¸ðµâ·Î¼­ ·ÎµåµÈ´Ù), CPU »ó¿¡¼­ ½ÇÇàµÈ´Ù. µð¹ÙÀ̽º µå¶óÀ̹öµéÀº /dev µð·ºÅ丮¿¡ ÀÖ´Â "Ư¼ö ÆÄÀϵé"¿¡ ¿¬°üµÇ¾îÁ® Àִµ¥, ÀÌ ÆÄÀϵéÀº »ç½ÇÀº ÆÄÀÏÀÌ ¾Æ´Ï´Ù. ÀÌ ÆÄÀϵéÀº hda1(Çϵåµð½ºÅ© a ÀÇ Ã¹¹øÂ° ÆÄƼ¼Ç), ttyS0(ù¹øÂ° ½Ã¸®¾ó Æ÷Æ®), eth1(µÎ¹øÂ°ÀÇ ÀÌ´õ³Ý Ä«µå) µîÀÇ À̸§À» °¡Áö°íÀÖ´Ù. Á»´õ º¹ÀâÇϰԴÂ, °¡·É eth1 ¿ë µð¹ÙÀ̽º µå¶óÀ̹ö´Â ´ç½ÅÀÌ °¡Áø ÀÌ´õ³Ý Ä«µåÀÇ Á¾·ù¿¡ ¸Â´Â°ÍÀ¸·Î ¼±ÅÃÇØ¾ß ÇÑ´Ù. Áï, ´ÙÂ¥°íÂ¥ ¾Æ¹« ÀÌ´õ³Ý µå¶óÀ̹ö¿¡°Ô³ª eth1 À» ÁöÁ¤ÇØ Á־´Â ¾ÈµÇ¸ç, ¹Ýµå½Ã ´ç½ÅÀÌ ¼³Ä¡ÇÑ ÀÌ´õ³Ý Ä«µå Á¾·ù¿¡¼­ µ¿ÀÛÇϴ ƯÁ¤ µå¶óÀ̹ö¿¡°Ô eth1 À» ÁöÁ¤ÇØÁà¾ß ÇÑ´Ù. Ä¿³Î ¸ðµâÀ» »ç¿ëÇÒ °æ¿ì, ÀÌ·¯ÇÑ ÁöÁ¤³»¿ëÀÇ ÀϺδ /etc/modules.conf ³»ÀÇ alias ºÎºÐ¿¡ ÀûÈ÷°Ô µÇ¸ç ±×¿Ü ³ª¸ÓÁö ³»¿ëÀº Ä¿³Î ³»ºÎÀÇ Å×ÀÌºí¿¡ ³»ÀçµÉ ¼öµµ ÀÖ´Ù.

¾î¶² µð¹ÙÀ̽º¸¦ Á¦¾îÇϱâ À§Çؼ­´Â, ÇØ´ç µð¹ÙÀ̽º µå¶óÀ̹ö°¡ CPU ¸¦ ÀÌ¿ëÇØ ±× µð¹ÙÀ̽º¿¡ ¸í·É ¹× µ¥ÀÌÅ͸¦ º¸³»°Å³ª µð¹ÙÀ̽º·ÎºÎÅÍ Á¤º¸¸¦ Àо¾ß ÇÑ´Ù. ÀÌ·± ÀÏÀ» ÇÏ·Á¸é, °¢ µð¹ÙÀ̽º µå¶óÀ̹öµéÀº ÀÚ½ÅÀÌ Á¦¾îÇÏ´Â µð¹ÙÀ̽ºÀÇ ¾îµå·¹½º¸¦ ¾Ë¾Æ¾ß¸¸ ÇÑ´Ù. °á±¹ ±×·¯ÇÑ ¾îµå·¹½º¸¦ ¾È´Ù´Â °ÍÀº ¹Ù·Î µð¹ÙÀ̽º¿ÍÀÇ Åë½Å ä³ÎÀ» ¼³Á¤ÇÑ´Ù´Â °Í°ú °°Àº ÀǹÌÀÎ °ÍÀÌ´Ù. ÀÌ ¹°¸®ÀûÀÎ "ä³Î"Àº ½ÇÁ¦·Î´Â PC ³»ºÎÀÇ µ¥ÀÌÅÍ ¹ö½º·Î¼­, µð¹ÙÀ̽º»Ó ¾Æ´Ï¶ó ´Ù¸¥ °ÅÀÇ ¸ðµç ÀåÄ¡µé¿¡°Ôµµ °øÀ¯µÇ°í ÀÖ´Ù.

½ÇÁ¦ÀÇ Åë½Å ä³ÎÀº À§ÀÇ ¼³¸íº¸´Ù Á¶±Ý ´õ º¹ÀâÇÏ´Ù. "¾îµå·¹½º" ¶õ ½ÇÁ¦·Î´Â ¿¬¼ÓµÈ ¾îµå·¹½ºµé·Î ÀÌ·ç¾îÁø ƯÁ¤ÇÑ ¾îµå·¹½º ¹üÀ§¸¦ ¶æÇÏ´Â °ÍÀ¸·Î¼­ Á¾Á¾ "¾îµå·¹½º"¶õ ¸» ´ë½Å "¾îµå·¹½º ¿µ¿ª"À̶ó°í ¸»Çϱ⵵ ÇÑ´Ù. ½ÉÁö¾î´Â ÇѰ³ÀÇ ´ÜÀÏ µð¹ÙÀ̽º°¡ µÎ°³ ÀÌ»óÀÇ ¾îµå·¹½º ¹üÀ§¸¦ °¡Áú¼öµµ ÀÖ´Ù(¼­·Î ÁßøµÇÁö¸¸ ¾ÊÀ¸¸é µÈ´Ù). ¶ÇÇÑ, À§¿Í ¹Ý´ë¹æÇâÀÇ Ã¤³Î¿¡ ÇØ´çÇÏ´Â °ÍÀ¸·Î ÀÎÅÍ·´Æ®°¡ Àִµ¥, À̸¦ ÅëÇØ¼­ À̹ø¿¡´Â µð¹ÙÀ̽º°¡ ÇØ´ç µð¹ÙÀ̽º µå¶óÀ̹öÂÊÀ¸·Î ±ä±Þ "±¸Á¶¿äû" À» º¸³¾¼ö ÀÖ´Ù.

2.3. °¢Á¾ ¾îµå·¹½ºµé

PC ¿¡´Â 3 °³ÀÇ ¾îµå·¹½º °ø°£ÀÌ ÀÖ´Ù : I/O , ¸ÞÀÎ ¸Þ¸ð¸®(IO ¸Þ¸ð¸®), ¼³Á¤ ¾îµå·¹½º(±¸Çü ISA ¹ö½º´Â ÀÌ "¼³Á¤" ¾îµå·¹½º °ø°£ÀÌ ¾ø´Ù). À̵é 3 Á¾·ùÀÇ ¾îµå·¹½º´Â PC ³»ºÎÀÇ µ¿ÀÏ ¹ö½º¸¦ °øÀ¯Çϰí ÀÖ´Ù. ¾î¶² ¾îµå·¹½º°¡ I/O, ¸ÞÀÎ ¸Þ¸ð¸®(2.5Àý), ¼³Á¤ ¾îµå·¹½º ¼Â ÁõÀÇ ¾îµð¿¡ ¼ÓÇÏ´Â °ÍÀÎÁö´Â ±× ÆÇº°¿ëÀ¸·Î PC ÀÇ ¹ö½º»ó¿¡ ¹è¼±µÈ ƯÁ¤ÇÑ ¶óÀεéÀÇ Àü¾ÐÀ¸·Î °áÁ¤µÈ´Ù. ÀÚ¼¼ÇÑ °ÍÀº 9.2Àý ÀýÀ» ÂüÁ¶Ç϶ó. ÀÌ ¼¼°¡Áö ¾îµå·¹½º °ø°£Áß ´ÙÀ½ µÎ °¡Áö¸¸ÀÌ µð¹ÙÀ̽ºÀÇ I/O ¿ëµµ·Î »ç¿ëµÈ´Ù: I/O ¿Í ¸ÞÀÎ ¸Þ¸ð¸®.

2.4. I/O ¾îµå·¹½º¿Í ±× ÇÒ´ç

µð¹ÙÀ̽ºµéÀº ¿ø·¡ I/O ¾îµå·¹½º °ø°£¿¡ À§Ä¡Çß¾úÀ¸³ª, ¿À´Ã³¯¿¡´Â ¸ÞÀÎ ¸Þ¸ð¸®³»ÀÇ °ø°£À» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. I/O ¾îµå·¹½º´Â ¶§·Î´Â ±×³É "I/O", "IO", "i/o", "io" ¶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ¶Ç "I/OÆ÷Æ®" ³ª "I/O ¿µ¿ª" À̶ó ºÎ¸£±âµµ ÇÑ´Ù. ÀÌ "IO Æ÷Æ®" ¿Í ¸ÞÀÎ ¸Þ¸ð¸®¿¡ À§Ä¡ÇÏ´Â "IO ¸Þ¸ð¸®" ¸¦ È¥µ¿Çؼ­´Â ¾ÈµÈ´Ù. I/O ¾îµå·¹½º(¶Ç´Â ÀÎÅÍ·´Æ®°°Àº ´Ù¸¥ ¹ö½º ¸®¼Ò½º ÀÚ¿øµé)¸¦ ÇÒ´çÇÏ·Á¸é ´ÙÀ½ µÎ ´Ü°è¸¦ °ÅÃľßÇÑ´Ù.

  1. I/O ¾îµå·¹½º³ª ±×¹ÛÀÇ ³»¿ëÀ» Ä«µå»óÀÇ ·¹Áö½ºÅÍ¿¡ ¼ÂÆÃÇÑ´Ù.

  2. ÀÌ I/O ¾îµå·¹½º³ª ±×¹ÛÀÇ ³»¿ëÀ» µð¹ÙÀ̽º µå¶óÀ̹öµµ ¾Ë°Ô ÇÑ´Ù.

À§ÀÇ µÎ ´Ü°è´Â ´ç½ÅÀÌ °Å¸®¿¡¼­ ¾î¶² ÀÌÀÇ ÁýÀÇ ¹øÁö¼ö¸¦ ã¾Æ³»´Â °úÁ¤°ú ºñ½ÁÇÏ´Ù. ¸ÕÀú, ±× »ç¶÷Àº ´ë¹®¾Õ¿¡ ÀÚ±âÁýÀÇ ¹øÁö¼ö¸¦ ºÙ¿©³õ¾Æ ¿ÜºÎ¿¡¼­ ãÀ»¼ö ÀÖ°Ô ÇÏ¿©¾ß Çϰí, ±×·¯¸é À̸¦ ÅëÇØ ´ç½ÅÀº ±× Áý ¹øÁö¼ö¸¦ ¾ò¾î³» Á¾ÀÌ¿¡ ±â·ÏÇÏ¸é µÈ´Ù. ÄÄÇ»ÅÍÀÇ °æ¿ì, ¸ÕÀú µð¹ÙÀ̽º Çϵå¿þ¾î°¡ ÀÚ½ÅÀÌ »ç¿ëÇÒ ¾îµå·¹½º¸¦ Ưº°ÇÑ ·¹Áö½ºÅÍ¿¡ ±â·ÏÇØµÎ¾î¾ß Çϰí, ±×·¯¸é µð¹ÙÀ̽º µå¶óÀ̹ö´Â ±× ¾îµå·¹½º¸¦ ¾Ë¾Æ³»¾ß¸¸ ÇÑ´Ù. ÀÌ µÎ°¡Áö ÀÛ¾÷Àº ¼ÒÇÁÆ®¿þ¾î·Î ÀÚµ¿À¸·Î ¼öÇà½Ã۵ç, ¾Æ´Ï¸é ƯÁ¤ÇÑ ÆÄÀÏ¿¡ ¼Õ¼ö ±× Á¤º¸¸¦ ±â·ÏÇØµÎ´Â ¹æ¹ýÀ» ¾²µç ¹Ýµå½Ã ¿Ï·áµÇ¾î¾ß ÇÑ´Ù. µÎ ÀÛ¾÷Áß ¾î´À Çϳª¸¸À» ½ÃµµÇϰųª ¿Ï·á½ÃÄ×À» »ÓÀ̶ó¸é ¹®Á¦°¡ ¹ß»ýÇÑ´Ù.

¼öµ¿À¸·Î PnP ¼³Á¤À» ÇÒ ¶§ ¸î¸î »ç¶÷µéÀº À§ÀÇ µÎ ÀÛ¾÷Áß Çϳª¸¸ ÇØ³õ°í´Â ¿Ö ÄÄÇ»ÅͰ¡ µð¹ÙÀ̽º¸¦ ¹ß°ßÇÏÁö ¸øÇÏ´ÂÁö ÀǾÆÇØÇÑ´Ù. ¿¹¸¦ µé¸é, ±×µéÀº ½Ã¸®¾ó Æ÷Æ®¿¡ ƯÁ¤ ¾îµå·¹½º¸¦ ÇÒ´çÇØÁØ´ä½Ã°í "setserial" ¸í·ÉÀ» ³»¸®¸é¼­µµ, "setserial" ¸í·ÉÀÇ È¿°ú´Â µå¶óÀ̹ö¿¡°Ô ¾îµå·¹½º¸¦ ¾Ë·ÁÁÙ »ÓÀÓÀ» ¸ð¸£´Â °ÍÀÌ´Ù. setserial ¸í·ÉÀº ½Ã¸®¾ó Æ÷Æ® Çϵå¿þ¾î³»ÀÇ ÀÚü ·¹Áö½ºÅÍ¿¡ ¾îµå·¹½º¸¦ ¼ÂÆÃÇÏ´Â ÀÛ¾÷À» ¼öÇàÇÏÁö´Â ¾Ê´Â´Ù. ¸¸ÀÏ ±× ½Ã¸®¾ó Æ÷Æ® Çϵå¿þ¾î°¡ ´ç½ÅÀÌ setserial ¸í·ÉÀ¸·Î Áö½ÃÇÑ ¾îµå·¹½º¸¦ °¡Áö°í ÀÖÁö ¾Ê°Å³ª ¾Æ¿¹ Çϵå¿þ¾î¿¡ ¾îµå·¹½º°¡ ¼ÂÆÃµÇ¾îÀÖÁö ¾ÊÀº »óŶó¸é ¹®Á¦°¡ ¹ß»ýÇÑ´Ù.

µð¹ÙÀ̽º µå¶óÀ̹ö°¡ ¾î¶² ¾îµå·¹½º¸¦ »ç¿ëÇÏ·Á¸é, ±×Àü¿¡ ¹Ýµå½Ã ÇØ´çÇÏ´Â ¹°¸®ÀûÀÎ µð¹ÙÀ̽º(°¡·É Ä«µå) ³»¿¡ ±× ¾îµå·¹½º°¡ ¼ÂÆÃµÇ¾îÀÖ¾î¾ß¸¸ ÇÑ´Ù. µð¹ÙÀ̽º µå¶óÀ̹öµéÀº ÁÖ·Î ÄÄÇ»ÅͰ¡ ½ÃÀÛµÇÀÚ¸¶ÀÚ ÀÛµ¿½ÃÀÛÇÏ´Â °ÍÀÌ ¸¹±â ¶§¹®¿¡, ¶§¶§·Î PnP ¼³Á¤ ÇÁ·Î±×·¥ÀÌ Ä«µå³»¿¡ ¾îµå·¹½º¸¦ ¼ÂÆÃÇϱ⵵ Àü¿¡ µå¶óÀ̹ö°¡ ¸ÕÀú Ä«µå¿¡ ¿¢¼¼½º¸¦ ½ÃµµÇÏ´Â ¼ö°¡ ÀÖ´Ù(±× ¾îµå·¹½º¿¡ Ä«µå°¡ Á¸ÀçÇÏ´ÂÁö µîµîÀ» Á¶»çÇÏ·Á°í). ÀÌ·¸°Ô µÇ¸é Ä«µå°¡ ÀÖÀ½¿¡µµ ºÒ±¸Çϰí(ÇÏÁö¸¸ Ä«µå°¡ ¾îµå·¹½º¸¦ °®°íÀÖÁö ¾ÊÀº »óÅÂÀ̹ǷÎ), Ä«µå¸¦ ãÀ»¼ö ¾ø´Ù´Â ¿¡·¯ ¸Þ½ÃÁö°¡ ³ªÅ¸³­´Ù.

¾Õ ¹®´Üµé¿¡¼­ ¼³¸íÇÑ I/O ¾îµå·¹½º¿¡ °üÇÑ ³»¿ëÀº ´Ù¸¥ ÀÚ¿ø(2.5Àý, 2.6Àý, 2.7Àý)¿¡ ´ëÇØ¼­µµ ±×´ë·Î Àû¿ëµÈ´Ù. ´ÙÀ½ ¼¼°³ Àý¿¡¼­ À̵鿡 ´ëÇØ ¼³¸íÇÑ´Ù.

2.5. ¸Þ¸ð¸® ¿µ¿ª

¸ÞÀÎ ¸Þ¸ð¸®³»ÀÇ ¾îµå·¹½º °ø°£À» ÇÒ´ç¹Þ´Â µð¹ÙÀ̽ºµéµµ ¸¹´Ù. ¶§·Î´Â À̰ÍÀ» "°øÀ¯ ¸Þ¸ð¸®(shared memory)" ¶Ç´Â "¸Þ¸ð¸® ¸ÊµÈ I/O(memory mapped I/O)" ¶Ç´Â "IO ¸Þ¸ð¸®" ¶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ÀÌ ¸Þ¸ð¸®´Â ¹°¸®ÀûÀ¸·Î´Â µð¹ÙÀ̽º»ó¿¡ Á¸ÀçÇÑ´Ù. ¹ö½º¸®¼Ò½º¸¦ ³íÇÒ ¶§´Â ±×³É "¸Þ¸ð¸®"¶ó°í ºÎ¸£±âµµ ÇÑ´Ù. ¾î¶² µð¹ÙÀ̽ºµéÀº ÀÌ·± "¸Þ¸ð¸®" ¿Í ÀüÅëÀûÀÎ I/O ¾îµå·¹½º°ø°£À» µÑ´Ù »ç¿ëÇϱ⵵ ÇÑ´Ù.

ÀÌ·± Ä«µå¸¦ ²ÈÀ¸¸é °á°úÀûÀ¸·Î ¸ÞÀÎ ¸Þ¸ð¸®¿ë ¸Þ¸ð¸® ¸ðµâÀ» ²È´Â È¿°ú°¡ ¹ß»ýÇÑ´Ù. ÁøÂ¥ ¸ÞÀÎ ¸Þ¸ð¸® Ĩµé°ú Ãæµ¹ÇÏÁö ¾Êµµ·Ï ¸Þ¸ð¸®¸Ê ¾îµå·¹½º´Â PnP ¿¡ ÀÇÇØ »óÀ§ ¾îµå·¹½º°¡ ¼±ÅõǾîÁø´Ù. ÀÌ ¸Þ¸ð¸®´Â ROM(Read Only Memory)Àϼöµµ ÀÖ°í °øÀ¯ ¸Þ¸ð¸®ÀÏ ¼öµµ ÀÖ´Ù. I/O ¾îµå·¹½º °ø°£ÀÌ µð¹ÙÀ̽º¿Í CPU ¿¡ °øÀ¯µÇµíÀÌ, °øÀ¯ ¸Þ¸ð¸®µµ (µð¹ÙÀ̽º µå¶óÀ̹ö¸¦ ±¸µ¿½ÃÅ´À¸·Î½á) µð¹ÙÀ̽º¿Í CPU °¡ °øÀ¯ÇϰԵȴÙ. ÀÌ °øÀ¯ ¸Þ¸ð¸®´Â µð¹ÙÀ̽º¿Í ¸ÞÀÎ ¸Þ¸ð¸®°£ÀÇ µ¥ÀÌÅÍ "Àü¼Û" ¼ö´ÜÀ¸·Î ±â´ÉÇÑ´Ù. À̰ÍÀº IO Áö¸¸ ±× ±â´ÉÀÌ I/O °ø°£¿¡¼­ ÀÌ·ç¾îÁö´Â °ÍÀÌ ¾Æ´Ï´Ù. Ä«µå¿Í µð¹ÙÀ̽º µå¶óÀ̹ö´Â µÑ´Ù ÇØ´ç °øÀ¯ ¸Þ¸ð¸®ÀÇ ¾îµå·¹½º¸¦ ¾Ë¾Æ¾ß¸¸ ÇÑ´Ù.

ROM ÀÇ °æ¿ì´Â ´Ù¸£´Ù. ROM ÀÇ ³»¿ëÀº º¸Åë ±× µð¹ÙÀ̽º°¡ »ç¿ëÇÒ ÇÁ·Î±×·¥(´ë°³´Â µð¹ÙÀ̽º µå¶óÀ̹ö)ÀÏ °æ¿ì°¡ ¸¹´Ù. ¾î¼¸é ÃʱâÈ­ÄÚµåÀÏ »ÓÀÌ¶ó¼­ ¿©ÀüÈ÷ º°µµÀÇ µð¹ÙÀ̽º µå¶óÀ̹ö°¡ ÇÊ¿äÇÒ ¼öµµ ÀÖ´Ù. ¹Ù¶÷Á÷½º·´°Ôµµ, ÀÌ ÄÚµå´Â MS À©µµ¿ìÁî ?? »Ó¸¸ ¾Æ´Ï¶ó ¸®´ª½º¿¡¼­µµ µ¿ÀÛÇÒ °ÍÀÌ´Ù. À̰ÍÀº ½¦µµ¿ì(shadow) µÉ Çʿ䰡 ÀÖÀ»Áöµµ ¸ð¸¥´Ù. ROM ÀÌ ½¦µµ¿ìµÈ´Ù´Â °ÍÀº °í¼Ó µ¿ÀÛÀ» À§ÇØ ROMÀÇ ³»¿ëÀ» ¸ÞÀÎ ¸Þ¸ð¸®·Î º¹»çÇØµÎ´Â °ÍÀ» ¸»ÇÑ´Ù. ÀÏ´Ü ROM ÀÌ ½¦µµ¿ìµÇ¸é, ±×°ÍÀº ´õÀÌ»ó "Àбâ Àü¿ë(read only)" ÀÌ ¾Æ´Ï´Ù.

2.6. IRQ --°³¿ä

ÀÌ ¼³¸íÀ» ÀÐÀº µÚ ´õ ÀÚ¼¼ÇÑ °ÍÀ» ¾Ë°í ½Í´Ù¸é 9.4Àý¸¦ Âü°íÇ϶ó. ´ÙÀ½ ³»¿ëÀº ÀϺη¯ ±ØÈ÷ ´Ü¼øÈ÷ ¼³¸íÇÑ °ÍÀÌ´Ù: ¾îµå·¹½º ¿Ü¿¡µµ, ÀÎÅÍ·´Æ® ¹øÈ£(¿¹¸¦ µé¸é IRQ 5 µîµî)¶ó´Â °Íµµ ´Ù·ç¾î¾ß ÇÑ´Ù. À̰ÍÀº IRQ(Interrupt ReQuest, ÀÎÅÍ·´Æ® ¿ä±¸)¹øÈ£¶ó°í ºÎ¸¥´Ù. µð¹ÙÀ̽º µå¶óÀ̹ö°¡ µð¹ÙÀ̽ºÃø¿¡°Ô Åë½ÅÀ» Çϱâ À§Çؼ­´Â Ä«µåÀÇ ¾îµå·¹½º¸¦ ¹Ýµå½Ã ¾Ë°í ÀÖ¾î¾ß ÇÔÀº ÀÌ¹Ì ¼³¸íÇÏ¿´´Ù. ±×·¸´Ù¸é ¹Ý´ë¹æÇâÀÇ Åë½ÅÀº ¾î¶³±î? µð¹ÙÀ̽º°¡ µð¹ÙÀ̽º µå¶óÀ̹ö¿¡°Ô Áï½Ã ÀüÇØ¾ß ÇÏ´Â ³»¿ëÀÌ ÀÖ´Ù¸é? ¿¹¸¦ µé¾î, µð¹ÙÀ̽º°¡ ¸ÞÀÎ ¸Þ¸ð¸®¸¦ ¸ñÀûÁö·Î ÇÏ´Â ´ë·®ÀÇ ¹ÙÀÌÆ®¿­À» ¿ÜºÎ¿¡¼­ ¹Þ¾Ò´Ù°í Ä¡ÀÚ. ÀÌ °æ¿ì, µð¹ÙÀ̽º´Â °ÅÀÇ °¡µæÂ÷°¡°íÀÖ´Â ÀÚ½ÅÀÇ ¹öÆÛ¿¡¼­ ¹ÙÀÌÆ® ¿­À» ¸ù¶¥ ÆÛ³»¾î ¸ÞÀθ޸𸮷ΠÀü¼Û½ÃÄÑÁÙ °ÍÀ» µð¹ÙÀ̽º µå¶óÀ̹ö¿¡°Ô ¿ä±¸ÇÒ Çʿ䰡 ÀÖ´Ù. ¶Ç´Ù¸¥ ¿¹·Î, ¿ÜºÎ·Î Àü¼ÛÇØ¾ßÇÒ ¹ÙÀÌÆ®µéÀ» ´Ù Àü¼ÛÇÑ µð¹ÙÀ̽º°¡ µð¹ÙÀ̽º µå¶óÀ̹ö¿¡°Ô ÀÛ¾÷À» ³¡¸¶ÃÆÀ½À» ¾Ë¸®°í Àü¼Û½Ãų »õ·Î¿î ¹ÙÀÌÆ®µéÀ» º¸³»´Þ¶ó°í ¿äûÇÒ °æ¿ìµµ ÀÖ´Ù.

¾î¶»°Ô ÇÏ¸é µð¹ÙÀ̽º°¡ µå¶óÀ̹ö¿¡°Ô Áï°¢ ½ÅÈ£¸¦ º¸³¾¼ö ÀÖÀ»±î? ¸ÞÀÎ µ¥ÀÌÅ͹ö½º´Â ¹º°¡°¡ ÀÌ¹Ì »ç¿ëÁßÀ̱⠽ʻóÀ̹ǷΠÀ̸¦ »ç¿ëÇÒ ¼ö´Â ¾ø´Ù. ±×´ë½Å, µð¹ÙÀ̽º´Â ÀÎÅÍ·´Æ® Àü¿ëÀ¸·Î¸¸ »ç¿ëµÇ´Â ÀÎÅÍ·´Æ® ¶óÀÎ(¹ö½ºÀÇ ÀϺÎÀÌ´Ù)¿¡ Àü¾ÐÀ» °¡ÇÑ´Ù. ÀÌ ¶óÀÎÀº º¸Åë ±× Æ¯Á¤ µð¹ÙÀ̽º Àü¿ëÀ¸·Î ¿¹¾àµÇ¾îÁ® ÀÖ´Ù. ÀÌ Àü¾Ð½ÅÈ£¸¦ ÀÎÅÍ·´Æ® ¿äû(IRQ) ȤÀº ±×³É "ÀÎÅÍ·´Æ®" ¶ó°í ºÎ¸¥´Ù. PC ÀÇ °æ¿ì ÀÎÅÍ·´Æ® ¶óÀÎÀº 16 °³°¡ À־, À̵éÀº °¢ÀÚ (°£Á¢ÀûÀ¸·Î) ƯÁ¤ µð¹ÙÀ̽º µå¶óÀ̹ö·Î ¿¬°áµÈ´Ù. °¢ ÀÎÅÍ·´Æ® ¶óÀο¡´Â °íÀ¯ÀÇ IRQ(Interrupt ReQuest) ¹øÈ£°¡ ºÙ¾î ÀÖ´Ù. µð¹ÙÀ̽º´Â ÀÚ½ÅÀÇ ÀÎÅÍ·´Æ®¸¦ ±×¿¡ ÇØ´çÇÏ´Â ¿Ã¹Ù¸¥ ¶óÀÎÀ¸·Î º¸³»¾ß Çϰí, µð¹ÙÀ̽º µå¶óÀ̹ö´Â ¿Ã¹Ù¸¥ ¶óÀο¡¼­ ±× ÀÎÅÍ·´Æ® µµÂøÀ» ±â´Ù·Á¾ß ÇÑ´Ù. ƯÁ¤ µð¹ÙÀ̽º°¡ ¾î´À ¶óÀÎÀ» ÅëÇØ ±¸Á¶ ¿äûÀ» º¸³»´Â°¡´Â ±× µð¹ÙÀ̽º¿¡ ±â·ÏÀúÀåµÇ¾îÀÖ´Â IRQ ¹øÈ£¿¡ ÀÇÇØ °áÁ¤µÈ´Ù. ÇØ´ç µð¹ÙÀ̽º µå¶óÀ̹öµµ ÀÌ ¹øÈ£¸¦ ¶È°°ÀÌ ¾Ë°íÀÖ¾î¾ß ÇÑ´Ù. ±×·¡¾ß ÇØ´ç¹øÈ£ÀÇ IRQ ¶óÀο¡¼­ ±¸Á¶ ¿äûÀ» ±â´Ù¸±¼ö Àֱ⠶§¹®ÀÌ´Ù.

ÀÏ´Ü ¾î¶² µð¹ÙÀ̽º µå¶óÀ̹ö°¡ ÇØ´ç µð¹ÙÀ̽ºÀÇ ÀÎÅÍ·´Æ®¸¦ ¹ÞÀ¸¸é, µð¹ÙÀ̽º µå¶óÀ̹ö´Â ÀÎÅÍ·´Æ®°¡ ¹ß»ýµÈ ÀÌÀ¯¸¦ Á¶»çÇÑ ÈÄ, ±×¿¡µû¶ó ÀûÀýÇÑ µ¿ÀÛÀ» ÃëÇØ ÀÎÅÍ·´Æ®¸¦ ó¸®ÇÑ´Ù. ISA ¹ö½ºÀÇ °æ¿ì, °¢°¢ÀÇ µð¹ÙÀ̽º´Â ´ë°³ ÀڽŸ¸ÀÇ À¯ÀϹ«ÀÌÇÑ IRQ ¹øÈ£¸¦ ÇÊ¿ä·ÎÇÑ´Ù. PCI ¹ö½º ¹× ±âŸ Ưº°ÇÑ °æ¿ì¿¡´Â IRQ ¸¦ °øÀ¯ÇÏ´Â °Íµµ Çã¿ëµÈ´Ù.

2.7. DMA ä³Îµé

DMA ä³ÎµéÀº ÀüÀûÀ¸·Î ISA ¹ö½º¸¸À» À§ÇÑ °ÍÀÌ´Ù. DMA ´Â "Direct Memory Access(Á÷Á¢ ¸Þ¸ð¸® ¾ï¼¼½º)" ¸¦ ÀǹÌÇÑ´Ù. DMA ¿¡¼­´Â µð¹ÙÀ̽º°¡ CPU ·ÎºÎÅÍ ÄÄÇ»ÅÍ ¸ÞÀÎ ¹ö½º¸¦ ³Ñ°Ü¹Þ¾Æ À̸¦ ÅëÇØ ¹ÙÀÌÆ®¿­À» ¸ÞÀÎ ¸Þ¸ð¸®¿¡ Á÷Á¢ Àü¼ÛÇÏ´Â °ÍÀÌ Çã¿ëµÈ´Ù. DMA ¸¦ ¾²Áö¾Ê´Â Åë»óÀÇ °æ¿ì¶ó¸é CPU ´Â ÀÌ·¯ÇÑ Àü¼ÛÀÛ¾÷À» ´ÙÀ½ 2 ´Ü°è·Î ó¸®ÇÒ °ÍÀÌ´Ù:

  1. ÇØ´ç µð¹ÙÀ̽ºÀÇ I/O ¸Þ¸ð¸® °ø°£À¸·ÎºÎÅÍ ¹ÙÀÌÆ®¿­À» Àоî CPU Àڽſ¡°Ô º¸³½´Ù.

  2. ÀÌ ¹ÙÀÌÆ®¿­À» CPU ¿¡¼­ ¸ÞÀÎ ¸Þ¸ð¸®·Î º¸³½´Ù.

  1. DMA ¸¦ »ç¿ëÇÏ¸é º¸Åë À§ÀÇ µÎ ´Ü°è °úÁ¤ÀÌ µð¹ÙÀ̽º¿¡¼­ Á÷Á¢ ¸Þ¸ð¸®·Î ¹ÙÀÌÆ®¿­À» Àü¼ÛÇÏ´Â ÇÑ ´Ü°è °úÁ¤À¸·Î 󸮵ȴÙ.

µð¹ÙÀ̽ºÀÇ Çϵå¿þ¾î¿¡ ÀÌ ±â´ÉÀÌ ±¸ºñµÇ¾î ÀÖ¾î¾ß¸¸ °¡´ÉÇϹǷÎ, ¸ðµç µð¹ÙÀ̽ºµéÀÌ ´Ù DMA ¸¦ »ç¿ëÇÒ ¼ö Àִ°ÍÀº ¾Æ´Ï´Ù. ¶Ç DMA °¡ ÁøÇàµÇ´Â Áß¿¡´Â ¸ÞÀÎ ¹ö½º°¡ DMA Àü¼Û¿¡ »ç¿ëµÇ¹Ç·Î, ±×µ¿¾È CPU ´Â º°´Ù¸¥ ÀÛ¾÷µéÀº ÇÒ¼ö¾ø°ÔµÈ´Ù.

PCI ¹ö½º´Â »ç½Ç DMA ¸¦ ÀüÇô °®°íÀÖÁö ¾ÊÁö¸¸, ±× ´ë½Å DMA º¸´Ùµµ ´õ ÁÁÀº ±â´ÉÀ» °¡Áö°í ÀÖ´Ù. ±×°ÍÀº ¹ö½º ¸¶½ºÅ͸µ(bus mastering)À̶ó´Â °ÍÀÌ´Ù. ¹ö½º ¸¶½ºÅ͸µÀÇ µ¿ÀÛÀº DMA ¿Í ´Ù¼Ò À¯»çÇϹǷÎ, ¶§·Î´Â DMA ¶ó°í ºÒ¸®±âµµ ÇÑ´Ù(¿¹¸¦ µé¸é Çϵåµð½ºÅ©¿¡¼­´Â À̸¦ "UltraDMA" ¶ó°í ºÎ¸¥´Ù). ÀÌ ±â´ÉÀ» »ç¿ëÇϸé, µð¹ÙÀ̽º´Â ÀϽÃÀûÀ¸·Î ¹ö½ºÀÇ ¼ÒÀ¯ÀÚ(bus master)°¡ µÇ¾î ¸¶Ä¡ ÀÚ½ÅÀÌ CPU °¡ µÈ °Íó·³ ¹ÙÀÌÆ®¿­À» Àü¼ÛÇÒ ¼ö ÀÖ´Ù. DMA ¿Í´Â ´Þ¸® ¹ö½º ¸¶½ºÅ͸µÀº ä³Î ¹øÈ£¸¦ ÀüÇô »ç¿ëÇÏÁö ¾Ê´Â´Ù. ¿Ö³ÄÇϸé PCI ¹ö½ºÀÇ ±¸Á¶»ó, PCI Çϵå¿þ¾î´Â ¾î´À µð¹ÙÀ̽º°¡ ÇöÀçÀÇ ¹ö½º ¸¶½ºÅÍÀÌ°í ¾î´À µð¹ÙÀ̽º°¡ ÀåÂ÷ ¹ö½º ¸¶½ºÅͰ¡ µÇ±â¸¦ ¿äûÇϰíÀÖ´ÂÁö¸¦ ¾Ë¼öÀֱ⠶§¹®ÀÌ´Ù. µû¶ó¼­ PCI ¹ö½º¿¡ DMA ä³ÎÀ» ÇÒ´çÇÏ´Â °æ¿ì´Â ¾ø´Ù.

ISA ¹ö½º»óÀÇ ¾î¶² µð¹ÙÀ̽º°¡ DMA ¸¦ ÇÏ·Á°í ÇÒ ¶§¿¡´Â, ±× µð¹ÙÀ̽º´Â ÀÎÅÍ·´Æ® ¿ä±¸¶§¿Í À¯»çÇÑ °³³äÀ¸·Î¼­ DMA ¿äû¿ëÀ¸·Î ¹è¼±µÈ ¶óÀε鿡´Ù DMA ¿ä±¸(DMA-request)¸¦ ¹ßÇÏ°Ô µÈ´Ù. »ç½Ç, ÀÎÅÍ·´Æ®¸¦ ÀÌ¿ëÇØ DMA ¸¦ ó¸®Åä·Ï ÇÒ¼öµµ ÀÖ¾ú°ÚÁö¸¸, ±×·¨¾ú´õ¶ó¸é ´Ù¼ÒÀÇ ½Ã°£Áö¿¬ÀÌ ºÒ°¡ÇÇÇßÀ» °ÍÀÌ´Ù. µû¶ó¼­, DMA ¿ä±¸¶ó ºÒ¸®´Â Ư¼öÇÑ Á¾·ùÀÇ ÀÎÅÍ·´Æ®¸¦ ¾²´Â°Ô ´õ ºü¸£´Ù. ÀÎÅÍ·´Æ®¿¡¼­¿Í ¸¶Âù°¡Áö·Î DMA ¿ä±¸µé °¢°¢¿¡µµ ¹øÈ£°¡ ºÙ¿©Á® ÀÖ¾î, À̸¦ ÅëÇØ ¾î´À µð¹ÙÀ̽º°¡ DMA ¸¦ ¿ä±¸ÇϰíÀÖ´ÂÁö¸¦ ½Äº°ÇÒ ¼ö ÀÖ´Ù. ÀÌ ¹øÈ£¸¦ DMA ä³ÎÀ̶ó ºÎ¸¥´Ù. DMA Àü¼ÛÀº ¸ðµÎ ¸ÞÀÎ ¹ö½º¸¦ »ç¿ëÇϹǷÎ(µû¶ó¼­ Çѹø¿¡ ÇÑ °³ÀÇ Ã¤³Î¹Û¿¡ µ¿ÀÛÇÒ ¼ö ¾ø´Ù) »ç½ÇÀº °¢ ¹øÈ£ÀÇ Ã¤³ÎµéÀÌ ¸ðµÎ µ¿ÀÏÇÑ ¹°¸®Àû ä³ÎÀ» »ç¿ëÇÏ´Â °ÍÀÌÁö¸¸, "DMA ä³Î" ¹øÈ£¸¦ ÀÌ¿ëÇØ ÇöÀç "ä³Î"À» »ç¿ëÇϰí ÀÖ´Â °ÍÀÌ ¾î¶² µð¹ÙÀ̽ºÀÎÁö ¾Ë¼ö ÀÖ´Ù. ¸¶´õº¸µå»ó¿¡´Â °¢ "ä³Î"ÀÇ ÇöÀç »óŸ¦ ÀúÀåÇϰí ÀÖ´Â Çϵå¿þ¾î ·¹Áö½ºÅ͵éÀÌ ÀÖ´Ù. µû¶ó¼­ ¾î¶² µð¹ÙÀ̽º°¡ DMA ¿ä±¸¸¦ ¹ßÇÏ·Á¸é, ±× µð¹ÙÀ̽º´Â ÀÚ½ÅÀÇ DMA ä³Î ¹øÈ£¸¦ ¾Ë°íÀÖ¾î¾ß¸¸ Çϸç, ÀÌ ¹øÈ£´Â ±× ¹°¸®ÀûÀÎ µð¹ÙÀ̽º»óÀÇ Æ¯º°ÇÑ ·¹Áö½ºÅͳ»¿¡ ÀúÀåµÇ¾îÁ® ÀÖ¾î¾ß¸¸ ÇÑ´Ù.

2.8. µð¹ÙÀ̽º¿Í µå¶óÀ̹ö ¾çÃø¿¡ ´ëÇÑ "¸®¼Ò½º(resources)"

µû¶ó¼­, µð¹ÙÀ̽º µå¶óÀ̹öµéÀº ÀÚ½ÅÀÌ Á¦¾îÇÏ´Â Çϵå¿þ¾î¿Í ¾î¶² ¹æ½ÄÀ¸·Îµç ¿¬°èµÇÁö ¾ÊÀ¸¸é ¾ÈµÈ´Ù. ÀÌ´Â ¹ö½º ¸®¼Ò½º(I/O, ¸Þ¸ð¸®, IRQµé, DMA µé)¸¦ ¹°¸®ÀûÀÎ µð¹ÙÀ̽º¿Í µð¹ÙÀ̽º µå¶óÀ̹ö ¼ÒÇÁÆ®¿þ¾î ¾çÂÊ¿¡ ÇÒ´çÇÏ´Â °ÍÀ¸·Î ÀÌ·ç¾îÁø´Ù. ¿¹¸¦ µé¸é, ÇϳªÀÇ ½Ã¸®¾ó Æ÷Æ®´Â (°¡´ÉÇÑ 4 °¡Áö ¼±ÅÃÁß¿¡¼­) ´Ü 2 °³ÀÇ ÀÚ¿ø, Áï IRQ Çϳª¿Í I/O ¾îµå·¹½º Çϳª¸¸À» »ç¿ëÇÑ´Ù. ÀÌ µÎ°³ÀÇ °ªÀº µð¹ÙÀ̽º µå¶óÀ̹ö¿Í ¹°¸®Àû µð¹ÙÀ̽º ¾çÃø¿¡ ¸ðµÎ Á¦°øµÇ¾î¾ß ÇÑ´Ù. ¶ÇÇÑ, µå¶óÀ̹ö(±×¸®°í ±× µð¹ÙÀ̽º)´Â /dev µð·ºÅ丮¹Ø¿¡ ƯÁ¤ÇÑ À̸§À» Á¦°ø¹Þ´Â´Ù(¿¹¸¦ µé¸é ttyS1 µî). ±× ¾îµå·¹½º¿Í IRQ ¹øÈ£´Â ¹°¸®Àû µð¹ÙÀ̽º¿¡ ÀÇÇØ Ä«µå»óÀÇ ¼³Á¤ ·¹Áö½ºÅÍµé ³»¿¡(¸¶´õº¸µå¿¡ ½ÇÀåµÈ °æ¿ì´Â ¸¶´õº¸µå»óÀÇ Ä¨³»¿¡) ÀúÀåµÈ´Ù. Á¡ÆÛ·Î ¼³Á¤ÇÏ´Â °æ¿ì¿¡´Â, Á¡ÆÛÀÇ Á¶ÇÕ ÀÚü°¡ ¹ö½º ¸®¼Ò½º ¼³Á¤À» µð¹ÙÀ̽ºÀÇ Çϵå¿þ¾î¿¡ ÀúÀå½ÃŰ´Â ¿ªÇÒÀ» ÇÑ´Ù. ÇÏÁö¸¸ PnP ÀÇ °æ¿ì¿¡´Â ´ëºÎºÐ PC ÀÇ Àü¿øÀ» ²ô¸é ¼³Á¤ ·¹Áö½ºÅÍÀÇ µ¥ÀÌÅͰ¡ »ç¶óÁö°Ô µÇ¹Ç·Î, PC ÀÇ Àü¿øÀ» ³ÖÀ» ¶§¸¶´Ù ¸Å¹ø ¹ö½º ¸®¼Ò½º µ¥ÀÌÅ͸¦ °¢ µð¹ÙÀ̽º¿¡ »õ·Î Á¦°øÇÏ¿©¾ß ÇÑ´Ù.

2.9. ¹®Á¦Á¡

PC ÀÇ ¼³°è±¸Á¶»ó IRQ, DMA ä³Î, I/O ¾îµå·¹½º, ¸Þ¸ð¸® ¿µ¿ªÀÇ ¼ö¿¡´Â Á¦ÇÑÀÌ ÀÖ´Ù. ¸¸ÀÏ PC ÀÇ µð¹ÙÀ̽º ¼ö°¡ ¸î°³ ¾ÈµÇ°í ÀÌµé ¸ðµÎ°¡ Ç¥ÁØÈ­µÈ ¹ö½º ¸®¼Ò½º(°¡·É ƯÁ¤ µð¹ÙÀ̽º´Â ƯÁ¤ÇÑ I/O ¾îµå·¹½º¿Í IRQ ¹øÈ£¸¦ °¡Áø´Ù´Â ½ÄÀÇ Ç¥ÁØ)¸¦ °¡Á³´õ¶ó¸é, µð¹ÙÀ̽º µå¶óÀ̹ö¸¦ µð¹ÙÀ̽º¿¡ ¿¬°è½Ãų ¶§ ¾Æ¹«·± ¹®Á¦µµ ¾ø¾úÀ» °ÍÀÌ´Ù. ±×·¨´õ¶ó¸é PC »óÀÇ °¢ µð¹ÙÀ̽º´Â ´Ù¸¥ µð¹ÙÀ̽º¿Í Ãæµ¹ÇÏÁö ¾Ê´Â °íÁ¤µÈ ¸®¼Ò½º¸¦ °¡Á³À»Å×´Ï ¸»ÀÌ´Ù. ¼­·Î ´Ù¸¥ µÎ µð¹ÙÀ̽º°¡ °°Àº I/O ¾îµå·¹½º¸¦ °®°Å³ª °°Àº IRQ ¸¦ °®´Â ÀÏ µîµµ ¾ø¾úÀ» °ÍÀÌ´Ù. °¢ µð¹ÙÀ̽º µå¶óÀ̹öµéÀº °¢ÀÚÀÇ °íÀ¯ÀÇ ¾îµå·¹½ºµé°ú IRQ µîµîÀ» ¾Æ¿¹ ÇÁ·Î±×·¥¼Ó¿¡ »õ°Ü³Ö¾î¹ö·ÈÀ» Å×°í, ±×·¸°Ô¸¸ µÇ¾ú´õ¶ó¸é ¸ðµç °ÍÀÌ ÇÑ°á °£´ÜÇßÀ» °ÍÀÌ´Ù.

±×·¯³ª Çö½ÇÀº ±×·¸Áö ¸øÇÏ´Ù. ¿À´Ã³¯¿¡´Â µð¹ÙÀ̽ºµéÀÇ Á¾·ùµµ ¹«Ã´ ¸¹¾Æ¼­ Ãæµ¹µµ ºó¹øÇÒ »Ó´õ·¯, °°Àº Á¾·ùÀÇ µð¹ÙÀ̽º¸¦ ¿©·¯°³ »ç¿ëÇØ¾ßÇÒ °æ¿ìµµ »ý±ä´Ù. ¿¹¸¦ µé¸é, ¼­·Î ´Ù¸¥ µð½ºÅ© µå¶óÀ̺긦 ¿©·¯´ë ´Þ°Å³ª, ³×Æ®¿÷ Ä«µåµµ ¸î °³¾¿À̳ª ´Þ¾Æ¾ß ÇÏ´Â µîÀÇ °æ¿ìµµ ÀÖ´Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ÀÌÀ¯¿¡¼­, µð¹ÙÀ̽º´Â ¾î¶°ÇÑ ¾îµå·¹½º³ª IRQ µîÀ¸·Îµµ ¼¼ÆÃ°¡´ÉÇØ¼­ Ãæµ¹À» ÇÇÇÒ ¼ö ÀÖ´Â À¯¿¬¼ºÀ» °®Ãß¾î¾ß ÇÑ´Ù. ÇÏÁö¸¸ ¸î¸î IRQ µé°ú ¾îµå·¹½ºµéÀº »ç½Ç»ó Ç¥ÁØÀÌ µÈ °Íµµ ÀÖ´Ù. °¡·É Ŭ·°À̳ª Űº¸µå¿¡ ´ëÇÑ IRQ ¹× ¾îµå·¹½ºµéÀÌ ±×·¯ÇÏ´Ù. ÀÌ·± µð¹ÙÀ̽ºµéÀº ¸®¼Ò½º ¼³Á¤¿¡ ÀÖ¾î À¯¿¬¼ºÀÌ ÇÊ¿ä¾ø´Ù.

¹ö½º ¸®¼Ò½º ÇÒ´ç¿¡¼­ÀÇ Ãæµ¹ ¹®Á¦¿Ü¿¡, µð¹ÙÀ̽º µå¶óÀ̹ö¿¡°Ô µå¶óÀ̹öÀÇ ¹ö½º ¸®¼Ò½º¸¦ À߸ø °¡¸£ÃÄÁ൵ ¹®Á¦°¡ »ý±ä´Ù. ¿¹¸¦ µé¸é, µð¹ÙÀ̽º´Â IRQ 5 ·Î ¼³Á¤µÇ¾î Àִµ¥ ½Ç¼ö·Î ´ç½ÅÀÌ ¼³Á¤ ÆÄÀÏ¿¡ IRQ 4 ¶ó°í Àû¾î³õ´Â °æ¿ìÀÌ´Ù. À̰͵µ ¹ö½º ¸®¼Ò½º ÇÒ´ç ¿¡·¯ÀÇ ÇÑ À¯ÇüÀÌ´Ù.

¹ö½º ¸®¼Ò½ºµéÀ» Á¦´ë·Î ÇÒ´çÇß´Ù¸é, ¹°¸®ÀûÀÎ Çϵå¿þ¾î¿Í ±×¿¡ ´ëÀÀÇÏ´Â µð¹ÙÀ̽º µå¶óÀ̹ö »çÀÌ¿¡ Åë½Å ä³ÎÀÌ È®¸³µÈ´Ù. ¿¹¸¦ µé¸é, ¾î¶² ¹üÀ§ÀÇ I/O ¾îµå·¹½º ¿µ¿ª(¸®¼Ò½º)ÀÌ µð¹ÙÀ̽º µå¶óÀ̹ö¿Í Çϵå¿þ¾î ¾çÃø¿¡ ÇÒ´çµÇ¾îÁø °æ¿ì, ¾çÀÚ°£¿¡ ÀϹæÅëÇàÀÇ Åë½Å ä³ÎÀÌ È®¸³µÈ´Ù. µå¶óÀ̹ö ÃøÀº µð¹ÙÀ̽º¿¡°Ô ¸í·É¾î¿Í Á¤º¸¸¦ º¸³¾ ¼ö ÀÖ´Ù. »ç½ÇÀº µå¶óÀ̹öÃø¿¡¼­ µð¹ÙÀ̽ºÀÇ ·¹Áö½ºÅ͸¦ Àоî Á¤º¸¸¦ ¾ò¾î¿À´Â ¹æ¹ýµµ °¡´ÉÇϹǷÎ, ÀϹæÅëÇຸ´Ù´Â Á¶±Ý ´õ ³ªÀº °ÍÀ̶ó ÇÒ¼ö ÀÖ´Ù. ±×·¯³ª, ÀÌ ¹æ¹ýÀ¸·Î´Â µð¹ÙÀ̽ºÃø¿¡¼­ ¸ÕÀú Åë½ÅÀ» ½ÃÀÛÇÒ ¼ö´Â ¾ø´Ù. µð¹ÙÀ̽ºÂÊ¿¡¼­ ¸ÕÀú Åë½ÅÀ» °³½ÃÇÏ·Á¸é µð¹ÙÀ̽º´Â ÀÚ½ÅÀÇ µå¶óÀ̹ö¿¡°Ô ÀÎÅÍ·´Æ®¸¦ º¸³¾¼ö ÀÖ´Â IRQ ¸¦ °¡Á®¾ß ÇÑ´Ù. ÀÌ »óŰ¡ µÇ¾î¾ß ºñ·Î¼Ò µå¶óÀ̹ö³ª ¹°¸®Àû µð¹ÙÀ̽º ¾î´À ÂÊÀÌµç ¸ÕÀú Åë½ÅÀ» ½ÃÀÛÇÒ ¼ö ÀÖ´Â ¾ç¹æÇâ Åë½Å ä³ÎÀÌ ±¸ÃàµÇ´Â °ÍÀÌ´Ù.

2.10. ½Ã¸®¾ó Æ÷Æ®¿¡ ²ÈÀº µð¹ÙÀ̽º¸¦ PnP °¡ ã¾Æ³½´Ù

½Ã¸®¾ó Æ÷Æ®¿¡ ÄÉÀ̺í·Î Á¢¼ÓµÈ ¿ÜºÎ µð¹ÙÀ̽ºµé(¿¹¸¦ µé¸é ¿ÜÀåÇü ¸ðµ©)µµ Ç÷¯±× ¾Øµå Ç÷¹À̶ó°í ºÒ¸®¿î´Ù. ¹ö½º ¸®¼Ò½º(IRQ ¿Í I/O ¾îµå·¹½º)¸¦ ÇÊ¿ä·Î ÇÏ´Â °ÍÀº ½Ã¸®¾ó Æ÷Æ®ÀÏ »ÓÀ¸·Î¼­, ½Ã¸®¾ó Æ÷Æ®¿¡ ²È´Â µð¹ÙÀ̽ºµé¿¡°Ô´Â ¹ö½º ¸®¼Ò½º°¡ ÇÒ´çµÇÁö ¾Ê´Â´Ù. ±×·¸±â ¶§¹®¿¡ »ç½Ç ÀÌ·± ¿ÜºÎ µð¹ÙÀ̽º¿¡°Ô´Â PnP °¡ ÇÊ¿ä¾ø´Â °ÍÀÌ´Ù. ±×·³¿¡µµ ºÒ±¸Çϰí, ±×·± ¿ÜºÎ ½Ã¸®¾ó µð¹ÙÀ̽º¿¡ ´ëÇØ¼­µµ PnP ¸í¼¼¼­°¡ ±ÔÁ¤µÇ¾î ÀÖ´Ù.

PnP ¿î¿µÃ¼Á¦´Â ÀÌ·¯ÇÑ ¿ÜºÎ µð¹ÙÀ̽ºµµ °ËÃâÇÏ¿© ±× µð¹ÙÀ̽ºÀÇ ¸ðµ¨ ¹øÈ£µîÀ» Àо´Ù. ±×¿¡ ÀÇÇØ ÇØ´ç µð¹ÙÀ̽º¿ë µð¹ÙÀ̽º µå¶óÀ̹ö¸¦ ã¾Æ³¾ ¼ö ÀÖÀ¸¹Ç·Î, ¿¹¸¦ µé¸é /dev/ttyS1 »ó¿¡ ¾î¶² µð¹ÙÀ̽º°¡ ºÙ¾îÀÖ´ÂÁö ´ç½ÅÀÌ Á÷Á¢ ÀÀ¿ëÇÁ·Î±×·¥¿¡°Ô ¾Ë·ÁÁÖÁö ¾Ê¾Æµµ µÇ°ÔµÈ´Ù. ÀÀ¿ë ÇÁ·Î±×·¥¿¡°Ô µð¹ÙÀ̽º°¡ Á¢¼ÓµÇ¾îÀÖ´Â ½Ã¸®¾ó Æ÷Æ®¸¦ (¼³Á¤ ÆÄÀϵîÀ» »ç¿ëÇØ) ¼Õ¼ö ¾Ë·ÁÁÖ´Â ¹æ¹ýµµ °¡´ÉÇϹǷΠ(µð¹ÙÀ̽ºÀÇ ¸ðµ¨ ¹øÈ£¸¦ ÁöÁ¤ÇÏ´Â °Íµµ °¡´ÉÇÒÁö ¸ð¸¥´Ù), PnP ÀÇ ÀÌ "½Ã¸®¾ó Æ÷Æ®" ±â´ÉÀÌ ¹Ýµå½Ã ÇÊ¿äÇÑ °ÍÀº ¾Æ´Ï´Ù. ¸®´ª½º°¡ ÀÌ ±â´ÉÀ» Áö¿øÇÏ´ÂÁö´Â ¸ð¸£°Ú´Ù. ??