[완료] 화일처리 :: Scatter gather I/O (스캐터 개더 입출력) 이란게 도대체 뭐에요?

APRIL1024의 이미지

번역본 책과 원서책을 봐도 Scatter gather I/O (스캐터 개더 입출력)이 뭐에 쓰이는지 모르겠습니다.
인터넷에서 찾아봐도 자료가 없네요.

간단한 설명 부탁드립니다.

wariua의 이미지

glibc 매뉴얼 중 일부입니다.

http://www.gnu.org/software/libc/manual/html_node/Scatter_002dGather.html

보시면 아시겠지만 '어랏, 겨우 그거였어?' 싶은 내용입니다. I/O 시스템 호출을 할 때 여러 개의 메모리 버퍼를 지정할 수 있는 방식이라고 할 수 있겠고, readv(), writev(), recvmsg(), sendmsg() 등이 그런 인터페이스를 제공하는 함수들입니다.

메모리 상에 여기 저기 흩어져 있는 데이터를 이어 붙여서 ('gather' 하는 셈이죠) 기록/전송해야 하는 경우에 새로운 버퍼를 만들 필요거나 할 필요 없이 한 번의 시스템 호출로 처리가 되니 편리합니다.
----
$PWD `date`

$PWD `date`

APRIL1024의 이미지

여러번의 system call호출의 부담을 줄이는게 목적이군요.
감사합니다. ^^