IPC - Inter Process Communication
ÃÑ ÆäÀÌÁö ¼ö : 3121

Àüü ÇÔ¼ö/¿ë¾î»çÀü
ÇöÀçÀ§Ä¡ : ¸Þ´º¾ó>ÄÄÇ»ÅÍ¿ë¾î>IPC


Contents

1 IPC
2 ÁÖ¿ä IPC ¹æ½Ä
3 IPC °ü·ÃÇÔ¼ö
4 À©µµ IPC
5 IPC °ü·Ã ¹®¼­µé
5.1 ¸®´ª½º IPC ÇÁ·Î±×·¡¹Ö
5.2 À©µµ IPC ÇÁ·Î±×·¡¹Ö
6 °ü·Ã¹®¼­

1 IPC

Inter Process CommunicationÀÇ ÁÙÀÓ¸»·Î, ³»ºÎ ÇÁ·Î¼¼½º°£ Åë½ÅÀ» ¸»ÇÑ´Ù. ³»ºÎ ÇÁ·Î¼¼½º ȤÀº thread°£ Åë½ÅÀ» À§Çؼ­´Â IPC ¼³ºñµéÀÌ ÇÊ¿äÇÏ´Ù. IPC ¼³ºñ´Â ¸Þ½ÃÁöÀü´Þ, µ¿±âÈ­, °øÀ¯¸Þ¸ð¸®, RPC(remote procedure calls)¸¦ Áö¿øÇϱâ À§ÇÑ ÅøµéÀ» Á¦°øÇÑ´Ù.

IPC´Â ´ÙÀ½°ú °°Àº ¸ñÀûÀ¸·Î »ç¿ëµÈ´Ù.
  • Á¤º¸°øÀ¯
  • °è»ê¼º´É Çâ»ó
    µ¥ÀÌÅ͸¦ ³ª´©¾î¼­ °è»êÇÒ ¼ö Àֱ⠶§¹®¿¡ ¼º´ÉÇâ»óÀ» ³ë¸± ¼ö ÀÖ´Ù.
  • ¸ðµâ¹æ½ÄÀÇ Á¦ÀÛ
    ÇϳªÀÇ °Å´ëÇÑ ÇÁ·Î±×·¥À» ¸¸µå´Â ´ë½Å, ¿©·¯°³ÀÇ ´ÜÀ§ ÇÁ·Î±×·¥À» ¸¸µå´Â ¹æ½ÄÀ¸·Î ¸ðµâÈ­ ÇÒ ¼ö ÀÖ´Ù. ÀÌµé ´ÜÀ§ ÇÁ·Î±×·¥µéÀº IPC¸¦ ÀÌ¿ëÇØ¼­ Åë½ÅÀ» ÇÏ°Ô µÈ´Ù. À¯Áö/º¸¼ö/È®ÀåÀÌ ½¬¿öÁø´Ù.

ÀüÅëÀûÀ¸·Î À¯´Ð½º´Â ¾Æ·¡ÀÇ IPC¼³ºñ¸¦ Á¦°øÇϰí ÀÖ´Ù.

2 ÁÖ¿ä IPC ¹æ½Ä

¹æ½Ä Á¦°øÈ¯°æ
File ½Ã½ºÅÛÀü¿ªÀûÀÎ ÀÚ¿øÀ¸·Î ¸ðµç ¿î¿µÃ¼Á¦¿¡¼­ Á¦°øÇÑ´Ù.
signal ¸ðµç ¿î¿µÃ¼Á¦¿¡¼­ Á¦°øÇÑ´Ù. windows´Â Á¦ÇÑÀûÀ¸·Î Á¦°øÇÑ´Ù.
socket ¸ðµç ¿î¿µÃ¼Á¦¿¡¼­ Á¦°øÇÑ´Ù.
message queue ¸ðµç ¿î¿µÃ¼Á¦¿¡¼­ Á¦°øÇÑ´Ù.
pipe ¸ðµç POSIX system
named pipe ¸ðµç POSIX system
semaphore ¸ðµç POSIX system
shared memory ¸ðµç POSIX system
Message passing Java RMI, CORBA
memory mapped ¸ðµç POSIX


3 IPC °ü·ÃÇÔ¼ö

pipe(2) ÆÄÀÌÇÁ¸¦ »ý¼ºÇÑ´Ù.
mmap(2) ÆÄÀÏÀ» ¸Þ¸ð¸®¿¡ ´ëÀÀ½ÃŲ´Ù.
munmap(2) ÁöÁ¤µÈ ÁÖ¼Ò°ø°£¿¡ ´ëÇÑ ÂüÁ¶¸¦ ¾ø¾Ø´Ù.
msgget(2) ¸Þ½ÃÁöÅ¥¸¦ »ý¼ºÇÑ´Ù.
msgsnd(2) ¸Þ½ÃÁöÅ¥¿¡ µ¥ÀÌÅ͸¦ ¾´´Ù.
msgrcv(2) ¸Þ½ÃÁöÅ¥¿¡¼­ µ¥ÀÌÅ͸¦ Àд´Ù.
shmget(2) °øÀ¯¸Þ¸ð¸® °ø°£À» ¿äûÇÑ´Ù.
shmat(2) °øÀ¯¸Þ¸ð¸® °ø°£À» ÇÁ·Î¼¼½º¿¡ ºÙÀÓ
shmdt(2) °øÀ¯¸Þ¸ð¸® °ø°£À» ÇÁ·Î¼¼½º¿¡¼­ ºÐ¸®
shmctl(2) °øÀ¯¸Þ¸ð¸® °ø°£À» Á¦¾îÇÑ´Ù.
semget(2) ¼¼¸¶Æ÷¾î¸¦ »ý¼º ȤÀº Á¢±Ù
semop(2) ¼¼¸¶Æ÷¾î°ªÀ» º¯°æÇÏ´Ù.
semctl(2) ¼¼¸¶Æ÷¾î ¼³Á¤

4 À©µµ IPC

5 IPC °ü·Ã ¹®¼­µé

5.1 ¸®´ª½º IPC ÇÁ·Î±×·¡¹Ö

À̸§
Á¦¸ñ
º¯°æÀÏ
Å©±â
Unix Domain Socket¸¦ ÀÌ¿ëÇÑ °è»ê±â ¸¸µé±â ¿¹Á¦
2009/05/08 11:08
99
FIFO Ȱ¿ë
2009/05/07 09:27
10533
IPC : ¸Þ½ÃÁö Å¥
2010/02/02 14:40
12535
°øÀ¯ ¸Þ¸ð¸®ÀÇ »ç¿ë
2010/01/26 13:41
12713
Unix Domain Socket
2007/08/28 09:40
11793
Unix Domain Socket UDP
2010/02/02 13:14
13669
PIPEÀÇ »ç¿ë
2007/01/23 21:54
8723
D-BUS¸¦ ÀÌ¿ëÇÑ µ¥½ºÅ©Å¾ ÀÀ¿ë ¿¬°á
2008/04/29 01:44
1815
¸Þ¸ð¸®¸Ê
2009/10/22 12:58
11507
°øÀ¯¸Þ¸ð¸®¿Í ·¹ÄÚµå Àá±ÝÀ» ÀÌ¿ëÇÑ ÇÁ·Î¼¼½º°£ µ¥ÀÌÅÍó¸®
2009/03/09 10:15
13767
¸®´ª½º ÀÍ¸í ÆÄÀÌÇÁ ÀÀ¿ë
2010/01/29 10:31
9133
¼¼¸¶Æ÷¾îÀÇ »ç¿ë - POSIX Semaphore & System V Semaphore
2010/03/26 00:27
21043
socketpairÀ» ÀÌ¿ëÇÑ IPC
2010/01/29 11:05
6129
System V IPC ¼Ò°³
2010/01/29 10:34
5623

5.2 À©µµ IPC ÇÁ·Î±×·¡¹Ö

À̸§
Á¦¸ñ
º¯°æÀÏ
Å©±â
À̺¥Æ® °´Ã¼
2010/04/12 14:14
5811
À©µµ ¼¼¸¶Æ÷¾î »ç¿ëÇϱâ.
2010/02/26 00:25
905
À©µµ ÀÍ¸í ÆÄÀÌÇÁ
2010/01/29 13:20
3541
À©µµ ½Ã½ºÅÛ ÇÁ·Î±×·¡¹Ö : named pipe
2010/02/05 00:32
1281