·Î±×ÀÎ ¤Ó ȸ¿ø°¡ÀÔ ¤Ó Àå¹Ù±¸´Ï ¤Ó °í°´¼¾ÅÍ ¤Ó ¸¶ÀÌÆäÀÌÁö ¤Ó ȸ»ç¼Ò°³
kangcom
Àüü
Home >   >   > 

Concurrent Programming on Windows Çѱ¹¾îÆÇ

 [À©µµ¿ì ½Ã½ºÅÛ ÇÁ·Î±×·¡¹Ö ½Ã¸®Áî 11]
   
ÁöÀºÀÌ Á¶ ´õÇÇ / ȲÁøÈ£ ¿ª   |   ÃâÆÇ»ç ¿¡ÀÌÄÜ  |   ¹ßÇàÀÏ 2012³â 03¿ù 30ÀÏ
 
Ŭ¸¯ÇϽøé Å« µµ¼­À̹ÌÁö¸¦ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
ÆÇ¸Å°¡ 50,000¿ø ¡æ 45,000¿ø 10%
¸¶Àϸ®Áö 5% 2,500¿ø
¹ßÇàÀÏ 2012-03-30
ISBN 8960772887 |  9788960772885
±âŸÁ¤º¸ ¹ø¿ª¼­ | 1048ÂÊ | ÀϹÝ
¿¹»óÃâ°íÀÏ 1~2ÀÏ À̳» (±Ù¹«ÀϱâÁØ)
¹è¼Ûºñ ¹«·á¹è¼Û
   
¿î¿µÃ¼°è(OS)
Á¾ÇÕÁö¼ö 1p 630 À§
   
ÀÌ Ã¥ÀÇ ¿ø¼­
  Concurrent Programming on Windows
Addison-Wesley Professional | Joe Duffy
 

[ÃâÆÇ»ç¼­Æò]

µ¿½Ã¼º∙º´·Ä¼ºÀº °á±¹ ¸ðµç ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ¿¡°Ô Áß¿äÇÑ ºÎºÐÀ̸ç, ¿î¿µÃ¼Á¦¿¡¼­ ½ÃÀÛÇØ ¶óÀ̺귯¸®¸¦ °ÅÃÄ ¾ÖÇø®ÄÉÀÌ¼Ç ÀÚü±îÁö ¿µÇâÀÌ ¹ÌÄ£´Ù. ÀÌ Ã¥¿¡¼­´Â µ¿½Ã¼º¿¡ ´ëÇÑ ÀÌÇØ¸¦ µ½±â À§ÇØ µ¿½Ã¼ºÀÇ °³³äÀ» ¼Ò°³Çϰí, Ç÷§Æû Ư¡, ³»ºÎ µ¿ÀÛ, API¿¡ °üÇØ »ó¼¼ÇÏ°Ô ±â¼úÇÑ´Ù. ±×¸®°í µ¿½Ã¼º ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÏ´Â º´·Ä ÇÁ·Î±×·¡¹Ö ½Ã¿¡ ³ªÅ¸³ª´Â °øÅë ÆÐÅϰú ÃÖÀûÀÇ ½ÇÇà, ¾Ë°í¸®Áò, µ¥ÀÌÅÍ ±¸Á¶¸¦ ¼³¸íÇϰí, ÀÌ·± ³»¿ëÀ» ¹ÙÅÁÀ¸·Î Àüü ½Ã½ºÅÛ ±¸Á¶¿Í ÀÚÁÖ ¹ß»ýÇÏ´Â ÇÁ·Î¼¼½º¿¡¼­ Áß¿äÇÑ ³»¿ëÀ» ´Ù·é´Ù.


< ¼Ò°³ >

ÀúÀÚ Á¶ ´õÇÇ´Â µ¿½Ã¼º°ú Çϵå¿þ¾î º´·Ä¼ºÀÇ ÃÖÀû À̵æÀ» ¾òÀ» ¼ö ÀÖ´Â ¼ÒÇÁÆ®¿þ¾î ÀÛ¼º ¹æ¹ýÀ» ¼³¸íÇÏ´Â µµÀüÀ» Çß´Ù. ÀÌ Ã¥¿¡¼­ ±×´Â ÁÖ·Î À©µµ¿ìÀÇ C#°ú C++À» »ç¿ëÇØ Å« ±Ô¸ðÀÇ º´·Ä ÇÁ·Î±×·¥À» ¼³°èÇϰí, ±¸ÇöÇϰí, À¯ÁöÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.

´õÇÇ´Â ¾ÖÇø®ÄÉÀ̼ǰú ½Ã½ºÅÛ, ¶óÀ̺귯¸® °³¹ßÀÚ¿¡°Ô ¸ÖƼÄÚ¾î ÇÁ·Î¼¼¼­¸¦ À§ÇÑ È¿À²ÀûÀÌ°í ¾ÈÀüÇÑ Äڵ带 ÀÛ¼ºÇÏ´Â µ¥ ÇÊ¿äÇÑ µµ±¸¿Í ±â¼úÀ» Àü´ÞÇÏ´Â °ÍÀ» ¸ñÇ¥·Î ÇÑ´Ù. ÀÌ·± ¸ñÀûÀº µ¿½Ã¼ºÀÌ ³»ÀçµÇ°í »ç¿ëÇϱ⠽¬¿î ¼­¹ö ¾ÖÇø®ÄÉÀ̼ǰú °è»ê À§ÁÖÀÇ À̹ÌÁö Á¶ÀÛ, ±ÝÀ¶ ºÐ¼®, ½Ã¹Ä·¹À̼Ç, AI ¾Ë°í¸®Áò µîÀÇ ÇÁ·Î±×·¥ÀÇ Á¾·ù»Ó¸¸ ¾Æ´Ï¶ó, ´õ ¸¹Àº ³ë·ÂÀ» ¹ÙÅÁÀ¸·Î µ¿½Ã¼ºÀ» »ç¿ëÇØ ¼Óµµ¸¦ Çâ»ó½Ãų ¼ö ÀÖ´Â ¼öÇÐ ¶óÀ̺귯¸®¿Í Á¤·Ä ·çƾ, º¸°í¼­ »ý¼º, XML Á¶ÀÛ, ½ºÆ®¸² ÇÁ·Î¼¼½Ì ¾Ë°í¸®Áò µîÀÇ ¹®Á¦¿¡µµ Áß¿äÇÏ´Ù.

ÀÌ Ã¥Àº 4°³ÀÇ ÁÖ¿ä ºÎºÐÀ¸·Î ±¸¼ºÇß´Ù. ù ¹øÂ°·Î ³ôÀº ¼öÁØ¿¡¼­ µ¿½Ã¼ºÀ» ¼³¸íÇϰí, ´ÙÀ½Àº ±Ùº»ÀûÀÎ Ç÷§Æû Ư¡°ú ³»ºÎ ÀÛ¾÷¿¡ ÁýÁßÇÑ´Ù. ´ÙÀ½À¸·Î µ¿½Ã¼º ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÒ ¶§ ¹ß»ýÇÏ´Â °øÅëÀûÀÎ ÆÐÅϰú ÃÖÀûÀÇ ½Ç½À, ¾Ë°í¸®Áò, µ¥ÀÌÅÍ ±¸Á¶¸¦ ¼³¸íÇÏ´Â ºÎºÐÀ» Æ÷ÇÔÇÑ´Ù. ¸¶Áö¸· ºÎºÐÀº µ¿½Ã¼º ÇÁ·Î±×·¡¹ÖÀÇ ÀϹÝÀûÀÎ ½Ã½ºÅÛ ¾ÆÅ°ÅØÃ³¿Í ÇÁ·Î¼¼½º °ü·Ã ³»¿ëÀ» ´Ù·é´Ù.


¡Ú ÀÌ Ã¥ÀÇ ±¸¼º ¡Ú

ÀÌ Ã¥Àº ³× °³ÀÇ ºÎºÐÀ¸·Î ±¸¼ºÇß´Ù. ¡®1ºÎ °³³ä¡¯Àº ¾î´À ÇϳªÀÇ ÁÖÁ¦¸¦ ±í°Ô ÆÄ°íµéÁö ¾Ê°í ³ôÀº ¼öÁØÀÇ µ¿½Ã¼ºÀ» ¼Ò°³ÇÑ´Ù. ¡®2ºÎ ¸ÞÄ¿´ÏÁò¡¯Àº Ç÷§Æû Ư¡, ³»ºÎ µ¿ÀÛ, API »ó¼¼ ¼³¸í¿¡ °üÇØ ¹Ù·Î ÃÊÁ¡À» ¸ÂÃè´Ù. ¡®3ºÎ Å×Å©´Ð¡¯Àº µ¿½Ã¼º ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÒ ¶§ ³ªÅ¸³ª´Â °øÅë ÆÐÅϰú ÃÖÀûÀÇ ½ÇÇà, ¾Ë°í¸®Áò, µ¥ÀÌÅÍ ±¸Á¶¸¦ ¼³¸íÇÑ´Ù. ¡®4ºÎ ½Ã½ºÅÛ¡¯Àº Àüü ½Ã½ºÅÛ ±¸Á¶¿Í ÀÚÁÖ ¹ß»ýÇÏ´Â ÇÁ·Î¼¼½º¿¡¼­ Áß¿äÇÑ ³»¿ëÀ» ´Ù·é´Ù. ¿©±â¼­´Â ¿¬¼Ó¼ºÀÌ ÀÖ´Ù. ¡®°³³ä¡¯Àº ÀϹÝÀûÀÎ µ¿½Ã¼ºÀ» ±âº»ÀûÀ¸·Î ÀÌÇØÇÏ°Ô µ½±â ¶§¹®¿¡ ù ¹øÂ°´Ù. ¡®Å×Å©´Ð¡¯À» ÀÌÇØÇÏ´Â °ÍÀº ¡®¸ÞÄ¿´ÏÁò¡¯¿¡ ´ëÇÑ È®½ÇÇÑ ÀÌÇØ°¡ ¾øÀ¸¸é ¾î·Á¿ï °ÍÀ̸ç, ºñ½ÁÇÏ°Ô ½ÇÁ¦ ¡®½Ã½ºÅÛ¡¯À» ¸¸µå´Â °ÍÀº ³ª¸ÓÁö¸¦ ÀÌÇØÇÏÁö ¾Ê°í¼­´Â ºÒ°¡´ÉÇÏ´Ù. ¸¶Áö¸·¿¡ µÎ °³ÀÇ ºÎ·Ïµµ ÀÖ´Ù.


¡Ú ÀÌ Ã¥¿¡ ½ñ¾ÆÁø °¢°èÀÇ Âù»ç ¡Ú

ÇÙ½É ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ±â¼úÀÇ Ã¥ÀÓÀÚµé°ú °ü¸®ÀÚµéÀÇ Áö¿øÀ» ¹Þ¾Æ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿Í Å©°Ô´Â °³¹ßÀÚ Ä¿¹Â´ÏƼ¿¡¼­ ¼±µµÀûÀÎ ¼ÒÇÁÆ®¿þ¾î ¼³°èÀÚ¿Í °³¹ßÀÚµéÀÌ »ê¾÷°è¿¡¼­ °¡Àå ÅëÂû·Â ÀÖ´Â Àú¼úÀ» ÇÕÃijõÀº Ç®À» Çü¼ºÇß´Ù.
- µ· ¹Ú½º(Don Box), ¼³°èÀÚ, ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®

ÀÌ Ã¥Àº Àü¹®ÀûÀÎ ´å³Ý °³¹ßÀÚ¿¡°Ô ÈǸ¢ÇÑ ÀÚ¿øÀÌ´Ù. ÂüÁ¶¿Í ¹æ¹ý¿¡ °üÇØ Àü¹®°¡ÀûÀÎ ½Ã°¢¿¡¼­ ¸ðµç ±âº»ÀûÀÎ ³»¿ëÀ» ´Ù·é´Ù. ÀÌ ½Ã¸®ÁîÀÇ Ã¥µéÀº Áö½Ä ±â¹Ý°ú Àü¹®¼ºÀ» ÆÇ´Ü·Â ÀÖ°Ô È®ÀåÇÏ·Á°í ÇÏ´Â »ç¶÷µéÀ» À§ÇÑ Çʵ¶¼­´Ù.
- Á¸ ¸ù°í¸Þ¸®(John Montgomery), ±×·ì ÇÁ·Î±×·¥ °ü¸® Ã¥ÀÓÀÚ, ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® °³¹ßÀÚ ±×·ì

¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ´å³Ý ½Ã¸®Áî´Â ´å³Ý ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ Á¤º¸¸¦ ¾òÀ» Çʿ䰡 ÀÖ´Â °³¹ßÀÚ¸¦ À§ÇÑ ÇÙ½ÉÀûÀÎ Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. ÀÌ ½Ã¸®ÁîÀÇ ÀúÀÚµéÀº ±â¼úÀ» â½ÃÇÑ ÇÙ½É Çõ½ÅÀÚ Áß¿¡ ¼±Åõưí, °¡Àå Á¸°æ¹Þ´Â Âü¿©ÀÚ´Ù.
- ºê·¡µå ¿¡À̺귳Áî(Brad Abrams), ±×·ì ÇÁ·Î±×·¥ ¸Å´ÏÀú, ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®

10³â Àü °øÅë ¾ð¾î ·±Å¸ÀÓ(CLR, Common Language Runtime)¿¡ ½º·¹µå Áö¿øÀ» Ãß°¡ÇÑ ÀÌÈÄ·Î µ¿½Ã¼º¿¡ ¸Å·áµÆ´Ù. ±×·Î ÀÎÇØ µ¿½Ã¼º ºÐ¾ßÀÇ ¼¼°èÀûÀÎ Àü¹®°¡ÀÎ Á¶¸¦ ¸¸³ª±âµµ Çß´Ù. ¿äÁò µ¿½Ã¼ºÀº ½ÇÁ¦ÀûÀ¸·Î ¸ðµç °³¹ßÀÚ¿¡°Ô ÀÖ¾î ù ¹øÂ° °ü½É»ç´Ù. Á¶ÀÇ Ã¥¿¡ °¨»çÇÑ´Ù. À̰ÍÀº ¿ªÀÛÀ̸ç, ´Ù°¡¿Ã ¼ö³â µ¿¾È ÀÐÈú Ã¥ÀÌ´Ù.
- Å©¸®½º ºê·ë(Chris Brumme) / ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ À¯¸íÇÑ ¿£Áö´Ï¾î

¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ °øÅë ¾ð¾î ·±Å¸ÀÓ ÆÀ¿¡¼­ ÇÔ²² ÀÏÇÒ ¶§ Á¶¸¦ ¸¸³µ´Ù. ±× ´ç½Ã ¿ì¸®´Â ½º·¹µå¿¡ °üÇØ ¸¹Àº Åä·ÐÀ» ÇßÀ¸¸ç, ±×´Â ºÐ¸í ³ªÃ³·³ ÀÌ ÁÖÁ¦¿¡ °üÇØ ¿­Á¤ÀûÀ̾ú´Ù. ±× ÈÄ Á¶´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ º´·Ä ÄÄÇ»ÆÃ Ç÷§Æû ÆÀÀ¸·Î ¿Å°å°í, ±×°÷¿¡¼­ ½º·¹µå¿¡ °üÇÑ ±×ÀÇ ÁÁÀº ¾ÆÀ̵ð¾î°¡ °á½ÇÀ» ¸Î±âµµ Çß´Ù. ³»°¡ ¹ß°ßÇÑ ½º·¹µå¿Í µ¿½Ã¼º °ü·Ã Ã¥Àº ´ëºÎºÐ ºÎÁ¤È®ÇÑ Á¤º¸¸¦ Æ÷ÇÔÇϰí, ¾ÖÃÊ¿¡ ÄÄÇ»ÅÍ ¾ÆÅ°ÅØÃ³¸¦ Àß ¼³°èÇÑ °æ¿ì¿¡´Â Àý´ë ¹ß»ýÇÏÁö ¾ÊÀ» ÀÌ»óÇÑ ¹®Á¦¸¦ ¾î¶»°Ô ÇØ°áÇÏ´ÂÁö ¼³¸íÇÑ´Ù. Á¶ÀÇ Ã¥Àº ÀÌ·± ¹®Á¦¿¡ °üÇØ ³»°¡ Á¸°æÇÏ´Â ¸î ¾È µÇ´Â Ã¥ Áß ÇϳªÀ̸ç, ÀÌ·± Á¸°æ½ÉÀº Á¶ÀÇ Áö½Ä°ú °æÇè, °³³äÀ» ¼³¸íÇÏ´Â ±×ÀÇ ´É·ÂÀ» ¹ÙÅÁÀ¸·Î ¿ì·¯³­ °ÍÀÌ´Ù.
- Á¦ÇÁ¸® ¸®Ã³(Jeffrey Richter) / Wintellect

µ¿½Ã¼ºÃ³·³ Áß¿äÇϰųª ¹Ì½ºÅ͸®¿¡ °¡·ÁÁø ºÐ¾ß´Â ÄÄÇ»ÆÃ ¿µ¿ª¿¡¼­ ¸î °³ µÇÁö ¾Ê´Â´Ù. ±×°ÍÀº °£´ÜÇÏÁö ¾Ê°í, ´õÇÇ´Â ±×·¸´Ù°í ÁÖÀåÇÏÁöµµ ¾Ê´Â´Ù. ÇÏÁö¸¸ Á¤È®ÇÑ Á¤º¸¿Í ÈǸ¢ÇÑ Á¶¾ðÀ¸·Î ¹«ÀåÇϰí, Àû¾îµµ Á¤È®ÇÏ°í ³ôÀº È®À强À» Á¦°øÇÏ´Â ½Ã½ºÅÛÀ» ¸¸µå´Â °ÍÀº °¡´ÉÇÏ´Ù. ÀÚÁ¸½É ÀÖ´Â ¸ðµç À©µµ¿ì °³¹ßÀÚ´Â ÀÌ Ã¥À» Àоî¾ß ÇÑ´Ù.
- Á¶³ª´Ü ½ºÅ°Æ®(Jonathan Skeet) / Ŭ¸®¾î½ºÀ§ÇÁÆ®(Clearswift)ÀÇ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î

ÀÌ Ã¥¿¡ °üÇØ ³»°¡ ÁÁ¾ÆÇÏ´Â ºÎºÐÀº À©µµ¿ì Ç÷§Æû¿¡¼­ µ¿½Ã¼ºÀÇ ¹üÀ§°¡ Æ÷°ýÀûÀ̰í, ½ÇÁ¦ ¼ÒÇÁÆ®¿þ¾î °³¹ß¿¡ Áï½Ã Ȱ¿ëÇÒ ¸¸Å­ ¸Å¿ì ½ÇÁúÀûÀÎ ±â¼úÀ» º¸¿©Áشٴ Á¡ÀÌ´Ù. Á¶ÀÇ Ã¥Àº µ¿½Ã¼ºÀ» ´Ù·ç´Â ¿ø½Ã Äڵ峪 °ü¸®µÇ´Â ÄÚµåÀÇ À©µµ¿ì ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µå´Â ¸ðµç »ç¶÷ÀÌ ¡®²À¡¯ °¡Á®¾ß¸¸ ÇÏ´Â ÀÚ¿øÀÌ´Ù.
- ½ºÆ¼ºê Å×À̼¼¸®¾Æ(Steve Teixeria) / ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® º´·Ä ÄÄÇ»ÆÃ Ç÷§ÆûÀÇ Á¦Ç° ±¸¼º ¸Å´ÏÀú


ÀÌ Ã¥Àº È¿°úÀûÀÎ º´·Ä ¾ÖÇø®ÄÉÀ̼ÇÀ» ÀÛ¼ºÇÏ´Â µ¥ ÀÌ·ÐÀûÀÎ Áö½Ä°ú ½ÇÁ¦ÀûÀÎ ¾È³»¸¦ ÇÏ´Â ÈǸ¢ÇÑ °¡À̵å´Ù. Á¶ ´õÇÇ´Â À©µµ¿ì¿¡¼­ ¿¹¼úÀûÀÎ µ¿½Ã¼º ¾ÖÇø®ÄÉÀ̼ÇÀ» °³¹ßÇÏ´Â ¶Ù¾î³­ Àü¹®°¡ÀÏ »Ó¸¸ ¾Æ´Ï¶ó, ¿¹¼úÀûÀÎ ÁýÇÊ¿¡ ÀÖ¾î Ãæ½ÇÇÑ ÇлýÀÌ´Ù. ÀÌ Ã¥¿¡¼­ ±×´Â °¡Ä¡ ÀÖ´Â °ÍÀ» ¸¸µé±â À§ÇØ µÎ °¡Áö ±â¼úÀ» Á¶ÇÕÇßÀ¸¸ç, °³¹ßÀÚÀÇ ¼ÕÀÌ ´ê´Â ¾îµð¿¡¼­°Ç ¿À·§µ¿¾È ÃÖ°í°¡ µÉ ¿î¸íÀÌ´Ù.
- ½ºÆ¼ºì Åä¿ó(Stephen Toub) / ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ º´·Ä ÄÄÇ»ÆÃ Ç÷§ÆûÀÇ ÇÁ·Î±×·¥ °ü¸®ÀÚ

Ĩ µðÀÚÀ̳ʴ °³º° ĨÀ» ´õ ºü¸£°Ô ÇÏ´Â ¹æ¹ýÀ» ´Ù ½á¹ö·È±â ¶§¹®¿¡ º´·Ä ÄÄÇ»ÅÍ ¿ë·®À» Ãß°¡ÇÏ´Â ¹æÇâÀ¸·Î À̵¿Çß´Ù. ¸ÖƼÄھ °¡Áø PC´Â ÀÌÁ¦ ÈçÇÏ´Ù. ¿ì¸®´Â Çâ»óµÈ ¼º´ÉÀÌ ´õ¿í ºü¸¥ ĨÀ¸·ÎºÎÅÍ ¿À´Â °ÍÀÌ ¾Æ´Ï¶ó µ¿½Ã¼ºÀ» ÀÌ¿ëÇÑ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚÀÇ ´É·Â¿¡¼­ ¿À´Â º¯°îÁ¡¿¡ ¼­ÀÖ´Ù. º´·Ä ÇÁ·Î±×·¡¹ÖÀÇ °³³ä°ú º´·Ä Äڵ带 ¾î¶»°Ô ÀÛ¼ºÇÏ´ÂÁö¿¡ ´ëÇÑ ÀÌÇØ´Â ¼º°øÀûÀÎ ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÏ´Â µ¥ ÀÖ¾î Áß¿äÇÑ ºÎºÐÀÌ µÆ´Ù. ÀÌ Ã¥¿¡¼­ Á¶ ´õÇÇ´Â ±âÃʺÎÅÍ °í±Þ ±â¼ú±îÁö ¾Æ¿ì¸£´Â µ¿½Ã¼ºÀÇ °³³äÀ» ÈǸ¢È÷ ¼ÒÈ­Çß´Ù. ¾Ë°í¸®Áò°ú ÇϺΠÇϵå¿þ¾î¿ÍÀÇ »óÈ£ÀÛ¿ë¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº º¹ÀâÇÑ ÁÖÁ¦¸¦ ¸Å¿ì ÀÌÇØÇϱ⠽±°Ô ¸¸µé¾ú´Ù. ÀÌ Ã¥Àº À©µµ¿ì¿¡¼­ µ¿½Ã¼º ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÒ ¶§ ¿·¿¡ µÑ ÈǸ¢ÇÑ Áöħ¼­´Ù.
- Á¦À̽¼ Àé´õ(Jason Zander) / ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ºñÁÖ¾ó ½ºÆ©µð¿ÀÀÇ ÃѰý ¸Å´ÏÀú


¡Ú ÃßõÀÇ ±Û ¡Ú

ÄÄÇ»ÅÍ »ê¾÷Àº ´Ù½Ã ÇÑ ¹ø ±³Â÷·Î¿¡ ¼­ÀÖ´Ù. ´Ã¾î³ª´Â ¼ÒÇÁÆ®¿þ¾îÀÇ º¹À⼺°ú ÇÔ²² »õ·Î¿î ¸ÖƼÄÚ¾î ÇÁ·Î¼¼¼­ ÇüÅÂÀÇ Çϵå¿þ¾î µ¿½Ã¼ºÀº ±â¼ú »ê¾÷ÀÌ ±âº»ÀûÀ¸·Î Çö´ë ÄÄÇ»ÅÍÀÇ ¾ÆÅ°ÅØÃ³¿Í ±×¿¡ µû¸¥ ¼ÒÇÁÆ®¿þ¾î °³¹ß ÆÐ·¯´ÙÀÓ ¸ðµÎ¸¦ Àç°íÇÏ°Ô ÇÒ °ÍÀÌ´Ù.

Áö³­ ¼ö½Ê ³â µ¿¾È ÄÄÇ»ÅÍ´Â ±âº»ÀûÀÎ °è»ê ¸ðµ¨ÀÇ ±Ùº»ÀûÀÎ º¯È­ ¾øÀÌ ±âÇϱ޼öÀûÀÎ ¼º´É°ú ¿ë·®ÀÇ Áõ°¡¿Í ÇÔ²² ¾Æ¹« ¹®Á¦¾øÀÌ ¹ßÀüÇß´Ù. Çϵå¿þ¾î´Â ¹«¾îÀÇ ¹ýÄ¢(Moore's Law)À» µû¶úÀ¸¸ç, Ŭ·Ï ¼Óµµ´Â Áõ°¡Çß°í, ¼ÒÇÁÆ®¿þ¾î´Â ²÷ÀÓ¾ø´Â Çâ»óµÈ ¼º´ÉÀ» ÀÌ¿ëÇÏ°Ô ÀÛ¼ºµÆÀ¸¸ç, Á¾Á¾ Çϵå¿þ¾î Çâ»ó ¼Óµµº¸´Ù ¾Õ¼­°¬´Ù. Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾îÀÇ °ø»ý °ü°è´Â ÃÖ±Ù±îÁö Á¶±Ýµµ ¼ö±×·¯µéÁö ¾Ê°í °è¼Ó µÆ´Ù. ¹«¾îÀÇ ¹ýÄ¢Àº ¿©ÀüÈ÷ ¿µÇâ·ÂÀÌ ÀÖÁö¸¸, Ŭ·Ï ¼Óµµµµ »óÀÀÇØ Áõ°¡ÇÒ °ÍÀ̶ó´Â À̸§ ¾ø´Â ¹ýÄ¢Àº »ç¶óÁ³´Ù.

Çϵå¿þ¾îÀÇ ¹æÇ⼺¿¡ ÀÖ¾î ÀÌ·± º¯È­ÀÇ ÀÌÀ¯´Â ¹öŬ¸®¿¡ Àִ Ķ¸®Æ÷´Ï¾Æ ´ëÇÐÀÇ µ¥À̺ñµå ÆÐÅͽ¼(David Patterson)¿¡ ÀÇÇØ Ç¥ÇöµÈ °£´ÜÇÑ ¼ö½ÄÀ¸·Î ¿ä¾àµÉ ¼ö ÀÖ´Ù.

ÆÄ¿ö À庮 + ¸Þ¸ð¸® À庮 + ILP À庮 = ¿¬¼âÀûÀÎ ¼º´ÉÀÇ Å« À庮

CPU ÆÄ¿ö´Â Ŭ·Ï ¼Óµµ¿¡ ½ÇÁúÀûÀ¸·Î ¿µÇâÀ» ¹ÌÄ¡´Â Ŭ·Ï Á֯ļö¿¡ ºñ·ÊÇØ Áõ°¡ÇÑ´Ù. ¿­À» ¼Ò¸êÇÏ´Â ´É·ÂÀº ½ÇÁúÀûÀ¸·Î ¹°¸®ÀûÀÎ ÇѰ迡 µµ´ÞÇß´Ù. ±× °á°ú ±²ÀåÇÑ(±×¸®°í ºñ½Ñ) ³Ã°¢ ±â¼ú(¶Ç´Â ¹°Áú ±â¼úÀÇ µ¹ÆÄ±¸)ÀÌ ¾ø´Ù¸é Ŭ·Ï ¼ÓµµÀÇ Áõ°¡´Â ºÒ°¡´ÉÇÏ´Ù. À̰ÍÀÌ ¼ö½Ä¿¡¼­ ¡®ÆÄ¿ö À庮¡¯ ºÎºÐÀÌ´Ù. ¸Þ¸ð¸® ¼º´É °³¼±Àº Á¡Á¡ ´õ ÇÁ·Î¼¼¼­ ¼º´ÉÀÇ À̵濡 ¹ÌÄ¡Áö ¸øÇÑ´Ù. À̰ÍÀº ¸ÞÀÎ ¸Þ¸ð¸®¿¡ Á¢±ÙÀÌ ¿ä±¸µÇ´Â CPU »çÀÌŬÀÇ ¼ö´Â °è¼ÓÇØ¼­ Áõ°¡ÇÏ°Ô ÇÒ °ÍÀÌ´Ù. À̰ÍÀÌ ¡®¸Þ¸ð¸® À庮¡¯ÀÌ´Ù. ¸¶Áö¸·À¸·Î Çϵå¿þ¾î ¿£Áö´Ï¾î´Â ÇöÀç ¸í·É¾îÀÇ °á°ú¸¦ ¾Ë±â Àü¿¡ ¹Ì¸® ÁüÀÛÇØ ¸í·É¾î¸¦ ½ÇÇàÇÏ°Ô ÇÔÀ¸·Î½á ¿¬¼ÓÀûÀÎ ¼ÒÇÁÆ®¿þ¾î ¼º´ÉÀ» Áõ°¡½ÃÄ×´Ù. À̰ÍÀº ¸í·É¾î ·¹º§ º´·Ä¼º(ILP, Instruction Level Parallelism)À̶ó°í ÇÑ´Ù. ILPÀÇ ¼º´É Çâ»óÀº ÁüÀÛÇÏ±â ¾î·Æ°í, º¹À⼺Àº Àü·Â ¼Òºñ¸¦ Áõ°¡½ÃŲ´Ù. °á°úÀûÀ¸·Î ILPÀÇ °³¼±Àº ¸ØÃá »óÅÂÀ̸ç, ÀÌ´Â ¡®ILP À庮¡¯À̶ó°í ÇÑ´Ù.

±×·¯¹Ç·Î ¿ì¸®´Â º¯°îÁ¡¿¡ µµ´ÞÇß´Ù. ¼ÒÇÁÆ®¿þ¾î »ýŰè´Â ¸ÖƼÄÚ¾î ½Ã½ºÅÛÀ» ´õ Àß Áö¿øÇÏ°Ô ¹ßÀüÇØ¾ß¸¸ Çϰí, ÀÌ·± ÁøÈ­´Â ½Ã°£ÀÌ °É¸± °ÍÀÌ´Ù. ±Þ¼ÓÈ÷ ¹ßÀüÇÏ´Â ÄÄÇ»ÅÍ ¼º´É¿¡¼­ ÇýÅÃÀ» º¸°í, ¡®»õ·Î¿î Çϵå¿þ¾î¿¡¼­ ÇÑ ¹ø ÀÛ¼ºÇÏ°í ´õ »¡¸® ½ÇÇàµÈ´Ù¡¯´Â ÆÐ·¯´ÙÀÓÀ» À¯ÁöÇÏ·Á¸é ÇÁ·Î±×·¡¹Ö Ä¿¹Â´ÏƼ´Â µ¿½Ã¼º ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼³°èÇÏ´Â ¹æ¹ýÀ» ¹è¿ö¾ß¸¸ ÇÑ´Ù. µ¿½Ã¼ºÀÇ ¹æ´ëÇÑ ¼ö¿ë¼ºÀº ºñµ¿½Ã¼º°ú ´À½¼ÇÑ °áÇÕ, Ŭ¶óÀÌ¾ðÆ® ÃøÀÇ º´·Ä¼º, ¼­¹ö ÃøÀÇ Å¬¶ó¿ìµå ÄÄÇ»ÆÃÀ» °¡´ÉÇÏ°Ô ÇÒ °ÍÀÌ´Ù.

À©µµ¿ì¿Í ´å³Ý ÇÁ·¹ÀÓ¿öÅ© Ç÷§ÆûÀº µ¿½Ã¼ºÀ» dzºÎÇÏ°Ô Áö¿øÇÑ´Ù. ÀÌ·± Áö¿øÀº À©µµ¿ì NT¿¡¼­ ¸ÖƼÇÁ·Î¼¼¼­¸¦ Áö¿øÇÑ ÀÌÈÄ·Î 10³â ÀÌ»ó ¹ßÀüÇß´Ù. ½º·¹µå ½ºÄÉÁÙ¸µ ¼º´É°ú µ¿±âÈ­ API(Application Programming Interface), ¸Þ¸ð¸® ±¸Á¶ ÀνÄ(ƯÈ÷ À©µµ¿ì ºñ½ºÅ¸¿¡ Ãß°¡µÈ °Í)ÀÇ °è¼ÓµÈ ¼º´É °³¼±Àº À©µµ¿ì¸¦ Çϵå¿þ¾î µ¿½Ã¼ºÀÇ »ç¿ëÀ» ±Ø´ëÈ­ÇÏ´Â ¿î¿µÃ¼Á¦·Î ¼±ÅÃÇÏ°Ô ÇÑ´Ù. ÀÌ Ã¥Àº ÀÌ·± ¸ðµç ¿µ¿ªÀ» ´Ù·é´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀ» ÅëÇØ ¸ÖƼ½º·¹µå¸¦ »ç¿ëÇϱ⠽ÃÀÛÇÒ ¶§ ±ò²ûÇÑ ¾ÆÅ°ÅØÃ³¿Í ¼³°èÀÇ Á߿伺Àº ¼ÒÇÁÆ®¿þ¾îÀÇ º¹À⼺À» ÁÙÀ̰í À¯Áö º¸¼ö¸¦ °³¼±ÇÏ´Â µ¥ ´ë´ÜÈ÷ Áß¿äÇÏ´Ù. À̰ÍÀº Ç÷§ÆûÀÇ ¼º´É»Ó¸¸ ¾Æ´Ï¶ó ÃÖ°íÀÇ ½ÇÇ༺À» µå·¯³»´Â ¹æ¹ýÀ» ÀÌÇØÇϵµ·Ï °­Á¶ÇÑ´Ù. Á¶´Â ÀÌ Ã¥À» ÅëÇØ ¸ÞÄ¿´ÏÁò°ú ´õºÒ¾î ÃÖ°íÀÇ ½ÇÇ༺À» ¹èÄ¡ÇÏ´Â µ¥ ´ë´ÜÇÑ ÀÏÀ» Çß´Ù.

¸ÖƼÄÚ¾î´Â ÀÌ¹Ì ¸¸µç ¾ÖÇø®ÄÉÀ̼ǿ¡ °³¼±µÈ ¼º´ÉÀ» Á¦°øÇÑ´Ù. ±×·¯³ª ÄÄÇ»ÅͰ¡ »ç¶÷µéÀ» À§ÇØ ¹«¾ùÀ» ÇÒ ¼ö ÀÖ¾î¾ß¸¸ Çϴ°¡¿¡ ´ëÇØ ¿ÏÀüÈ÷ ´Ù¸£°Ô »ý°¢ÇÒ ±âȸµµ Á¦°øÇÑ´Ù. ÄÄÇ»ÅÍ ÆÄ¿öÀÇ °è¼ÓµÈ Áõ°¡´Â »ç¶÷µé¿¡°Ô ´õ¿í Èï¹Ì·Ó°í µµ¿òÀÌ µÇ´Â ¹æ¹ýÀ¸·Î ¸¸µé ¼ö ÀÖ´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» ÁúÀûÀ¸·Î ¹Ù²ã ³õÀ» °ÍÀ̸ç, ÀÌÀü¿¡´Â ÀüÇô ºÒ°¡´ÉÇÑ »õ·Î¿î °ÍµéÀ» ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀÌ·± ÁøÈ­¸¦ ¹ÙÅÁÀ¸·Î ¼ÒÇÁÆ®¿þ¾î´Â ÄÄÇ»ÅÍ¿Í »óÈ£ ÀÛ¿ëÇÏ´Â ¹æ¹ýÀ» ´õ¿í °³ÀÎÀûÀ̰í Àΰ£ÀûÀÎ ¹æ¹ýÀ¸·Î °¡´ÉÇÏ°Ô ÇÒ °ÍÀÌ´Ù. ±×·¯¹Ç·Î ÀÌ Ã¥À» Áñ±â±â ¹Ù¶õ´Ù. À̰ÍÀº À©µµ¿ì Ç÷§Æû¿¡¼­ µ¿½Ã¼º°ú ¸ÖƼÄھ ÀνÄÇÏ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ÀÛ¼ºÇÏ´Â µ¥ ù¹ßÀ» ³»µóµµ·Ï ¾È³»ÇÒ °ÍÀÌ´Ù.

- 2008³â 6¿ù
Å©·¹ÀÌ±× ¸Õµð(Craig Mundie) /¸¶ÀÌÅ©·Î¼ÒÇÁÆ® ¿¬±¸∙Àü·« ÃÖ°í Ã¥ÀÓÀÚ


¡Ú ÀúÀÚ ¼­¹® ¡Ú

³ª´Â 2005³â ¸»Âë ÀÌ Ã¥À» ÁýÇÊÇϱ⠽ÃÀÛÇß´Ù. ±× ´ç½Ã¿¡´Â µà¾ó ÄÚ¾î ÇÁ·Î¼¼¼­°¡ ÀÏ¹Ý °í°´(ÇÁ·Î±×·¡¸Ó°¡ ¾Æ´Ñ)ÀÌ ±¸ÀÔÇÏ´Â ÁÖ·ù PCÀÇ Ç¥ÁØÀ̾ú°í, »ê¾÷°èÀÇ ÀϺΠ»ç¶÷µéÀÌ °ð µéÀÌ´ÚÄ¥ µ¿½Ã¼º ¹®Á¦¿¡ ´ëÇØ ¾ê±âÇϱ⠽ÃÀÛÇß´Ù(Çãºê ¼­ÅÍHerb SutterÀÇ ³í¹®ÀÎ °øÂ¥ Á¡½ÉÀº ³¡³µ´Ù°¡ »ý°¢³­´Ù). ¹°·Ð »ç¶÷µéÀÌ °ÆÁ¤ÇÏ´Â ¹®Á¦´Â °ú°ÅÀÇ ¼ÒÇÁÆ®¿þ¾î°¡ Ãß°¡ÀûÀÎ °è»ê ÆÄ¿ö¸¦ ÀÚ¿¬½º·´°Ô »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇÏ´Â ¹æ¹ýÀ¸·Î ÀÛ¼ºµÇÁö ¾Ê¾Ò´Ù´Â Á¡ÀÌ´Ù. Ŭ·Ï ¼ÓµµÀÇ ³¡¾ø´Â Áõ°¡¿Í´Â ´ëÁ¶µÈ´Ù. ½ÇÁúÀûÀ¸·Î °øÂ¥ Á¡½ÉÀº ¾ø´Â °ÍÀÌ´Ù.

µ¿½Ã¼ºÀº °á±¹ ¸ðµç ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚÀÇ ÀÏ¿¡ Áß¿äÇÑ ºÎºÐÀÌ µÉ °ÍÀ̰í, ÀÌ·± Ã¥Àº Áß¿äÇϰí À¯¿ëÇÑ °ÍÀÌ µÉ °Íó·³ º¸ÀδÙ. 2³â ÈÄ¿¡´Â ¿î¿µÃ¼Á¦¿¡¼­ ½ÃÀÛÇØ ¶óÀ̺귯¸®¸¦ °ÅÃÄ ¾ÖÇø®ÄÉÀÌ¼Ç ÀÚü±îÁö ¿µÇâÀÌ ¹ÌÄ¥ °ÍÀÌ´Ù.

À̰ÍÀº 6°³¿ù°£ ÀÛ¾÷ÇÑ ÀÛÀº ºÎ¾÷ ÇÁ·ÎÁ§Æ®ÀÎ º´·Ä ¾ð¾î ÅëÇÕ Äõ¸®(PLINQ, Parallel Language Integrated Query)ÀÇ ¿øÇüÀ» ¸¶¹«¸® Áþ´ø ½Ã±â¿Í ÀÏÄ¡ÇÑ´Ù. PLINQ ÇÁ·ÎÁ§Æ®´Â µ¿½Ã¼º°ú ¸ÖƼÄÚ¾î, ƯÈ÷ µ¿½Ã¼ºÀÌ ½ÇÁ¦·Î ÀÏ»óÀûÀÎ ÇÁ·Î±×·¥¿¡ ¾î¶»°Ô »ç¿ëµÇ´ÂÁö¿¡ ´ëÇÑ º¹À⼺À» ޱ¸ÇÒ ¼ö ÀÖ´Â Åë·Î°¡ µÆ´Ù. ³ª´Â µ¿½Ã¼ºÀ» Ç÷§ÆûÀÇ ¾îµð°¡ ºÎÁ·ÇÑÁö ¾Ë¾Æ³»´Â µµ±¸·Î »ç¿ëÇß´Ù. À̰ÍÀº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡¼­ º»¾÷°ú ´õºÒ¾î 2³â°£ ¾î´À Á¤µµ »ê¾÷°èÀÇ À¯Çà¾î°¡ µÈ ±â¼úÀÎ ¼ÒÇÁÆ®¿þ¾î ÀüÀÌ ¸Þ¸ð¸®(STM, Software Transitional Memory)¿¡ ÁýÁߵŠÀÖ´Ù. ¸»ÇÒ Çʿ䵵 ¾øÀÌ µ¿½Ã¼ºÀÇ ¸ðµç ÁÖÁ¦¿¡ °üÇØ ²Ï³ª °ß°íÇÑ Áö½ÄÀ» °®°Ô µÆ´Ù. ±× ÁÖÁ¦¿¡ °üÇØ Ã¥À» ÁýÇÊÇÏ´Â °Íº¸´Ù ´õ¿í °ß°íÇÏ°Ô ÇÏ´Â ÁÁÀº ¹æ¹ýÀÌ Àִ°¡?

ÀÌ·± ¸ðµç ÇÁ·ÎÁ§Æ®¿¡ Á¾»çÇϰí, °á±¹ PLINQ´Â ´å³Ý ÇÁ·¹ÀÓ¿öÅ© ±â¼úÀÇ º´·Ä È®Àå(Parallel Extension)À¸·Î ¹ßÀüµÊ¿¡ µû¶ó À©µµ¿ì¿¡¼­ µ¿½Ã¼º¿¡ °üÇÑ ÁÁÀº Ã¥ÀÌ ¾ó¸¶³ª ÀûÀºÁö ¾Ë°í ³î·¨´Ù. ³ª´Â °è¼ÓÇØ¼­ µ¿½Ã¼º°ú °ü·ÃµÈ Á¤º¸ÀÇ º¹À⼺°ú ¼Ò¼ö¸¸ ÀÌÇØÇÏ´Â ³»¿ë¿¡ ³î¶ó°Å³ª ½Å±âÇØÇß´ø °ÍÀ» ±â¾ïÇÑ´Ù. ÀÌ ³»¿ëÀº Ã¥¿¡ Æ÷ÇÔÇÏ·Á°í Àû¾îµÎ°í ƯÁ¤ ¸ñÀû¿¡ ¹èÁ¤Çß´Ù. ³ª´Â ´ÜÁö ´©±º°¡°¡ Àü¿¡ À̰ÍÀ» ÀÛ¼ºÇØ ³õÀ½À¸·Î½á º¹µµ¿¡¼­ ´ëÈ­¿Í, À©µµ¿ì¿Í CLR ¼Ò½ºÄڵ忡 ½ñ¾Æ ºÎÀº ±ä ¹ã, ¾öû³ª°Ô ¸¹Àº ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Á÷¿øÀÇ ºí·Î±×¸¦ ÀÐ°í ¶Ç Àд µîÀÇ ¿©·¯ ¼Ò½º¸¦ »ô»ôÀÌ µÚÁú Çʿ䰡 ¾ø±â¸¦ ¹Ù¶ú´Ù. ±×·¯³ª ÀÌ ÁÖÁ¦¿¡ °üÇÑ ÃÖ°íÀÇ Ã¥Àº 90³â´ë ÃʹÝÀ¸·Î °Å½½·¯ ¿Ã¶ó°¬°í, ¿©ÀüÈ÷ ÈǸ¢Çϱä ÇÏÁö¸¸ ±â°èÇп¡ ÁßÁ¡À» µÎ°í ÀÖÀ¸¸ç, º´·Ä ÇÁ·Î±×·¥ÀÇ ±¸Á¶È­, º´·Ä ¾Ë°í¸®ÁòÀÇ ±¸Çö, º´·Ä¼ºÀÇ À§Çè ¿ä¼Ò 󸮸¦ Æ÷ÇÔÇÑ ¸ðµç Áß¿äÇÑ °³³ä¿¡ ´ëÇØ¼­´Â ÃæºÐÇÏÁö ¾Ê¾Ò´Ù. ´Ù¸¥ ¸ðµç °ÍÀº ¾ÖÇø®ÄÉÀ̼ǰú ½Ã½ºÅÛ, ¶óÀ̺귯¸® °³¹ßÀÚº¸´Ù´Â Çаè¿Í ¿¬±¸ÀÚµéÀ» ¸ñÇ¥·Î Çß´Ù.

³ª´Â ½º½º·Î ¹è¿ö¸é¼­ ã¾Æ³Â´ø ¹«ÀÛÀ§ÀÇ ¸ðµç Á¤º¸¸¦ ¼Õ½¬¿î ¹æ¹ýÀ¸·Î ó¸®ÇÏ´Â ¸Å·ÂÀûÀ̰í À¯¿ëÇÑ ¹æ¹ýÀ» Ã¥À¸·Î ÁýÇÊÇϱ⠽ÃÀÛÇß´Ù. ÀÌ Ã¥À» ³¡³»´Â µ¥ ³î¶ø°Ôµµ ±ä ½Ã°£ÀÎ 2³â ¹ÝÀÌ °É·ÈÁö¸¸, ±â¼úÀº õõÈ÷ ¹ßÀüÇϰí, ÀÌ ÁÖÁ¦¿¡ ´ëÇÑ ÁÁÀº Ã¥ÀÇ »óŵµ ±×·¸°Ô ¸¹ÀÌ º¯ÇÏÁö ¾Ê¾Ò´Ù. ³»°¡ ¹Ù¶ó´Â ³ë·ÂÀÇ °á°ú´Â ½ÇÁ¦ÀûÀ̰í À¯¿ëÇÏÁö¸¸, ¿©ÀüÈ÷ ¸Å¿ì ½Éµµ ±íÀº ±â¼ú Á¤º¸¸¦ Æ÷ÇÔÇÑ »õ·Î¿î Ã¥ÀÌ´Ù. ÀÌ Ã¥Àº Àå·¡¿¡ µ¿½Ã¼ºÀÌ ¸ðµç ¼ÒÇÁÆ®¿þ¾îÀÇ ±âº» ¿ä±¸ Á¶°ÇÀÌ µÉ °ÍÀ̶ó°í ¹Ï´Â ¸ðµç À©µµ¿ì °³¹ßÀÚ³ª ´å³Ý °³¹ßÀÚ¸¦ À§ÇÑ Ã¥ÀÌ´Ù. À̰ÍÀº ¸¶Ä¡ ¸ðµç »ê¾÷ÀÇ Æ®·»µå¸¦ ÀǹÌÇÏ´Â °Íó·³ º¸ÀδÙ.

³ª´Â ±äÀåÀ» Ç®°í ¿©À¯·Î¿î ¸¶À½À¸·Î ÀÌ Ã¥À» Áñ±â±æ ¹Ù¶õ´Ù. ±×¸®°í µ¶Àڵ鵵 ±×·¸°Ô ÇÏ±æ ¹Ù¶õ´Ù.


¡Ú ¿Å±äÀÌÀÇ ¸» ¡Ú

ÇöÀç ¿ì¸®´Â ¾öû³­ ÄÄÇ»ÆÃ ÆÐ·¯´ÙÀÓÀÇ ¹ßÀüÀ» °æÇèÇϰí ÀÖ´Ù. ±â¼úÀûÀ¸·Î µ¿½Ã¼º°ú º´·Ä¼ºÀÌ µ¿½ÃÀûÀ¸·Î ¹ßÀüÇϰí ÀÖ´Â ÇüŶó°í ÇÒ ¼ö ÀÖ´Ù. ¿©±â¼­ µ¿½Ã¼º ÇÁ·Î±×·¡¹Ö(concurrent programming)Àº ÇÁ·Î±×·¥ÀÌ ¿©·¯ °³ÀÇ µ¿½ÃÀûÀÎ ½º·¹µå·Î ½ÇÇàÀÌ µÇ°í µû¶ó¼­ °á°ú°¡ ºñ°áÁ¤ÀûÀΠƯ¼ºÀÌ ÀÖ´Ù. ¹Ý¸é¿¡ º´·Ä ÇÁ·Î±×·¡¹Ö(parallel programming)Àº ¼º´É Çâ»óÀ» ¸ñÀûÀ¸·Î ¸í½ÃÀûÀ¸·Î ¸ÖƼ ÇÁ·Î¼¼¼­¸¦ »ç¿ëÇÏ´Â ±â¼úÀ» ¸»ÇÑ´Ù. ÀÌ´Â µ¿½Ã¼º°ú º´·Ä¼º ¸ðµÎ¿¡ ±â¹ÝÇÑ ¾çÀûÀÎ Áõ°¡(Ŭ¶ó¿ìµå, ¸ÖƼÄÚ¾î ÇÁ·Î¼¼½º)»Ó¸¸ ¾Æ´Ï¶ó µ¿½Ã¼º¿¡ ±â¹ÝÇÑ ±× ´Ù¾ç¼º(¸ð¹ÙÀÏ, ÅÂºí¸´)¿¡ À־µµ ¿©·¯ °¡Áö ½Ãµµ°¡ ÀÌ·ç¾îÁö°í ÀÖ´Ù. ÀÌ·± ´Ù¾çÇÑ Çϵå¿þ¾îÀûÀΠȯ°æ¿¡¼­ °³¹ßÀÚµéÀº µ¿½Ã¼º¿¡ ´ëÇØ¼­ ¹Ýµå½Ã ÇнÀÇØ¾ß ÇÑ´Ù. ƯÈ÷³ª ÀÛÀº ¸ð¹ÙÀÏÀÌ ¸ÖƼ, Äõµå ÄÚ¾î ½Ã´ë·Î ³ª¾Æ°¡°í ÀÖ°í, ´ë¿ë·®ÀÇ ÄÄÇ»ÆÃÀ» À§Çؼ­ ¿£ºñµð¾Æ(NVIDIA) »ç´Â ±×·¡ÇÈ¿¡¸¸ ÀÌ¿ëµÇ´ø GPU(Graphic Processing Unit)¸¦ GP(General Purpose)-GPU¶ó°í ºÒ¸®´Â ÇüÅ·Πº¸Á¶ÀûÀÎ °è»ê¿¡µµ ÀÌ¿ëÇϰí ÀÖ´Ù.

¿ì¼± ¸ð¹ÙÀÏ ÄÄÇ»ÆÃÀÇ º¯È­¸¦ »ìÆìº¸±â À§Çؼ­´Â Å©°Ô ¾ÖÇÃÀÇ iOS¿Í ±¸±ÛÀÇ ¾Èµå·ÎÀ̵åÀÇ ¹ßÀü»óÀ» °üÂûÇÏ¸é ½±°Ô È®ÀÎÇÒ ¼ö ÀÖ´Ù. Ãʱâ iOS ¸ðµ¨Àº °³¹ßÀÚµéÀÇ ¸ÖƼ ŽºÅ·¿¡ ´ëÇÑ Á¢±ÙÀ» öÀúÇÏ°Ô ¹æÁöÇß´Ù. ÀÌÀ¯´Â ½Ã½ºÅÛÀÇ ¾ÈÁ¤¼º ¶§¹®À̾ú´Ù. ÇÏÁö¸¸ iOS°¡ ¹ßÀüÇÔ¿¡ µû¶ó¼­ ¾ÖÇÃÀº ¸ÖƼ ŽºÅ·¿¡ ¾ÈÁ¤¼ºÀ» º¸ÀåÇÏ°Ô µÆ°í, °³¹ßÀÚµµ µ¿½Ã¼ºÀ» ÀÌ¿ëÇÑ ÇÁ·Î±×·¡¹ÖÀ» ÇÒ ¼ö ÀÖ´Â ´Ü°è¿¡ À̸£°Ô µÆ´Ù. ÀÌ´Â ½Ì±Û ÄÚ¾î Çϵå¿þ¾î¿¡¼­ ¸ÖƼ ÄÚ¾î Çϵå¿þ¾î·Î ³ª¾Æ°¡´Â °ü¹®À» Åë°úÇß´Ù°í º¼ ¼ö ÀÖ´Ù. iOS¿Í´Â ´Þ¸® ¾Èµå·ÎÀ̵å´Â ÃÖÃÊ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ Å°Æ®(SDK)¸¦ ¹èÆ÷ÇÒ ¶§ºÎÅÍ µ¿½Ã¼º¿¡ ´ëÇØ¼­ °³¹ßÀÚ¿¡°Ô °ø°³ÇßÁö¸¸, ¸¹Àº ¹ö±× ¼öÁ¤°ú Å×½ºÆ® ³¡¿¡ Áö±ÝÀº ¾öû³­ ¾ÈÁ¤¼ºÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ÀÌ·¯ÇÑ ¸ð¹ÙÀÏ Ç÷§Æû¿¡¼­ °³¹ßÀÚÀÇ µ¿½Ã¼º¿¡ ´ëÇÑ ÀÌÇØ´Â ½Ã½ºÅÛÀÇ ¾ÈÁ¤¼º»Ó¸¸ ¾Æ´Ï¶ó È¿À²¼ºµµ ³ôÀÌ´Â ¾ÆÁÖ Áß¿äÇÑ ¿ä¼Ò·Î Àνĵǰí ÀÖ´Ù.

¿äÁò ¸¹Àº À̽´°¡ µÇ°í ÀÖ´Â ºò µ¥ÀÌÅÍ(Big Data)ÀÇ Ã³¸®´Â ´ëºÎºÐ Ŭ¶ó¿ìµå ÄÄÇ»ÆÃ(Cloud Computing)À̶ó´Â ´ë±Ô¸ð µ¥ÀÌÅÍ ¼¾ÅÍ¿¡¼­ ÀÌ·ç¾îÁö°í ÀÖ´Ù. Ŭ¶ó¿ìµå ÄÄÇ»ÆÃÀÇ ±âº»Àº º´·Ä¼ºÀ̸ç, ±âº»ÀûÀΠó¸® ¹æ¹ýÀº µ¥ÀÌÅ͸¦ ÀÛÀº Á¶°¢À¸·Î ³ª´©°í, ¿©·¯ ÄÄÇ»ÅÍ¿¡ ³ª´©¾î¼­ ´Ù·ç´Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ±â¼úÀº ÈçÈ÷ ¸Ê¸®µà½º(Map-Reduce)¶ó°í ºÒ¸®¸ç, °¡Àå ´ëÇ¥ÀûÀÎ Ç÷§ÆûÀ¸·Î´Â ÇϵÓ(Hadoop)À̶ó´Â ¾ÆÆÄÄ¡ °ø°³ ¼ÒÇÁÆ®¿þ¾î°¡ ÀÖ´Ù. ¿©±â¼­ º´·Ä¼ºÀÇ °³³äÀº µ¿½Ã¼ºÀÇ È®ÀåÀ̶ó°í ÀÌÇØÇÏ¸é µÈ´Ù. ·ÎÄÃÀÇ ¿©·¯ ½º·¹µå(ÇÁ·Î¼¼½º)°¡ µ¿½Ã¿¡ ÀÛ¾÷À» ÁøÇàÇÏ´ø °ÍÀ» ¿©·¯ ÄÄÇ»ÅͰ¡ ÀÛ¾÷ÇÑ´Ù´Â ÀǹÌÀÎ °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ±âº»ÀûÀÎ ÀÌÇØ¸¦ ³ôÀ̱â À§Çؼ­ ÀÌ Ã¥ÀÇ ³»¿ëÀ» ÇнÀÇÏ´Â °ÍÀº Çʼö¶ó°í ÇÒ ¼ö ÀÖ´Ù.

¸¶Áö¸·À¸·Î ÇÁ·Î¼¼¼­ ÀÚüÀÇ ¹ßÀü»óÀ» ÀÌÇØÇØ¾ß ÇÑ´Ù. Áö±Ý±îÁö ÀÎÅÚ°ú AMD¿¡¼­ ÁÖµµÇÏ´ø ÇÁ·Î¼¼¼­ ¾ÆÅ°ÅØÃ³¿¡ »õ·Î¿î ÆÐ·¯´ÙÀÓÀ» Á¦½ÃÇÑ ¿£ºñµð¾Æ »ç´Â ¼ö¹é °³ÀÇ Äھ ÀÌ¿ëÇÑ ÄÄÇ»ÆÃÀ» ÀüÁ¦·Î ÇÑ´Ù. ÇÏÁö¸¸ ¿£ºñµð¾Æ »çÀÇ GPU´Â ÀÚüÀûÀ¸·Î µ¿ÀÛÇϱ⺸´Ù´Â ´ë¿ë·® ÄÄÇ»ÆÃÀÌ ÇÊ¿äÇÑ ÀÛ¾÷¿¡ ´ëÇØ¼­ ÀÎÅÚ°ú AMD ÇÁ·Î¼¼¼­ÀÇ º¸Á¶ ¿ªÇҷμ­ ÀÚ¸®¸Å±èÇϰí ÀÖ´Ù. GPUÀÇ ¿©·¯ ÇÁ·Î¼¼¼­(ÄÚ¾î)´Â ÇϳªÀÇ Å« ÁÖ ¸Þ¸ð¸®¸¦ °¡Áö°í ÀÖÀ¸¸ç, ÄÚ¾î ±×·ìÀÎ ºí·Ï(Block)Àº °øÀ¯ ¸Þ¸ð¸®¸¦ °¡Áö°í ÀÖ´Ù. ÀÌ·± ¸Þ¸ð¸® ±¸Á¶ÀÇ °èÃþÈ­´Â µ¿½Ã¼ºÀÇ Çʿ伺À» ³ôÀÌ´Â °è±â°¡ µÆ´Ù°í ÇÒ ¼ö ÀÖ´Ù.

ÀÌ·± ¸ðµç ¹ßÀü»óÀ» ¿ÏÀüÈ÷ µû¶ó°¡´Â °ÍÀº ¹«¸®°¡ ÀÖÁö¸¸, ÀÌ Ã¥¿¡¼­ ¼³¸íÇÏ´Â ±âº» °³³äÀ» ¾Ë°í ÀÖ´Ù¸é °³¹ßÀÚµéÀº ¾î¶°ÇÑ Ç÷§Æû¿¡¼­ °³¹ßÀ» ÇÏ´õ¶óµµ ¾öû³­ ÀûÀÀ·ÂÀ» ¹ßÈÖÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. Âü°í·Î ÀÌ Ã¥Àº ¹ø¿ª¼­ÀÇ Æ¯¼º»ó ÀÌ Ã¥¿¡ Ãâ°£µÈ ´ç½Ã¿¡ OS ¹öÀüÀÎ À©µµ¿ì ºñ½ºÅ¸¿Í 2008À» ´ë»óÀ¸·Î Çϸç À©µµ¿ì 7À̳ª 8ÀÇ ¼¼ºÎ ±â¼ú¿¡ ´ëÇØ¼­´Â ³íÀÇÇÏÁö ¾Ê´Â´Ù. µû¶ó¼­ Ãֽо÷µ¥ÀÌÆ®µÈ Á¤º¸¸¦ ¾ò±â¿¡´Â ÇѰ谡 ÀÖÀ¸³ª À©µµ¿ìÀÇ µ¿½Ã¼º ÇÁ·Î±×·¡¹ÖÀÇ ±Ùº» »ç»óÀ» ±ú¿ìÄ¡´Â µ¥´Â ÃæºÐÈ÷ Âü°íÇÒ ¸¸ÇÏ´Ù. ¸ð¹ÙÀÏ °³¹ßÀÚ»Ó¸¸ ¾Æ´Ï¶ó, Ŭ¶ó¿ìµå °³¹ßÀÚ, GPU °³¹ßÀÚ ¸ðµÎ°¡ ÀÌ Ã¥ÀÇ °³³äÀ» ¿Ïº®È÷ ÀÌÇØÇÒ ¼ö Àֱ⸦ ¹Ù¶ó¸ç °­·ÂÈ÷ ÃßõÇÑ´Ù.
1ºÎ °³³ä

1Àå °³¿ä
___µ¿½Ã¼ºÀ» »ç¿ëÇØ¾ß ÇÏ´Â ÀÌÀ¯
___ÇÁ·Î±×·¥ ±¸Á¶¿Í µ¿½Ã¼º
___º´·ÄÈ­ °èÃþ
___µ¿½Ã¼ºÀ» »ç¿ëÇÏ¸é ¾È µÇ´Â °æ¿ì
___Á¤¸®
___Âü°í ¹®Çå

2Àå µ¿±âÈ­¿Í ½Ã°£
___ÇÁ·Î±×·¥ »óÅ °ü¸®
______°øÀ¯ »óÅÂ/ºñ°ø°³ »óÅ ½Äº°
______»óÅ ±â°è¿Í ½Ã°£
______°Ý¸®¼º
______ºÒº¯¼º
___µ¿±âÈ­: Á¾·ù¿Í ±â¹ý
______µ¥ÀÌÅÍ µ¿±âÈ­
______Á¶Á¤°ú Á¦¾î µ¿±âÈ­
___Á¤¸®
___Âü°í ¹®Çå

2ºÎ ¸ÞÄ¿´ÏÁò

3Àå ½º·¹µå
___½º·¹µåÀÇ ¼¼ºÎ »çÇ×
______À©µµ¿ì ½º·¹µå¶õ?
______CLR ½º·¹µå¶õ?
______¸í½ÃÀû ½º·¹µù°ú ´ë¾È
___½º·¹µåÀÇ Åº»ý°ú Á×À½
______½º·¹µå »ý¼º
______½º·¹µå Á¾·á
______DllMain
______½º·¹µå ·ÎÄà ÀúÀå¼Ò
___Á¤¸®
___Âü°í ¹®Çå

4Àå ½º·¹µå °í±Þ Ȱ¿ë
___½º·¹µå »óÅÂ
______À¯Àú ¸ðµå ½º·¹µå ½ºÅÃ
______³»ºÎ µ¥ÀÌÅÍ ±¸Á¶(KTHREAD, ETHREAD, TEB)
______ÄÁÅØ½ºÆ®
___½º·¹µå »ý¼º°ú Á¾·á µ¿ÀÛ ¿ø¸®
______½º·¹µå »ý¼º °úÁ¤
______½º·¹µå Á¾·á °úÁ¤
___½º·¹µå ½ºÄÉÁÙ¸µ
______½º·¹µå »óÅÂ
______½º·¹µå ¿ì¼±¼øÀ§
______ÄöÅÒ
______¿ì¼±¼øÀ§¿Í ÄöÅÒ Á¶Á¤
______½ÇÇà ÁßÁö(sleep)¿Í ¾çº¸(yield)
______½º·¹µå Áß´Ü
______¼±È£µµ: ƯÁ¤ CPU¸¦ ¼±ÅÃÇØ ½ÇÇà
___Á¤¸®
___Âü°í ¹®Çå

5Àå À©µµ¿ì Ä¿³Î µ¿±âÈ­
___±âº» °³³ä: ½Ã±×³Î°ú ´ë±â
______Ä¿³Î °´Ã¼¸¦ »ç¿ëÇÏ´Â ÀÌÀ¯
______¿ø½Ã Äڵ忡¼­ ´ë±â ó¸®
______°ü¸®µÇ´Â ÄÚµå
______APC
___Ä¿³Î °´Ã¼ »ç¿ë
______¹ÂÅØ½º
______¼¼¸¶Æ÷¾î
______¹ÂÅØ½º¿Í ¼¼¸¶Æ÷¾î¸¦ ÀÌ¿ëÇÑ ¿¹Á¦: Â÷´Ü/À¯ÇÑ Å¥
______ÀÚµ¿ ¸®¼Â À̺¥Æ®/¸Å´º¾ó ¸®¼Â À̺¥Æ®
______´ë±â °¡´É ŸÀ̸Ó
______°´Ã¼ ½Ã±×³Î°ú ¿øÀÚÀûÀÎ ´ë±â
______Ä¿³Î °´Ã¼ µð¹ö±ë
___Á¤¸®
___Âü°í ¹®Çå

6Àå µ¥ÀÌÅÍ¿Í Á¦¾î µ¿±âÈ­
___»óÈ£ ¹èÁ¦
______Win32 ÀÓ°è ±¸¿ª
______CLR ¶ô
___Àбâ/¾²±â ¶ô(RWL)
______À©µµ¿ì ºñ½ºÅ¸ÀÇ °¡º­¿î Àбâ/¾²±â ¶ô
______´å³Ý ÇÁ·¹ÀÓ¿öÅ©ÀÇ °¡º­¿î Àбâ/¾²±â ¶ô(3.5)
______´å³Ý ÇÁ·¹ÀÓ¿öÅ©ÀÇ ·¹°Å½Ã(legacy) Àбâ/¾²±â ¶ô
___Á¶°Ç º¯¼ö
______À©µµ¿ì ºñ½ºÅ¸ Á¶°Ç º¯¼ö
______´å³Ý ÇÁ·¹ÀÓ¿öÅ© ¸ð´ÏÅÍ
______º¸È£µÈ ¿µ¿ª(Guarded Region)
___Á¤¸®
___Âü°í ¹®Çå

7Àå ½º·¹µå Ç®
___½º·¹µå Ç® 101
______¼¼ °¡Áö ¹æ¹ý: À©µµ¿ì ºñ½ºÅ¸¿Í À©µµ¿ì ·¹°Å½Ã, CLR
______°øÅë ±â´É
___À©µµ¿ì ½º·¹µå Ç®
______À©µµ¿ì ºñ½ºÅ¸ ½º·¹µå Ç®
______·¹°Å½Ã Win32 ½º·¹µå Ç®
___CLR ½º·¹µå Ç®
______ÀÛ¾÷ ¾ÆÀÌÅÛ
______I/O ¿Ï¼º Æ÷Æ®
______ŸÀ̸Ó
______µî·ÏµÈ ´ë±â
______±â¾ïÇÒ °Í: ½º·¹µå¸¦ ¼ÒÀ¯ÇÏ¸é ¾È µÈ´Ù.
______½º·¹µå Ç® ½º·¹µå °ü¸®
______µð¹ö±ë
______»ç·Ê ¿¬±¸: ½º·¹µå Ç®ÀÇ ÃÖ»óÀ§¿¡¼­ ¿ì¼±¼øÀ§¿Í °Ý¸® °èÃþÈ­
___½º·¹µå Ç®À» »ç¿ëÇÒ ¶§ ¼º´É
___Á¤¸®
___Âü°í ¹®Çå

8Àå ºñµ¿±â ÇÁ·Î±×·¡¹Ö ¸ðµ¨
___ºñµ¿±â ÇÁ·Î±×·¡¹Ö ¸ðµ¨(APM)
______¸¸³²: ³× °¡Áö ¹æ¹ý
______IAsyncResult ±¸Çö
______´å³Ý ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ APMÀÌ »ç¿ëµÇ´Â Àå¼Ò
______ASP ´å³Ý ºñµ¿±â ÆäÀÌÁö
___À̺¥Æ® ±â¹ÝÀÇ ºñµ¿±â ÆÐÅÏ
______±âº» °³³ä
______Ãë¼Ò Áö¿ø
______Áøµµ º¸°í¿Í Áõ°¡ °á°ú Áö¿ø
______´å³Ý ÇÁ·¹ÀÓ¿öÅ©¿¡¼­ EAP°¡ »ç¿ëµÇ´Â Àå¼Ò
___Á¤¸®
___Âü°í ¹®Çå

9Àå ÆÄÀ̹ö
___ÆÄÀ̹ö °³¿ä
______±àÁ¤°ú ºÎÁ¤ÀûÀÎ Ãø¸é
___ÆÄÀ̹ö »ç¿ë
______»õ·Î¿î ÆÄÀ̹ö »ý¼º
______½º·¹µå¸¦ ÆÄÀ̹ö·Î º¯È¯
______½º·¹µå°¡ ÆÄÀ̹öÀÎÁö È®ÀÎ
______ÆÄÀ̹ö °£ÀÇ Àüȯ
______ÆÄÀ̹ö »èÁ¦
______ÇöÀç ½º·¹µå Àüȯ ¿¹Á¦
___Ãß°¡ÀûÀÎ ÆÄÀ̹ö °ü·Ã ÁÖÁ¦
______ÆÄÀ̹ö Áö¿ª ÀúÀå¼Ò(FLS, Fiber Local Storage)
______½º·¹µå °ü·Ã¼º
______»ç·Ê ¿¬±¸: ÆÄÀ̹ö¿Í CLR
___»ç¿ëÀÚ ¸ðµå ½ºÄÉÁÙ·¯ ±¸Ãà
______±¸Çö
______½ºÅà ÀÖ´Â Â÷´Ü°ú ½ºÅÃÀÌ ¾ø´Â Â÷´Ü
___Á¤¸®
___Âü°í ¹®Çå

3ºÎ Å×Å©´Ð

10Àå ¸Þ¸ð¸® ¶ô°ú ¶ô ¾ø´Â ÇÁ·Î±×·¡¹Ö
___¸Þ¸ð¸® Àбâ¿Í ¾²±â Àç¹èÄ¡
______½ÇÇàµÇ´Â °ÍÀÌ Ç×»ó ÀÛ¼ºÇÑ °Í°ú µ¿ÀÏÇÑ °Ç ¾Æ´Ï´Ù
______À庮À¸·Î¼­ ÀÓ°è ¿µ¿ª
______µ¥ÀÌÅÍ Á¾¼Ó°ú Àç¹èÄ¡¿¡ÀÇ ¿µÇâ
___Çϵå¿þ¾î ¿øÀÚ¼º
______ÀÏ¹Ý Àбâ¿Í ¾²±âÀÇ ¿øÀÚ¼º
______»óÈ£ ¶ôµÈ µ¿ÀÛ
___¸Þ¸ð¸® Àϰü¼º ¸ðµ¨
______Çϵå¿þ¾î ¸Þ¸ð¸® ¸ðµ¨
______¸Þ¸ð¸® À庮
______´å³Ý ¸Þ¸ð¸® ¸ðµ¨
______¶ô ¾ø´Â ÇÁ·Î±×·¡¹Ö
___³·Àº ¶ô ÄÚµå ¿¹Á¦
______Áö¿¬ ÃʱâÈ­¿Í ÀÌÁß °Ë»ç ¶ô
______ºñÂ÷´Ü ½ºÅðú ABA ¹®Á¦
______µ¥Ä¿ ¾Ë°í¸®Áò ´Ù½Ã º¸±â
___Á¤¸®
___Âü°í ¹®Çå

11Àå µ¿½Ã¼º À§Çè ¿ä¼Ò
___Á¤È®¼º À§Çè ¿ä¼Ò
______µ¥ÀÌÅÍ °æÀï
______Àç±Í¿Í ÀçÁøÀÔ
______¶ô°ú ÇÁ·Î¼¼½º Á¾·á
___¶óÀ̺ê À§Çè ¿ä¼Ò
______µ¥µå¶ô
______³õÄ£ ±ú¿ò(³õÄ£ ÆÞ½º¿Í µ¿ÀÏ)
______¶óÀ̺ê¶ô
______¶ô ¼ö¼Û
______¸ô±â(Stampeding)
______µÎ ´Ü°è Ãã
______¿ì¼±¼øÀ§ µµÄ¡¿Í ±â¾Æ
___Á¤¸®
___Âü°í ¹®Çå

12Àå º´·Ä ÄÁÅ×À̳Ê
___¼Ò´ÜÀ§ ¶ô
______¹è¿­
______FIFO ť
______¿¬°á ¸®½ºÆ®
______»çÀü(ÇØ½Ã Å×À̺í)
___¶ô ¾øÀ½
______ÀÏ¹Ý ¸ñÀûÀÇ ¶ô ¾ø´Â FIFO Å¥
______Å¥¸¦ ÈÉÄ¡´Â ÀÛ¾÷
___Á¶Á÷ ÄÁÅ×À̳Ê
______»ý»êÀÚ/¼ÒºñÀÚ µ¥ÀÌÅÍ ±¸Á¶
______Àå¾Ö¹°À» °¡Áø ´Ü°èÀû °è»ê
___Á¤¸®
___Âü°í ¹®Çå

13Àå µ¥ÀÌÅÍ¿Í Å½ºÅ© º´·Ä ó¸®
___µ¥ÀÌÅÍ º´·Ä¼º
______·çÇÁ¿Í ¹Ýº¹
___ŽºÅ© º´·Ä¼º
______Æ÷Å©/Á¶ÀÎ º´·Ä¼º
______µ¥ÀÌÅÍ È帧 º´·Ä¼º(¹Ì·¡¿Í ¾à¼Ó)
______Àç±Í
______ÆÄÀÌÇÁ¶óÀÎ
______°Ë»ö
___¸Þ½ÃÁö ±â¹Ý º´·Ä¼º
___¿À·ù¿¡ ´ëÇÑ ¿ì·Á
______µ¿½Ã¼º ¿¹¿Ü
______Ãë¼Ò
___Á¤¸®
___Âü°í ¹®Çå

14Àå ¼º´É°ú È®À强
___º´·Ä Çϵå¿þ¾î ±¸Á¶
______SMP¿Í CMP, HT
______½´ÆÛ ½ºÄ®¶ó ½ÇÇà
______¸Þ¸ð¸® °èÃþ
______ºñÁÖ¾ó ½ºÆ©µð¿ÀÀÇ ÇÁ·ÎÆÄÀϸµ
___¼Óµµ Çâ»ó: º´·Ä ÄÚµå¿Í ¼øÂ÷ ÄÚµå
______º´·Ä »ç¿ë °áÁ¤
______º´·Ä¼º ¼º´É Çâ»ó ÃøÁ¤
______¾Ï´ÞÀÇ ¹ýÄ¢
______ÀÓ°è °æ·Î¿Í ºÎÇÏ ºÒ±ÕÇü
______°¡ºñÁö Ä÷º¼Ç°ú È®À强
___¹Ýº¹ ´ë±â
______À©µµ¿ì¿¡¼­ Á¦´ë·Î ´ë±âÇÏ´Â ¹æ¹ý
______À¯ÀÏ ¹Ýº¹ ¶ô
______Mellor-Crummey-Scott(MCS) ¶ô
___Á¤¸®
___Âü°í ¹®Çå

4ºÎ ½Ã½ºÅÛ

15Àå ÀԷ°ú Ãâ·Â
___ÁßøµÈ I/O
______ÁßøµÈ °´Ã¼
______Win32 ºñµ¿±â I/O
______´å³Ý ÇÁ·¹ÀÓ¿öÅ© ºñµ¿±â I/O
___I/O Ãë¼Ò
______ÇöÀç ½º·¹µå¿¡ ºñµ¿±â I/O Ãë¼Ò
______´Ù¸¥ ½º·¹µå¿¡ µ¿±â I/O Ãë¼Ò
______´Ù¸¥ ½º·¹µå¿¡ ºñµ¿±â I/O Ãë¼Ò
___Á¤¸®
___Âü°í ¹®Çå

16Àå ±×·¡ÇÈ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º
___GUI ½º·¹µù ¸ðµ¨
______STA
______¹ÝÀÀ¼º
___´å³Ý ºñµ¿±â GUI Ư¼º
______´å³Ý GUI ÇÁ·¹ÀÓ¿öÅ©
______µ¿±â ÄÁÅØ½ºÆ®
______ºñµ¿±â µ¿ÀÛ
______Æí¸®ÇÑ ÆÐŰÁö: BackgroundWorker
___Á¤¸®
___Âü°í ¹®Çå

5ºÎ ºÎ·Ï

ºÎ·Ï A µ¿½Ã¼º ´å³Ý ÇÁ·Î±×·¥¿¡ Àç»ç¿ë °¡´ÉÇÑ ¶óÀ̺귯¸® ¼³°è
___µ¿½Ã¼º¿¡ °üÇÑ °í°ß
___¼¼ºÎ »çÇ×
______¶ô ¸ðµ¨
______¶ô »ç¿ë
______¾ÈÀü¼º
______½ºÄÉÁÙ¸µ°ú ½º·¹µå
______È®À强°ú ¼º´É
______Â÷´Ü
___Âü°í ¹®Çå

ºÎ·Ï B ´å³Ý º´·Ä ÇÁ·Î±×·¡¹Ö È®Àå
___ŽºÅ© º´·Ä ¶óÀ̺귯¸®
______¹Ìó¸® ¿¹¿Ü
______ºÎ¸ð¿Í ÀÚ½Ä
______Ãë¼Ò
______¹Ì·¡
______Áö¼Ó
______ŽºÅ© °ü¸®ÀÚ
______Àüü ¿ä¾à: À¯¿ëÇÑ º´·Ä Ŭ·¡½º
______ÀÚü º¹Á¦ ŽºÅ©
___º´·Ä LINQ
______¹öÆÛ¸µ°ú º´ÇÕ
______¼ø¼­ À¯Áö
___µ¿±â ÇÁ¸®¹ÌƼºê
______ISupportsCancelation
______CountdownEvent
______LazyInit
______ManualResetEventSlim
______SemaphoreSlim
______SpinLock
______SpinWait
___µ¿½Ã¼º Ä÷º¼Ç
______BlockingCollection
______ConcurrentQueue
______ConcurrentStack
___Âü°í ¹®Çå
Á¶ ´õÇÇ(Joe Duffy)
ºñÁÖ¾ó ½ºÆ©µð¿À ºÐ°úÀÇ °³¹ß Ã¥ÀÓÀÚÀÌÀÚ ¼³°èÀÚÀ̸ç, ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®ÀÇ ´å³Ý ÇÁ·¹ÀÓ¿öÅ© ÆÀÀÇ º´·Ä È®Àå(Parallel Extension)ÀÇ Ã¢½ÃÀÚ´Ù. Äڵ带 ÇØÅ·Çϰí ÈǸ¢ÇÑ °³¹ßÀÚ ÆÀÀ» °ü¸®ÇÏ´Â Àϰú ´õºÒ¾î ÆÀÀÇ Àå±âÀûÀÎ ºñÀü°ú Àü·«À» ¼ö¸³ÇÑ´Ù. ÇöÀç °ü½É»ç´Â ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ¸ðµ¨°ú Çü½Ä ½Ã½ºÅÛ¿¡¼­ ¿ì¼± µ¿½Ã¼º ¾ÈÀü(first-class concurrency safety), GPU¿Í SIMD ½ºÅ¸ÀÏ ÇÁ·Î¼¼¼­ÀÇ È°¿ëÀ» °¡´ÉÇÏ°Ô ÇÏ´Â ÇÁ·Î±×·¡¹Ö ¸ðµ¨À» ¸¸µå´Â °ÍÀÌ´Ù. ÀÌÀü¿¡ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡¼­ º´·Ä LINQ(PLINQ)ÀÇ °³¹ßÀÚ¿Í °øÅë ¾ð¾î ·±Å¸ÀÓ(CLR)¿¡¼­ µ¿½Ã¼º ÇÁ·Î±×·¥ °ü¸®ÀڷΠȰ¾àÇß´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿¡ ÇÕ·ùÇϱâ Àü¿¡´Â EMC¿¡¼­ÀÇ 4³âÀ» Æ÷ÇÔÇØ 7³â°£ Àü¹® ÇÁ·Î±×·¡¹Ö °æÇèÀ» ½×¾Ò´Ù. ¸Å»çÃß¼¼Ã÷¿¡¼­ ž ÇöÀç´Â ¿ö½ÌÅÏ¿¡¼­ »ì°í ÀÖ´Ù. ±â¼úÀûÀÎ ÀÛ¾÷¿¡ ¸ôµÎÇÏÁö ¾ÊÀ» ¶§´Â ±âŸ¸¦ Ä¡°í, À½¾Ç À̷п¡ ´ëÇØ °øºÎÇϸç, À½¾ÇÀ» µè°Å³ª ÀÛ°îÇϸç, ¿ÍÀο¡ ´ëÇÑ °¥ÁõÀ» ÇØ¼ÒÇÑ´Ù.


[¿ªÀÚ¼Ò°³]
ȲÁøÈ£

IT °æ·ÂÀº ¹Ì±¹¿¡¼­ ½ÃÀ۵ƴÙ. ¼®»ç °úÁ¤À» ¸¶Ä¡°í 1³â¿© µ¿¾È ¹Ì±¹ÀÇ ¿¬±¸±â°ü¿¡¼­ ¹æ¹® ¿¬±¸¿øÀ¸·Î ÀçÁ÷Çß´Ù. ¹Ì±¹¿¡¼­ À¯¸í Åë½Åȸ»çÀÇ ½Ã½ºÅÛÀ» ¿¬±¸/°³¹ßÇÏ´Â ¸î °¡Áö ÇÁ·ÎÁ§Æ®¸¦ ¸¶¹«¸®Çϰí, Çѱ¹À¸·Î µ¹¾Æ¿Í Æ÷½ºÄÚ ICT¿¡¼­ Åë½Å ½Ã½ºÅÛ ¼ÒÇÁÆ®¿þ¾î °³¹ßÀÚ·Î 3³â µ¿¾È ±Ù¹«Çß´Ù. ÇöÀç ¹Ì±¹ÀÇ Á¶Áö ¿ö½ÌÅÏ ´ëÇб³ÀÇ ÄÄÇ»ÅÍ »çÀ̾𽺠Çаú¿¡¼­ ¹Ú»ç °úÁ¤À» ¹â´Â ÁßÀ̸ç, ÁÖ ¿¬±¸ ºÐ¾ß´Â Ŭ¶ó¿ìµå ÄÄÇ»ÆÃ°ú ºò µ¥ÀÌÅÍ Ã³¸®´Ù. ¿¡ÀÌÄÜÃâÆÇ»ç¿¡¼­ Ãâ°£ÇÑ ¡ºLearning PHP, MySQL & JavaScript Çѱ¹¾îÆÇ¡»(2011)À» ¹ø¿ªÇß´Ù.
¹ø¿ªÀÌ ³Ê¹«Çϳ׿ä.
Ãß±³¼º´ÔÀÌ ¾²½Å ¼­Æòº¸±â I ÆòÁ¡ I Á¶È¸¼ö(1372) I °ø°¨ (1) I ºí·Î±×
300ÆäÀÌÁö Á¤µµ º¸°í Àִµ¥ ¹ø¿ªÇϽźÐÀÌ ÀÚ½ÅÀÌ ¹ø¿ªÇÑ°É ÇѹøÀÌ¶óµµ Àо°ÇÁö ÀǽÉÀÌ µéÁ¤µµÀÇ ¹®ÀåµéÀÌ º¸ÀÔ´Ï´Ù. ÁÁÀºÃ¥ÀÌ ¹ø¿ªµÇ¾î ³ª¿Í¼­ ±â»Û¸¶À½À¸·Î ±¸¸Å¸¦ Çߴµ¥ ±×³É Ã¥Àå¿¡ Àå½Ä¿ëÀ¸·Î ³Ö¾î³õ°í ¿ø¼­ºÁ¾ß °Ú³×¿ä. ¹ø¿ªÇϽŠºÐÇÑÅ×´Â Á˼ÛÇϽø¸ ÀÌ Ã¥À» ±¸¸ÅÇϽ÷Á´Â ºÐÀÌ ÀÖÀ¸½Ã¸é Á¤¸» ÀÚ½ÅÀÌ ¿µ¾î¸¦ ¸øÇÑ´Ù°í »ý°¢µÇ½Ã°Å³ª ¿ø¼­¸¦ ¿·¾î ³õ°í °°ÀÌ º¸½ÇºÐÀÌ ±¸¸ÅÇϽô °ÍÀÌ ÁÁ°Ú½À´Ï´Ù. 
¹ø¿ªÀÌ...
³ª¼ºÈÆ´ÔÀÌ ¾²½Å ¼­Æòº¸±â I ÆòÁ¡ I Á¶È¸¼ö(1226) I °ø°¨ (1) I ºí·Î±×
¿ì¼± ¹ø¿ªÀÌ ÁÁÁö ¾Ê±º¿ä. Çѱ¹¾î¸¦ ÀçÇØ¼®ÇØ¾ß ÇÒ Á¤µµ °°½À´Ï´Ù.Áß¿äÇÑ ÇÙ½ÉÆ÷ÀÎÆ®¸¦ Á¦¿ÜÇÑ ºÎºÐÀº ¹ø¿ªÀ¸·Î ÀÎÇØ¼­±×³É °Ç³Ê¶Ù°í ÀÐ°Ô µÇ¾ú³×¿ä. 
¹ø¿ªÀÌ Àß µÈ ÆíÀº ¾Æ´Ï¶ó°í »ý°¢ÇÕ´Ï´Ù.
ÀüÁ¾¿ì´ÔÀÌ ¾²½Å ¼­Æòº¸±â I ÆòÁ¡ I Á¶È¸¼ö(950) I °ø°¨ (0) I ºí·Î±×
°úµµÇÑ ¹ø¿ªµéµµ ´«¿¡ º¸À̰í, ¹®¹ý¿¡ ¸Â´Â ¹®ÀåÀÌ ¾Æ´Ñ °Íµéµµ ´«¿¡ ¶ç³×¿ä.ÀÐÀ¸¸é¼­ ¿ø¹®Àº ¾î¶®À»±î »ý°¢µÇ´Â ³»¿ëµéµµ ÀÖ½À´Ï´Ù.Ã¥ÀÇ ³»¿ëÀº ÁÁÀº °Í °°Àºµ¥ ¾ÈŸ±õ³×¿ä.
 
ÃÊ Áß °í
ÀüüÆò±Õ(88)
ȸ¿øÆòÁ¡   ȸ¿ø¼­Æò¼ö 3
¹ø¿ªÀÌ ³Ê¹«Çϳ׿ä.
Ãß±³¼º ´Ô  2012-10-29
¹ø¿ªÀÌ...
³ª¼ºÈÆ ´Ô  2012-06-12
¹ø¿ªÀÌ Àß µÈ ÆíÀº ¾Æ´Ï¶ó°í »ý°¢ÇÕ´Ï´Ù.
ÀüÁ¾¿ì ´Ô  2012-04-13
Joe Duffy ÀÇ ÃÖ±Ù Àú¼­
 
Children of the Troubles
29,100¿ø
(23%¡é+1%)
 
International Perspectives on Social Work and Political Conflict
163,800¿ø
(22%¡é+1%)
 
Duffy's Dublin
31,250¿ø
(23%¡é+1%)
 
Service User Involvement in Social Work Education
169,260¿ø
(22%¡é+1%)
 
Relishing Marketing: Illustrations of Food & Drink Packaging
44,740¿ø
(20%¡é+1%)
 
¿¡ÀÌÄÜ ÃâÆÇ»çÀÇ ½Å°£
ÀÚ¿¬¾î ó¸®¿Í µö·¯´×
¸® µ¢/±èÀç¹Î Àú
36,000¿ø
(10%¡é+5%)
 
µ¥ÀÌÅͺ£À̽º ÀÎÅͳνº
ÀÌÅÂÈÖ/ÀÌ¿ìÇö Àú
31,500¿ø
(10%¡é+5%)
 
UX ¸®¼­Ä¡
µ¥À̺ñµå Æ®·¡ºñ½º.Çʸ³ È£Áö½¼ ÁöÀ½/½É±Ô´ë Àú
27,000¿ø
(10%¡é+5%)
 
ÀÚ»ê¿î¿ëÀ» À§ÇÑ ±ÝÀ¶ ¸Ó½Å·¯´×
À̱âÈ« Àú
18,000¿ø
(10%¡é+5%)
 
ŸÀÔ½ºÅ©¸³Æ® ½ÇÀü ÇÁ·ÎÁ§Æ®(À¥ ÇÁ·ÎÆä¼Å³Î)
ÇÇÅÍ ¿ÀÇÑ·Ð/±èÀ¯¼º Àú
31,500¿ø
(10%¡é+5%)
 
À̸ÞÀÏÁÖ¼Ò¼öÁý°ÅºÎ