READV
Section: ¸®´ª½º ÇÁ·Î±×·¡¸Ó ¸Å´º¾ó (2)
Updated: 1999³â 1¿ù 20ÀÏ
Index
Return to Main Contents
À̸§
readv, writev - º¤Å͸¦ Àаųª ¾´´Ù.
»ç¿ë¹ý
#include <sys/uio.h>
int readv(int fd, const struct iovec * vector, int count);
int writev(int fd, const struct iovec * vector, int count);
struct iovec {
__ptr_t iov_base; /* ½ÃÀÛ ÁÖ¼Ò */
size_t iov_len; /* ¹ÙÀÌÆ®¼ö ±æÀÌ */
};
¼³¸í
readv ´Â ÆÄÀÏ ±â¼úÀÚ fd ¿¡¼ µ¥ÀÌÅ͸¦ Àаí, ±×¸®°í °á°ú¸¦
vector °¡ °¡¸®Å°°í ÀÖ´Â ¹öÆÛ¿¡ ³Ö´Â´Ù. ¹öÆÛÀÇ ¼ýÀÚ´Â
count ¿¡ ÀÇÇØ ÁöÁ¤µÈ´Ù. ¹öÆÛ´Â ÁöÁ¤µÈ ¼ø¼·Î ä¿öÁø´Ù.
µ¥ÀÌÅÍ°¡ ¿¬¼ÓÀûÀÎ ¹öÆÛ ´ë½Å¿¡
vector ¿¡ ³Ö¾îÁö´Â°ÍÀ» Á¦¿ÜÇÏ°í
read ó·³ ÀÛµ¿ÇÑ´Ù.
writev ´Â vector °¡ °¡¸®Å°°í ÀÖ´Â ¹öÆÛ¿¡¼
ÆÄÀÏ ±â¼úÀÚ fd ¿¡ µ¥ÀÌÅ͸¦ ¾´´Ù.
¹öÆÛÀÇ ¼ýÀÚ´Â count ¿¡ ÀÇÇØ ÁöÁ¤µÈ´Ù. ¹öÆÛ´Â ÁöÁ¤µÈ ¼ø¼·Î »ç¿ëµÈ´Ù.
µ¥ÀÌÅ͸¦ ¿¬¼ÓÀûÀÎ ¹öÆÛ ´ë½Å¿¡
vector ¿¡¼ °¡Á®¿À´Â°ÍÀ» Á¦¿ÜÇÏ°í
write ó·³ ÀÛµ¿ÇÑ´Ù.
¹Ýȯ°ª
¼º°ø½Ã, readv ´Â ÀÐÀº ¹ÙÀÌÆ®¼ö¸¦ ¹ÝȯÇÑ´Ù.
¼º°ø½Ã, writev ´Â ¾²¿©Áø ¹ÙÀÌÆ®ÀÇ ¼ö¸¦ ¹ÝȯÇÑ´Ù.
¿¡·¯½Ã, -1ÀÌ ¸®Åϵǰí errno ´Â Àû´çÇÑ °ªÀ¸·Î ¼³Á¤µÈ´Ù.
¿¡·¯
- EINVAL
-
À¯È¿ÇÏÁö ¾ÊÀº ÀÎÀÚ°¡ ÁÖ¾îÁ³´Ù. ¿¹¸¦ µé¾î count °¡
MAX_IOVEC, ¶Ç´Â 0º¸´Ù Å©´Ù.
fd °¡ Àаųª(readv) ¾²±â(writev) ¿¡ ¾Ë¸ÂÁö ¾ÊÀº °´Ã¼¿Í
¿¬°áµÇ¾î ÀÖ´Ù.
- EFAULT
-
"Segmentation fault." ´ëü·Î vector ³ª
iov_base ÀÇ ¸î¸î Æ÷ÀÎÅ͵éÀÌ ¿Ã¹Ù¸£°Ô ÇÒ´çµÇÁö ¾ÊÀº ¸Þ¸ð¸®¸¦ °¡¸®Å°°í ÀÖ´Ù.
- EBADF
-
ÆÄÀÏ ±â¼úÀÚ fd °¡ À¯È¿ÇÏÁö ¾Ê´Ù.
- EINTR
-
ÇÔ¼ö°¡ ¾î¶² µ¥ÀÌÅ͸¦ ÀÐ°í ¾²±â Àü¿¡ ½ÅÈ£¿¡ ÀÇÇØ ÀÎÅÍ·´Æ®µÇ¾ú´Ù.
- EAGAIN
-
Non-blocking I/O °¡
O_NONBLOCK ¸¦ »ç¿ëÇÏ¿© ¼±ÅõǾî Á³°í Àбâ À§ÇØ Áï½Ã ÀÌ¿ëÇÒ¼ö ÀÖ´Â
µ¥ÀÌÅÍ°¡ ¾ø´Ù.
(¶Ç´Â ÆÄÀÏ ±â¼úÀÚ fd°¡ Àá°ÜÁ® ÀÖ´Â °´Ã¼¸¦ À§ÇÑ °ÍÀÌ´Ù.)
- EISDIR
-
fd °¡ µð·ºÅ丮¸¦ °¡¸®Å²´Ù.
- EOPNOTSUP
-
fd °¡ Àбâ/¾²±â°¡ Áö¿øµÇÁö ¾Ê´Â ¼ÒÄÏÀ̳ª ÀåÄ¡¸¦ °¡¸®Å²´Ù.
- ENOMEM
-
ÀÌ¿ëÇÒ¼ö ÀÖ´Â Ä¿³Î ¸Þ¸ð¸®°¡ ÃæºÐÇÏÁö ¾Ê´Ù.
fd ¿Í ¿¬°áµÈ °´Ã¼¿¡ ÀÇÁ¸ÇÏ¿© ´Ù¸¥ ¿¡·¯µéÀÌ ¹ß»ýÇÒ¼ö ÀÖ´Ù.
ȣȯ
4.4BSD (
readv
±×¸®°í
writev
ÇÔ¼ö´Â BSD 4.2¿¡¼ óÀ½ ³ªÅ¸³µ´Ù), Unix98. Linux libc5 ´Â
count ÀÎÀÚÀÇ Å¸ÀÔÀ¸·Î½á
size_t ¸¦ »ç¿ëÇÏ¿´´Ù. ÀÌ°ÍÀº Ÿ´çÇÏÁö¸¸ Ç¥ÁØÀº ¾Æ´Ï´Ù.
°ü·Ã Ç׸ñ
read(2),
write(2),
fprintf(3),
fscanf(3)
¿ªÀÚ
Á¤°ÈÆ <skyeyes@soback.kornet.net>, 2000³â 8¿ù 7ÀÏ
Index
- À̸§
-
- »ç¿ë¹ý
-
- ¼³¸í
-
- ¹Ýȯ°ª
-
- ¿¡·¯
-
- ȣȯ
-
- °ü·Ã Ç׸ñ
-
- ¿ªÀÚ
-
This document was created by
man2html,
using the manual pages.
Time: 08:07:01 GMT, March 25, 2004