MSGOP
Section: ¸®´ª½º ÇÁ·Î±×·¡¸Ó ¸Å´º¾ó (2)
Updated: 1993³â 11¿ù 1ÀÏ
Index
Return to Main Contents
 
À̸§
msgop - ¸Þ¼¼Áö ÀÛµ¿µé
 
»ç¿ë¹ý
# include <sys/types.h>
# include <sys/ipc.h>
# include <sys/msg.h>
int msgsnd ( int msqid,
struct msgbuf *msgp,
int msgsz,
int msgflg )
int msgrcv ( int msqid,
struct msgbuf *msgp,
int msgsz,
long msgtyp,
int msgflg )
 
¼³¸í
¸Þ¼¼Áö¸¦ º¸³»°í ¹Þ±â À§Çؼ, È£Ãâ ÇÁ·Î¼¼½º´Â ´ÙÀ½°ú °°Àº ±¸Á¶Ã¼¸¦ ÇÒ´çÇØ¾ß 
ÇÑ´Ù.
       struct msgbuf {
               long    mtype;  
/* ¸Þ¼¼Áö ŸÀÔ, 0 º¸´Ù Ä¿¾ß ÇÑ´Ù */
               char    mtext[1];       
/* ¸Þ¼¼Áö µ¥ÀÌÅÍ */
       };
±×·¯³ª ¹è¿
mtext
°¡ °¡Áö°í ÀÖ´Â
msgszÀÇ
Å©±â´Â ¾ç¼ö °ªÀ̾î¾ß ÇÑ´Ù.
±¸Á¶Ã¼ ¸â¹ö
mtype
Àº È£Ãâ ÇÁ·Î¼¼½º°¡ ¸Þ¼¼Áö ¼±ÅÃÀ» À§ÇØ »ç¿ëÇÒ¼ö ÀÖµµ·Ï È®½ÇÈ÷ ¾ç¼ö°ªÀ̾î¾ß ÇÑ´Ù.
(
msgrcv¸¦
ÂüÁ¶Çضó).
È£Ãâ ÇÁ·Î¼¼½º´Â Å¥¿¡ ÀÖ´Â ¸Þ¼¼Áö¸¦ º¸³»±â À§ÇØ ¾²±â Á¢±ÙÀ» °¡Áö°í ÀÖ¾î¾ß Çϸç 
¸Þ¼¼Áö¸¦ ¹Þ±â À§ÇØ Àбâ Çã°¡±ÇÀ» °¡Áö°í ÀÖ¾î¾ß ÇÑ´Ù.
msgsnd
½Ã½ºÅÛ ÄÝÀº 
msgp
ÀÎÀÚ°¡ °¡¸®Å°°í ÀÖ´Â ¸Þ¼¼ÁöÀÇ º¹»çº»À» ½Äº°ÀÚ°¡
msqid
ÀÎÀÚ °ªÀÎ ¸Þ¼¼Áö Å¥¿¡ ³Ö´Â´Ù.
msgflg
ÀÎÀÚ´Â µé¾î¿Â »õ ¸Þ¼¼Áö°¡ ¸¸ÀÏ Å¥¿¡¼
msg_qbytes
ÀÌ»óÀ» ¿ä±¸ÇÑ´Ù¸é ½Ã½ºÅÛ ÄÝÀÇ ÇൿÀ» ÁöÁ¤ÇÑ´Ù.
IPC_NOWAIT
°¡ ¸í½ÃµÇ¾ú´Ù¸é ¸Þ¼¼Áö´Â º¸³»ÁöÁö ¾ÊÀ¸¸ç ½Ã½ºÅÛ ÄÝÀº 
errno
¸¦ 
EAGAINÀ¸·Î
¼³Á¤ÇÏ°í ½ÇÆÐ¸¦ ¸®ÅÏÇÑ´Ù. ¸¸¾à ±×·¸Áö ¾ÊÀ¸¸é ÇÁ·Î¼¼½º´Â ÁßÁö»óŰ¡ ´õÀÌ»ó Á¸ÀçÇÏÁö ¾ÊÀ»¶§±îÁö³ª(¸Þ¼¼Áö°¡ º¸³»Áö°í ½Ã½ºÅÛ È£ÃâÀÌ ¼º°øÇßÀ» °æ¿ì), Å¥°¡ Á¦°ÅµÇ¾ú°Å³ª(½Ã½ºÅÛ È£ÃâÀÌ 
errno
¸¦ 
EIDRM·Î
¼³Á¤ÇÏ°í ½ÇÆÐÇßÀ» °æ¿ì), ÇÁ·Î¼¼½º°¡ ½ÅÈ£¸¦ ¹ÞÀ»¶§±îÁö ÀϽà ÁßÁöµÈ´Ù(½Ã½ºÅÛ 
È£ÃâÀÌ 
errno
¸¦ 
EINTR·Î
¼³Á¤ÇÏ°í ½ÇÆÐÇßÀ» °æ¿ì).
¼º°ø½Ã ¸Þ¼¼Áö Å¥ µ¥ÀÌÅÍ ±¸Á¶´Â ´ÙÀ½°ú °°ÀÌ °»½ÅµÈ´Ù:
- 
msg_lspid
´Â È£Ãâ ÇÁ·Î¼¼½ºÀÇ ÇÁ·Î¼¼½º-ID·Î ¼³Á¤µÈ´Ù.
- 
msg_qnum
´Â 1 Áõ°¡ÇÑ´Ù.
- 
msg_stime
´Â ÇöÀç ½Ã°£À¸·Î ¼³Á¤µÈ´Ù.
msgrcv
½Ã½ºÅÛ È£ÃâÀº 
msqid
°¡ °¡¸®Å°´Â ¸Þ¼¼Áö Å¥¿¡¼ ¸Þ¼¼Áö¸¦ ÀÐ¾î¼ 
msgp
ÀÎÀÚ°¡ °¡¸®Å°´Â 
msgbuf
·Î º¹»çÇϸç, ¼º°ø½Ã ¸Þ¼¼Áö Å¥¿¡¼ ÀÐÀº ÇØ´ç ¸Þ¼¼Áö´Â »èÁ¦µÈ´Ù.
ÀÎÀÚ
msgsz
´Â 
msgp
ÀÎÀÚ°¡ °¡¸®Å°´Â ±¸Á¶Ã¼¿¡¼
mtext
¸â¹öÀÇ ÃÖ´ë Å©±â ¹ÙÀÌÆ®¸¦ °¡¸®Å²´Ù.
¸Þ¼¼Áö ÅØ½ºÆ®°¡ 
msgszº¸´Ù
Å« ±æÀ̸¦ °¡Áö°í
msgflg
ÀÎÀÚ¿¡
MSG_NOERROR°¡
¸í½ÃµÇ¾î ÀÖ´Ù¸é ¸Þ¼¼Áö ÅØ½ºÆ®´Â À߸°´Ù(±×¸®°í Àß·ÁÁø ºÎºÐÀ» ÀҴ´Ù).
¸¸ÀÏ ±×·¸Áö ¾ÊÀ¸¸é ¸Þ¼¼Áö´Â Å¥¿¡¼ Á¦°Å µÇÁö ¾ÊÀ¸¸ç ½Ã½ºÅÛ ÄÝÀº 
errno
¸¦ 
E2BIGÀ¸·Î
¼³Á¤ÇÏ°í ½ÇÆÐ¸¦ ¹ÝȯÇÑ´Ù.
ÀÎÀÚ
msgtyp
´Â ´ÙÀ½°ú °°Àº ¸Þ¼¼Áö ŸÀÔÀ» ÁöÁ¤ÇÑ´Ù.
- 
¸¸ÀÏ
msgtyp
°¡ 
0À̸é,
Å¥ÀÇ ¾Õ¿¡ ÀÖ´Â ¸Þ¼¼Áö¸¦ Àд´Ù.
- 
¸¸ÀÏ
msgtyp
°¡
0º¸´Ù
Å©°í
MSG_EXCEPT
°¡ 
msgflg
ÀÎÀÚ¿¡ ÀÇÇØ ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê´Ù¸é,
msgtyp
ŸÀÔ Å¥ÀÇ Ã³À½ ¸Þ¼¼Áö°¡ ÀÐÇôÁø´Ù.
¸¸ÀÏ ±×·¸Áö ¾ÊÀ¸¸é 
msgtyp
°ú °°Áö ¾ÊÀº ŸÀÔÀÇ Å¥¿¡ Àִ óÀ½ ¸Þ¼¼Áö¸¦ Àд´Ù.
- 
¸¸ÀÏ
msgtyp
ÀÌ 
0º¸´Ù
ÀÛ´Ù¸é, 
msgtyp
Àý´ë°ªº¸´Ù À۰ųª °°Àº ŸÀÔÀÇ Å¥¿¡ Àִ óÀ½ ¸Þ¼¼Áö°¡ ÀÐÇôÁø´Ù.
msgflg
ÀÎÀÚ´Â ´ÙÀ½°ú °°Àº Ç÷¡±×Áß Çϳªµµ ¾ø°Å³ª, Çϳª ¶Ç´Â ±× ÀÌ»óÀ»(¶Ç´Â 
±×°Íµé Áß¿¡¼)ÁöÁ¤ÇÑ´Ù:
- 
IPC_NOWAIT
¿ä±¸µÈ ŸÀÔÀÇ ¸Þ¼¼Áö°¡ Å¥¿¡ ¾ø´Ù¸é Áï½Ã ¸®ÅÏÇÑ´Ù. ½Ã½ºÅÛ ÄÝÀº errno¸¦
ENOMSGÀ¸·Î
¼³Á¤ÇÏ°í ½ÇÆÐÇÑ´Ù.
- 
MSG_EXCEPT
msgtyp°ú
´Ù¸¥ ¸Þ¼¼Áö ŸÀÔÀ» °¡Áö°í Àִ ťÀÇ Ã³À½ ¸Þ¼¼Áö¸¦ Àбâ À§ÇØ 
0
º¸´Ù Å« 
msgtyp
À» »ç¿ëÇÑ´Ù.
- 
MSG_NOERROR
msgsz
¹ÙÀÌÆ®º¸´Ù Å©´Ù¸é ¸Þ¼¼Áö ÅØ½ºÆ®¸¦ ÀÚ¸¥´Ù.
¸¸ÀÏ ¿ä±¸µÈ ŸÀÔÀÇ ¸Þ¼¼Áö¸¦ ÀÌ¿ëÇÒ¼ö ¾øÀ¸¸ç 
IPC_NOWAIT
°¡ 
msgflg¿¡
ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê´Ù¸é, È£Ãâ ÇÁ·Î¼¼½º´Â ´ÙÀ½ Á¶°ÇÁß Çϳª°¡ ÀϾ¶§±îÁö ºí·°
µÈ´Ù.
- 
¿øÇϴ ŸÀÔÀÇ ¸Þ¼¼Áö°¡ Å¥¿¡ ÀÖ´Ù.
- 
¸Þ¼¼Áö Å¥´Â ½Ã½ºÅÛ¿¡¼ Á¦°Å µÇ¾ú´Ù.
±×·± °æ¿ì ½Ã½ºÅÛ È£ÃâÀº 
errno
¸¦ 
EIDRMÀ¸·Î
¼³Á¤ÇÏ°í ½ÇÆÐÇÑ´Ù.
- 
È£Ãâ ÇÁ·Î¼¼½º°¡ ÀâÀ» ¼ö ÀÖ´Â ½ÅÈ£¸¦ ¹Þ¾Ò´Ù.
±×·± °æ¿ì ½Ã½ºÅÛ È£ÃâÀº 
errno
¸¦  
EINTRÀ¸·Î
¼³Á¤ÇÏ°í ½ÇÆÐÇÑ´Ù.
¼º°ø½Ã, ¸Þ¼¼Áö Å¥ µ¥ÀÌÅÍ ±¸Á¶´Â ´ÙÀ½°ú °°ÀÌ °»½ÅµÈ´Ù:
- 
msg_lrpid
´Â È£Ãâ ÇÁ·Î¼¼½ºÀÇ ÇÁ·Î¼¼½º-ID·Î ¼³Á¤µÈ´Ù.
- 
msg_qnum
´Â 1 °¨¼ÒÇÑ´Ù.
- 
msg_rtime
´Â ÇöÀç ½Ã°£À¸·Î ¼³Á¤µÈ´Ù.
¹Ýȯ°ª
½ÇÆÐ½Ã µÎÇÔ¼ö ¸ðµÎ 
-1
À» ¸®ÅÏÇÑ´Ù.
errno
´Â ¿¡·¯¸¦ °¡¸®Å²´Ù.
¸¸ÀÏ ±×·¸Áö ¾ÊÀ¸¸é 
msgsnd
´Â
0
À» ¹ÝȯÇϸç 
msgrvc
´Â 
mtext
¹è¿·Î ½ÇÁ¦·Î º¹»çµÈ ¹ÙÀÌÆ®¼ö¸¦ ¹ÝȯÇÑ´Ù.
 
¿¡·¯
msgsnd
°¡ ½ÇÆÐÇϸé, ¹Ýȯ½Ã 
errno
´Â ´ÙÀ½Áß Çϳª·Î ¼³Á¤µÈ´Ù.
- EAGAIN
- 
¸Þ¼¼Áö¸¦ Å¥ÀÇ 
msg_qbytes
Á¦ÇÑ °ª ¶§¹®¿¡ º¸³¾¼ö ¾ø´Ù. ±×¸®°í 
IPC_NOWAIT
´Â 
mgsflgÀÎÀÚ¿¡
ÁöÁ¤µÇ¾î ÀÖ´Ù.
- EACCES
- 
È£Ãâ ÇÁ·Î¼¼½º´Â ¸Þ¼¼Áö Å¥¿¡ ¾²±â Á¢±Ù Çã°¡±ÇÀ» °¡Áö°í ÀÖÁö ¾Ê´Ù.
- EFAULT
- 
msgp
°¡ °¡¸®Å°°í ÀÖ´Â ÁÖ¼Ò¸¦ Á¢±ÙÇÒ¼ö ¾ø´Ù.
- EIDRM
- 
¸Þ¼¼Áö Å¥°¡ Á¦°Å µÇ¾ú´Ù.
- EINTR
- 
¸ðµç ¸Þ¼¼Áö Å¥°¡ Àáµç »óÅÂÀ϶§ ÇÁ·Î¼¼½º°¡ ÀâÀ»¼ö ÀÖ´Â ½ÅÈ£¸¦ ¹Þ¾Ò´Ù.
- EINVAL
- 
À¯È¿ÇÏÁö ¾ÊÀº 
msqid
°ªÀ̳ª À½¼öÀÇ 
mtype
°ªÀ̳ª, À¯È¿ÇÏÁö ¾ÊÀº 
msgsz
°ª(0º¸´Ù À۰ųª ½Ã½ºÅÛ °ª
MSGMAXº¸´Ù
Ŭ °æ¿ì).
- ENOMEM
- 
½Ã½ºÅÛÀÌ Á¦°øµÈ 
msgbuf¿¡
º¹»çÇÒ ÃæºÐÇÑ ¸Þ¸ð¸®¸¦ °¡Áö°í ÀÖÁö ¾Ê´Ù.
msgrcv
°¡ ½ÇÆÐÇÒ¶§, ¹Ýȯ½Ã 
errno
´Â ´ÙÀ½ °ªÁß Çϳª·Î ¼³Á¤µÈ´Ù.
- E2BIG
- 
¸Þ¼¼Áö ÅØ½ºÆ® ±æÀ̰¡ 
msgsz
º¸´Ù Å©°í 
MSG_NOERROR
°¡ 
msgflg¿¡
ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê´Ù.
- EACCES
- 
È£Ãâ ÇÁ·Î¼¼½º°¡ ¸Þ¼¼Áö Å¥¿¡ ´ëÇÑ Àбâ Á¢±Ù Çã°¡±ÇÀ» °¡Áö°í ÀÖÁö ¾Ê´Ù.
- EFAULT
- 
msgp
°¡ °¡¸®Å°°í ÀÖ´Â ÁÖ¼Ò¸¦ Á¢±ÙÇÒ¼ö ¾ø´Ù.
- EIDRM
- 
ÇÁ·Î¼¼½º°¡ ¸Þ¼¼Áö¸¦ ¹Þ±â À§ÇØ Àáµç µ¿¾È, ¸Þ¼¼Áö Å¥°¡ Á¦°Å µÇ¾ú´Ù.
- EINTR
- 
ÇÁ·Î¼¼½º°¡ ¸Þ¼¼Áö¸¦ ¹Þ±â À§ÇØ Àáµç µ¿¾È, ÇÁ·Î¼¼½º°¡ ÀâÀ»¼ö ÀÖ´Â ½ÅÈ£¸¦ ¹Þ¾Ò´Ù.
- EINVAL
- 
À¯È¿ÇÏÁö ¾ÊÀº 
msgqid
°ªÀ̳ª, 
msgsz
°¡ 
0º¸´Ù
ÀÛ´Ù.
- ENOMSG
- 
IPC_NOWAIT
°¡ 
msgflg
¿¡ ÁöÁ¤µÇ¾î ÀÖ°í ¿äûµÈ ŸÀÔÀÇ ¸Þ¼¼Áö°¡ ¸Þ¼¼Áö Å¥¿¡ Á¸ÀçÇÏÁö ¾Ê´Â´Ù.
ÁÖÀÇ
´ÙÀ½Àº 
msgsnd
½Ã½ºÅÛ ÄÝ¿¡ ¿µÇâÀ» ÁÖ´Â ½Ã½ºÅÛ Á¦ÇѰªµéÀÌ´Ù:
- MSGMAX
- 
¸Þ¼¼Áö ÅØ½ºÆ®ÀÇ ÃÖ´ë Å©±â: ¼öÇà½Ã ÀÌ °ªÀº 
4080 bytes·Î ¼³Á¤µÈ´Ù.
- MSGMNB
- 
¸Þ¼¼Áö Å¥ÀÇ ±âº» ÃÖ´ë Å©±â: Á¤Ã¥¿¡ ÀÇÁ¸ÀûÀ̸ç, ½´ÆÛ-À¯Àú´Â 
msgctl
½Ã½ºÅÛ È£Ãâ·Î ¸Þ¼¼Áö Å¥ÀÇ Å©±â¸¦
MSGMNB
ÀÌ»óÀ¸·Î Áõ°¡½Ãų¼ö ÀÖ´Ù.
¼öÇàÀº ¸Þ¼¼Áö Çì´õÀÇ ½Ã½ºÅÛ Àü¿ª ÃÖ´ë ¼ö
(MSGTQL)
¿Í ¸Þ¼¼Áö Ç®
(MSGPOOL)
ÀÇ ½Ã½ºÅÛ Àü¿ª ÃÖ´ë Å©±â¸¦ À§ÇÑ ¾î¶² ³»ºÎÀû Á¦ÇѰªÀ» °¡Áö°í ÀÖÁö ¾Ê´Ù.
 
ȣȯ
SVr4, SVID.
 
°ü·Ã Ç׸ñ
ipc(5),
msgctl(2),
msgget(2),
msgrcv(2),
msgsnd(2)
 
¿ªÀÚ
Á¤°ÈÆ <skyeyes@soback.kornet.net>, 2000³â 6¿ù 24ÀÏ
 Index
- À̸§
- 
- »ç¿ë¹ý
- 
- ¼³¸í
- 
- ¹Ýȯ°ª
- 
- ¿¡·¯
- 
- ÁÖÀÇ
- 
- ȣȯ
- 
- °ü·Ã Ç׸ñ
- 
- ¿ªÀÚ
- 
This document was created by
man2html,
using the manual pages.
Time: 08:07:00 GMT, March 25, 2004