JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... , loff_t * off_in , int fd_out , loff_t * off_out , size_t len , unsigned int flags ); 説明 splice () は、カーネルアドレス空間とユーザーアドレス空間との間のコピーを伴わずに、 2 つのファイルディスクリプター間でデータの移動 ... 更されない。 fd_out と off_out に関しても同様である。 flags 引数には、以下の値の 0 個以上をビット毎の論理和の形で指定する。 SPLICE_F_MOVE ページのコピーでなく移動を試みる。 これはカーネルに対するヒントでしかない。 つまり、カーネルがパイプからページを移動 ... このフラグの最初の実装にはバグがあった。そのため、 Linux 2.6.21 以降ではこのフラグの操作はできないようになっている (ただし、 splice () コールでこのフラグを指定することは今も認められている)。 将来、正しい実装が行われることだろう。 SPLICE_F_NONBLOCK 入出力 ... ... 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) 参照。 ... ... バイトのデータを複製する。 この操作では、複製されるデータは fd_in からは消費されない。したがって、これらのデータをこの後の splice (2) でコピーすることができる。 flags is a bit mask that is composed by ORing together zero or more of the following values ... : SPLICE_F_MOVE 現在のところ tee () では何の効果もない。 splice (2) 参照。 SPLICE_F_NONBLOCK 入出力で停止 (block) しない。詳細は sp ... lice (2) 参照。 SPLICE_F_MORE 現在のところ tee () では何の効果もないが、将来的には実装される可能性がある。 splice (2) 参照。 SPLICE_F_GIFT tee () ... ... in_fd remain unmodified until the reader on the other end of out_fd has consumed the transferred data. The Linux-specific splice (2) call supports transferring data between arbitrary file descriptors provided one (or both) of them is a pipe. 関連項目 ... copy_file_range (2), mmap (2), open (2), socket (2), splice (2) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報 ... ... in_fd remain unmodified until the reader on the other end of out_fd has consumed the transferred data. The Linux-specific splice (2) call supports transferring data between arbitrary file descriptors provided one (or both) of them is a pipe. 関連項目 ... copy_file_range (2), mmap (2), open (2), socket (2), splice (2) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報 ... ... 側が EOF に出会う */ wait(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 プロジェクト ... ... 側が EOF に出会う */ wait(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 プロジェクト ... ... の「注意」の節を参照 socketcall (2) 1.0 socketpair (2) 2.0 socketcall (2) の「注意」の節を参照 spill (2) 2.6.13 Xtensa のみ splice (2) 2.6.17 spu_create (2) 2.6.16 PowerPC/PowerPC64 のみ spu_run (2) 2.6.16 PowerPC/PowerPC64 のみ ssetmask (2) 1.0 stat (2 ... 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- ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。