JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... h > ssize_t vmsplice(int fd , const struct iovec * iov , unsigned long nr_segs , unsigned int flags ); 説明 If fd is opened for writing, the vm ... splice () system call maps nr_segs ranges of user memory described by iov into a pipe. If fd is opened for reading, the vmsplice () system call fills nr_segs ranges of user memory described by iov from a pipe. The file descriptor fd must refer to a pi ... ス */ size_t iov_len; /* バイト数 */ }; flags 引数には、以下の値の 0 個以上をビット毎の論理和の形で指定する。 SPLICE_F_MOVE vmsplice () では未使用。 splice (2) 参照。 SPLICE_F_NONBLOCK 入出力で停止 (block) しない。詳細は splice (2) 参照。 SPLICE_F_MORE 現 ... ... に有用なヒントとなる ( send (2) の MSG_MORE や tcp (7) の TCP_CORK の説明も参照)。 SPLICE_F_GIFT splice () では使用しない。 vmsplice (2) 参照。 返り値 Upon successful completion, splice () returns the number of bytes spliced to or from the pipe. A return ... トは glibc バージョン 2.5 で追加された。 準拠 このシステムコールは Linux 固有である。 注意 3 つのシステムコール ( splice (), vmsplice (2), tee (2)) を使うと、ユーザー空間プログラムは任意のカーネルバッファーに対する 完全な制御ができる。カーネルバッファーは、 ... ァーから別のバッファーへの、データ移動を行う。 • tee (2) は、あるバッファーから別のバッファーへのデータ「コピー」を行う。 • vmsplice (2) は、ユーザー空間からバッファーへのデータ「コピー」を行う。 ここではコピーの話をしているが、実際のコピーは一般的に回避さ ... ... のところ tee () では何の効果もないが、将来的には実装される可能性がある。 splice (2) 参照。 SPLICE_F_GIFT tee () では未使用。 vmsplice (2) 参照。 返り値 成功して完了すると、 tee () は入出力間で複製されたバイト数を返す。 返り値 0 はデータの転送が行われなかっ ... (slen < 0) { perror("splice"); break; } len -= slen; } } while (1); close(fd); exit(EXIT_SUCCESS); } 関連項目 splice (2), vmsplice (2), pipe (7) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説 ... ... it(NULL); /* 子プロセスを待つ */ exit(EXIT_SUCCESS); } } 関連項目 fork (2), read (2), socketpair (2), splice (2), tee (2), vmsplice (2), write (2), popen (3), pipe (7) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部で ... ... it(NULL); /* 子プロセスを待つ */ exit(EXIT_SUCCESS); } } 関連項目 fork (2), read (2), socketpair (2), splice (2), tee (2), vmsplice (2), write (2), popen (3), pipe (7) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部で ... ... (2) 2.2 SPARC64 のみ vfork (2) 2.2 vhangup (2) 1.0 vm86old (2) 1.0 Was "vm86"; renamed in 2.0.28/2.2 vm86 (2) 2.0.28; 2.2 vmsplice (2) 2.6.17 wait4 (2) 1.0 waitid (2) 2.6.10 waitpid (2) 1.0 write (2) 1.0 writev (2) 2.0 xtensa (2) 2.6.13 Xtensa のみ x86- ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。