diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /po/ru/man2/splice.2.po | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/ru/man2/splice.2.po')
-rw-r--r-- | po/ru/man2/splice.2.po | 684 |
1 files changed, 684 insertions, 0 deletions
diff --git a/po/ru/man2/splice.2.po b/po/ru/man2/splice.2.po new file mode 100644 index 00000000..fbd22803 --- /dev/null +++ b/po/ru/man2/splice.2.po @@ -0,0 +1,684 @@ +# Russian translation of manpages +# This file is distributed under the same license as the manpages-l10n package. +# Copyright © of this file: +# Alexander Golubev <fatzer2@gmail.com>, 2018. +# Azamat Hackimov <azamat.hackimov@gmail.com>, 2011, 2014-2016. +# Hotellook, 2014. +# Nikita <zxcvbnm3230@mail.ru>, 2014. +# Spiros Georgaras <sng@hellug.gr>, 2016. +# Vladislav <ivladislavefimov@gmail.com>, 2015. +# Yuri Kozlov <yuray@komyakino.ru>, 2011-2019. +# Иван Павлов <pavia00@gmail.com>, 2017. +msgid "" +msgstr "" +"Project-Id-Version: manpages-l10n\n" +"POT-Creation-Date: 2024-03-01 17:08+0100\n" +"PO-Revision-Date: 2019-10-15 18:55+0300\n" +"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n" +"Language-Team: Russian <man-pages-ru-talks@lists.sourceforge.net>\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || " +"(n%100>=11 && n%100<=14)? 2 : 3);\n" +"X-Generator: Lokalize 2.0\n" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "splice" +msgstr "splice" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "2023-10-31" +msgstr "31 октября 2023 г." + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "Linux man-pages 6.06" +msgstr "Linux man-pages 6.06" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NAME" +msgstr "ИМЯ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "splice - splice data to/from a pipe" +msgstr "splice - подключает данные к каналу/выбирает данные из канала" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "LIBRARY" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Standard C library (I<libc>, I<-lc>)" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SYNOPSIS" +msgstr "СИНТАКСИС" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, fuzzy, no-wrap +#| msgid "" +#| "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" +#| "B<#include E<lt>fcntl.hE<gt>>\n" +msgid "" +"B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" +"B<#define _FILE_OFFSET_BITS 64>\n" +"B<#include E<lt>fcntl.hE<gt>>\n" +msgstr "" +"B<#define _GNU_SOURCE> /* см. feature_test_macros(7) */\n" +"B<#include E<lt>fcntl.hE<gt>>\n" + +#. Return type was long before glibc 2.7 +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, fuzzy, no-wrap +#| msgid "" +#| "B<ssize_t splice(int >I<fd_in>B<, loff_t *>I<off_in>B<, int >I<fd_out>B<,>\n" +#| "B< loff_t *>I<off_out>B<, size_t >I<len>B<, unsigned int >I<flags>B<);>\n" +msgid "" +"B<ssize_t splice(int >I<fd_in>B<, off_t *_Nullable >I<off_in>B<,>\n" +"B< int >I<fd_out>B<, off_t *_Nullable >I<off_out>B<,>\n" +"B< size_t >I<len>B<, unsigned int >I<flags>B<);>\n" +msgstr "" +"B<ssize_t splice(int >I<fd_in>B<, loff_t *>I<off_in>B<, int >I<fd_out>B<,>\n" +"B< loff_t *>I<off_out>B<, size_t >I<len>B<, unsigned int >I<flags>B<);>\n" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DESCRIPTION" +msgstr "ОПИСАНИЕ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<splice>() moves data between two file descriptors without copying between " +"kernel address space and user address space. It transfers up to I<len> " +"bytes of data from the file descriptor I<fd_in> to the file descriptor " +"I<fd_out>, where one of the file descriptors must refer to a pipe." +msgstr "" +"Вызов B<splice>() перемещает данные между двумя файловыми дескрипторами не " +"выполняя при этом копирование между адресным пространством пользователя и " +"ядра. Он пересылает до I<len> байт данных из файлового дескриптора I<fd_in> " +"в файловый дескриптор I<fd_out>, где один из файловых дескрипторов должен " +"ссылаться на канал." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The following semantics apply for I<fd_in> and I<off_in>:" +msgstr "К I<fd_in> и I<off_in> применяются следующие правила:" + +#. type: IP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "\\[bu]" +msgstr "\\[bu]" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "If I<fd_in> refers to a pipe, then I<off_in> must be NULL." +msgstr "" +"Если I<fd_in> указывает на канал, то значение I<off_in> должно быть NULL." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If I<fd_in> does not refer to a pipe and I<off_in> is NULL, then bytes are " +"read from I<fd_in> starting from the file offset, and the file offset is " +"adjusted appropriately." +msgstr "" +"Если I<fd_in> не указывает на канал и I<off_in> равно NULL, то из I<fd_in> " +"читаются байты начиная с смещения файла и это смещение соответственно " +"изменяется." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"If I<fd_in> does not refer to a pipe and I<off_in> is not NULL, then " +"I<off_in> must point to a buffer which specifies the starting offset from " +"which bytes will be read from I<fd_in>; in this case, the file offset of " +"I<fd_in> is not changed." +msgstr "" +"Если I<fd_in> не указывает на канал и I<off_in> не равно NULL, то I<off_in> " +"должен указывать на буфер, в котором задаётся начальное смещение для чтения " +"байтов из I<fd_in>; в этом случае файловое смещение I<fd_in> не изменяется." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Analogous statements apply for I<fd_out> and I<off_out>." +msgstr "Аналогичные правила относятся и к I<fd_out> и I<off_out>." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The I<flags> argument is a bit mask that is composed by ORing together zero " +"or more of the following values:" +msgstr "" +"Аргумент I<flags> представляет собой битовую маску, которая составляется " +"логическим сложением (OR) следующих значений:" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<SPLICE_F_MOVE>" +msgstr "B<SPLICE_F_MOVE>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Attempt to move pages instead of copying. This is only a hint to the " +"kernel: pages may still be copied if the kernel cannot move the pages from " +"the pipe, or if the pipe buffers don't refer to full pages. The initial " +"implementation of this flag was buggy: therefore starting in Linux 2.6.21 it " +"is a no-op (but is still permitted in a B<splice>() call); in the future, a " +"correct implementation may be restored." +msgstr "" +"Пытаться переместить страницы, а не копировать их. Используется только как " +"подсказка ядру: страницы всё равно будут копироваться, если ядро не сможет " +"переместить страницы из канала, или если буферы канала не ссылаются на " +"полные страницы. Первая реализация этого флага была с дефектами: поэтому " +"начиная с Linux 2.6.21 этот флаг ни на что не влияет (но по прежнему " +"разрешён в вызове B<splice>()); в будущем, возможно появится корректная " +"реализация." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<SPLICE_F_NONBLOCK>" +msgstr "B<SPLICE_F_NONBLOCK>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Do not block on I/O. This makes the splice pipe operations nonblocking, but " +"B<splice>() may nevertheless block because the file descriptors that are " +"spliced to/from may block (unless they have the B<O_NONBLOCK> flag set)." +msgstr "" +"Не блокировать при вводе-выводе. Это делает операции соединения с каналом " +"неблокируемыми, но B<splice>(), тем не менее, может заблокироваться, так как " +"файловые дескрипторы, с которыми ведётся работа, могут блокироваться (если у " +"них не установлен флаг B<O_NONBLOCK>)." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<SPLICE_F_MORE>" +msgstr "B<SPLICE_F_MORE>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"More data will be coming in a subsequent splice. This is a helpful hint " +"when the I<fd_out> refers to a socket (see also the description of " +"B<MSG_MORE> in B<send>(2), and the description of B<TCP_CORK> in B<tcp>(7))." +msgstr "" +"В следующем подключении будут дополнительные данные. Полезно указывать, " +"когда I<fd_out> ссылается на сокет (смотрите также описание B<MSG_MORE> в " +"B<send>(2) и описание B<TCP_CORK> в B<tcp>(7))." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<SPLICE_F_GIFT>" +msgstr "B<SPLICE_F_GIFT>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Unused for B<splice>(); see B<vmsplice>(2)." +msgstr "Не используется в B<splice>(); смотрите B<vmsplice>(2)." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "RETURN VALUE" +msgstr "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Upon successful completion, B<splice>() returns the number of bytes spliced " +"to or from the pipe." +msgstr "" +"При успешном выполнении B<splice>() возвращает количество байт, которые были " +"записаны или получены из канала." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"A return value of 0 means end of input. If I<fd_in> refers to a pipe, then " +"this means that there was no data to transfer, and it would not make sense " +"to block because there are no writers connected to the write end of the pipe." +msgstr "" +"Возвращаемое значение 0 означает конец ввода. Если I<fd_in> указывает на " +"канал, то это означает, что нет данных для передачи и и блокировка не имела " +"бы смысла, так как нет писателей, подключённых к пишущему концу канала." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"On error, B<splice>() returns -1 and I<errno> is set to indicate the error." +msgstr "" +"В случае ошибки B<splice>() возвращает -1, а I<errno> устанавливается в " +"соответствующее значение." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "ERRORS" +msgstr "ОШИБКИ" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EAGAIN>" +msgstr "B<EAGAIN>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<SPLICE_F_NONBLOCK> was specified in I<flags> or one of the file " +"descriptors had been marked as nonblocking (B<O_NONBLOCK>)B<,> and the " +"operation would block." +msgstr "" +"В I<flags> указан B<SPLICE_F_NONBLOCK> или один из файловых дескрипторов был " +"помечен как неблокирующий (B<O_NONBLOCK>)B<,> и операция вызвала бы " +"блокировку." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EBADF>" +msgstr "B<EBADF>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"One or both file descriptors are not valid, or do not have proper read-write " +"mode." +msgstr "" +"Один или оба файловых дескриптора недействительны или в неправильном режиме " +"чтения-записи." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<EINVAL>" +msgstr "B<EINVAL>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The target filesystem doesn't support splicing." +msgstr "" +"Целевая файловая система не поддерживает подключение данных (splicing)." + +#. The append-mode error is given since Linux 2.6.27; in earlier kernels, +#. splice() in append mode was broken +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The target file is opened in append mode." +msgstr "Файл назначения открыт в режиме добавления." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Neither of the file descriptors refers to a pipe." +msgstr "Ни один из файловых дескрипторов не ссылается на канал." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "An offset was given for nonseekable device (e.g., a pipe)." +msgstr "" +"Указано смещение для устройства этого не поддерживающего (например, канала)." + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "I<fd_in> and I<fd_out> refer to the same pipe." +msgstr "Значение I<fd_in> и I<fd_out> указывают на один и тот же канал." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ENOMEM>" +msgstr "B<ENOMEM>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Out of memory." +msgstr "Не хватает памяти." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<ESPIPE>" +msgstr "B<ESPIPE>" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Either I<off_in> or I<off_out> was not NULL, but the corresponding file " +"descriptor refers to a pipe." +msgstr "" +"Значение I<off_in> или I<off_out> не равно NULL, но соответствующий файловый " +"дескриптор ссылается на канал." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "STANDARDS" +msgstr "СТАНДАРТЫ" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "Linux." +msgstr "Linux." + +#. type: SH +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "HISTORY" +msgstr "ИСТОРИЯ" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-leap-15-6 opensuse-tumbleweed +msgid "Linux 2.6.17, glibc 2.5." +msgstr "" + +#. commit 7c77f0b3f9208c339a4b40737bb2cb0f0319bb8d +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In Linux 2.6.30 and earlier, exactly one of I<fd_in> and I<fd_out> was " +"required to be a pipe. Since Linux 2.6.31, both arguments may refer to " +"pipes." +msgstr "" +"В Linux 2.6.30 и старее, только один из I<fd_in> и I<fd_out> должен быть " +"каналом. Начиная с Linux 2.6.31 оба параметра должны быть каналами." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NOTES" +msgstr "ЗАМЕЧАНИЯ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The three system calls B<splice>(), B<vmsplice>(2), and B<tee>(2), provide " +"user-space programs with full control over an arbitrary kernel buffer, " +"implemented within the kernel using the same type of buffer that is used for " +"a pipe. In overview, these system calls perform the following tasks:" +msgstr "" +"Три системных вызова — B<splice>(), B<vmsplice>(2), and B<tee>(2), " +"предоставляют пользовательским программам полный контроль над произвольным " +"буфером ядра; они реализованы в ядре на базе того же типа буферов, который " +"используется для канала. Эти системные вызовы выполняют следующие задачи:" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<splice>()" +msgstr "B<splice>()" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"moves data from the buffer to an arbitrary file descriptor, or vice versa, " +"or from one buffer to another." +msgstr "" +"перемещает данные из буфера в произвольный файловый дескриптор или наоборот, " +"и из одного буфера в другой." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<tee>(2)" +msgstr "B<tee>(2)" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "\"copies\" the data from one buffer to another." +msgstr "«копирует» данные из одного буфера в другой." + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<vmsplice>(2)" +msgstr "B<vmsplice>(2)" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "\"copies\" data from user space into the buffer." +msgstr "«копирует» данные из пользовательского пространства в буфер." + +#. Linus: Now, imagine using the above in a media server, for example. +#. Let's say that a year or two has passed, so that the video drivers +#. have been updated to be able to do the splice thing, and what can +#. you do? You can: +#. - splice from the (mpeg or whatever - let's just assume that the video +#. input is either digital or does the encoding on its own - like they +#. pretty much all do) video input into a pipe (remember: no copies - the +#. video input will just DMA directly into memory, and splice will just +#. set up the pages in the pipe buffer) +#. - tee that pipe to split it up +#. - splice one end to a file (ie "save the compressed stream to disk") +#. - splice the other end to a real-time video decoder window for your +#. real-time viewing pleasure. +#. Linus: Now, the advantage of splice()/tee() is that you can +#. do zero-copy movement of data, and unlike sendfile() you can +#. do it on _arbitrary_ data (and, as shown by "tee()", it's more +#. than just sending the data to somebody else: you can duplicate +#. the data and choose to forward it to two or more different +#. users - for things like logging etc.). +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Though we talk of copying, actual copies are generally avoided. The kernel " +"does this by implementing a pipe buffer as a set of reference-counted " +"pointers to pages of kernel memory. The kernel creates \"copies\" of pages " +"in a buffer by creating new pointers (for the output buffer) referring to " +"the pages, and increasing the reference counts for the pages: only pointers " +"are copied, not the pages of the buffer." +msgstr "" +"Хотя мы говорим о копировании, на самом деле копирования, обычно, не " +"происходит. Ядро реализует канальный буфер как набор указателей со счётчиком " +"ссылок на страницы памяти ядра. Ядро создаёт «копии» страниц в буфере " +"посредством создания новых указателей (для выходного буфера), указывающих на " +"страницы, и увеличивает счётчики ссылок страниц: копируются только " +"указатели, а не страницы буфера." + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +msgid "" +"B<_FILE_OFFSET_BITS> should be defined to be 64 in code that uses non-null " +"I<off_in> or I<off_out> or that takes the address of B<splice>, if the code " +"is intended to be portable to traditional 32-bit x86 and ARM platforms where " +"B<off_t>'s width defaults to 32 bits." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "EXAMPLES" +msgstr "ПРИМЕРЫ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "See B<tee>(2)." +msgstr "См. B<tee>(2)." + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SEE ALSO" +msgstr "СМ. ТАКЖЕ" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<copy_file_range>(2), B<sendfile>(2), B<tee>(2), B<vmsplice>(2), B<pipe>(7)" +msgstr "" +"B<copy_file_range>(2), B<sendfile>(2), B<tee>(2), B<vmsplice>(2), B<pipe>(7)" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "2023-02-05" +msgstr "5 февраля 2023 г." + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "Linux man-pages 6.03" +msgstr "Linux man-pages 6.03" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" +"B<#include E<lt>fcntl.hE<gt>>\n" +msgstr "" +"B<#define _GNU_SOURCE> /* см. feature_test_macros(7) */\n" +"B<#include E<lt>fcntl.hE<gt>>\n" + +#. Return type was long before glibc 2.7 +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, fuzzy, no-wrap +#| msgid "" +#| "B<ssize_t splice(int >I<fd_in>B<, loff_t *>I<off_in>B<, int >I<fd_out>B<,>\n" +#| "B< loff_t *>I<off_out>B<, size_t >I<len>B<, unsigned int >I<flags>B<);>\n" +msgid "" +"B<ssize_t splice(int >I<fd_in>B<, off64_t *_Nullable >I<off_in>B<,>\n" +"B< int >I<fd_out>B<, off64_t *_Nullable >I<off_out>B<,>\n" +"B< size_t >I<len>B<, unsigned int >I<flags>B<);>\n" +msgstr "" +"B<ssize_t splice(int >I<fd_in>B<, loff_t *>I<off_in>B<, int >I<fd_out>B<,>\n" +"B< loff_t *>I<off_out>B<, size_t >I<len>B<, unsigned int >I<flags>B<);>\n" + +#. type: SH +#: debian-bookworm +#, no-wrap +msgid "VERSIONS" +msgstr "ВЕРСИИ" + +#. type: Plain text +#: debian-bookworm +#, fuzzy +#| msgid "" +#| "The B<splice>() system call first appeared in Linux 2.6.17; library " +#| "support was added to glibc in version 2.5." +msgid "" +"The B<splice>() system call first appeared in Linux 2.6.17; library support " +"was added in glibc 2.5." +msgstr "" +"Системный вызов B<splice>() впервые появился в Linux 2.6.17; поддержка в " +"glibc добавлена в версии 2.5." + +#. type: Plain text +#: debian-bookworm +msgid "This system call is Linux-specific." +msgstr "Данный вызов есть только в Linux." + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "2023-07-15" +msgstr "15 июля 2023 г." + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "Linux man-pages 6.05.01" +msgstr "Linux man-pages 6.05.01" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "2023-03-30" +msgstr "30 марта 2023 г." + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "Linux man-pages 6.04" +msgstr "Linux man-pages 6.04" |