# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Azamat Hackimov , 2017. # Dmitry Bolkhovskikh , 2017. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 05:51+0200\n" "PO-Revision-Date: 2019-09-27 19:31+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \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 "futex" msgstr "futex" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 мая 2024 г." #. type: TH #: archlinux debian-unstable #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.7" #. 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 "futex - fast user-space locking" msgstr "futex - быстрая блокировка в пользовательском пространстве" #. 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-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<#include Elinux/futex.hE>\n" msgstr "B<#include Elinux/futex.hE>\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 "" "The Linux kernel provides futexes (\"Fast user-space mutexes\") as a " "building block for fast user-space locking and semaphores. Futexes are very " "basic and lend themselves well for building higher-level locking " "abstractions such as mutexes, condition variables, read-write locks, " "barriers, and semaphores." msgstr "" "Ядро Linux предоставляет фьютексы (futexes, «быстрые мьютексы (mutexes, " "взаимоисключающие блокировки) в пользовательском пространстве») в качестве " "строительного блока для быстрой блокировки в пользовательском пространстве и " "семафоров. Фьютексы очень просты и полезны для создания высокоуровневых " "абстракций блокировок, таких как мьютексы, условных переменных, блокировок " "чтения-записи, барьеров и семафоров." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Most programmers will in fact not be using futexes directly but will instead " "rely on system libraries built on them, such as the Native POSIX Thread " "Library (NPTL) (see B(7))." msgstr "" "Большинство программистов, фактически, не используют фьютексы напрямую, а " "полагаются на системные библиотеки, которые на них построены, такие как " "Native POSIX Thread Library (NPTL) (смотрите B(7))." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A futex is identified by a piece of memory which can be shared between " "processes or threads. In these different processes, the futex need not have " "identical addresses. In its bare form, a futex has semaphore semantics; it " "is a counter that can be incremented and decremented atomically; processes " "can wait for the value to become positive." msgstr "" "Фьютекс отождествляется с участком памяти, который может быть общим для " "процессов или нитей. В этих процессах фьютекс может быть доступен по разным " "адресам. В своей основе фьютекс имеет семантику семафора; это счётчик, " "который можно увеличивать и уменьшать атомарно; процессы могут ждать пока " "значение не станет положительным." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Futex operation occurs entirely in user space for the noncontended case. " "The kernel is involved only to arbitrate the contended case. As any sane " "design will strive for noncontention, futexes are also optimized for this " "situation." msgstr "" "Работа с фьютексом выполняется полностью в пользовательском пространстве при " "отсутствии конфликта (noncontended case). Ядро привлекается только для " "разрешения конфликтов. Так как все проектные решения стремятся к отсутствию " "конфликтов, фьютексы также оптимизированы под эту ситуацию." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In its bare form, a futex is an aligned integer which is touched only by " "atomic assembler instructions. This integer is four bytes long on all " "platforms. Processes can share this integer using B(2), via shared " "memory segments, or because they share memory space, in which case the " "application is commonly called multithreaded." msgstr "" "В своей основе фьютекс — это целое число, которое изменяется только " "атомарными инструкциями ассемблера. Это целое число размером 4 байта на всех " "платформах. Процессы могут совместно использовать это число посредством " "B(2), сегментов общей памяти или общего пространства памяти (share " "memory space, в этом случае приложение, обычно, называют многонитевым)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Semantics" msgstr "Поведение" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Any futex operation starts in user space, but it may be necessary to " "communicate with the kernel using the B(2) system call." msgstr "" "Любое действие с фьютексом начинается в пользовательском пространстве, но " "может потребовать обращения к ядру через системный вызов B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "To \"up\" a futex, execute the proper assembler instructions that will cause " "the host CPU to atomically increment the integer. Afterward, check if it " "has in fact changed from 0 to 1, in which case there were no waiters and the " "operation is done. This is the noncontended case which is fast and should " "be common." msgstr "" "Для «установки» фьютекса выполняются соответствующие ассемблерные " "инструкции, которые заставляют ЦП машины атомарно увеличить целое число. " "Далее проверяется, было ли действительно изменено значение с 0 на 1, то есть " "не было ожидающих и операция выполнена. Это бесконфликтный вариант, " "выполняется быстро и должен возникать чаще всего." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In the contended case, the atomic increment changed the counter from -1 (or " "some other negative number). If this is detected, there are waiters. User " "space should now set the counter to 1 and instruct the kernel to wake up any " "waiters using the B operation." msgstr "" "При возникновении конфликта, атомарное увеличение изменяет счётчик с -1 (или " "другого отрицательного числа). Это означает, что есть ожидающие. В " "пользовательском пространстве теперь нужно присвоить счётчику 1 и дать " "команду ядру пробудить всех ожидающих с помощью операции B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Waiting on a futex, to \"down\" it, is the reverse operation. Atomically " "decrement the counter and check if it changed to 0, in which case the " "operation is done and the futex was uncontended. In all other " "circumstances, the process should set the counter to -1 and request that the " "kernel wait for another process to up the futex. This is done using the " "B operation." msgstr "" "Ожидание фьютекса, его «сброс», является обратной операцией. Происходит " "атомарное уменьшение счётчика и проверка того, стал ли он равен 0, то есть " "операция выполнена и фьютекс был неконфликтным. Во всех других случаях, " "процесс должен присвоить счётчику -1 и запросить ядро об ожидании другого " "процесса, устанавливающего фьютекс. Это выполняется с помощью операции " "B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B(2) system call can optionally be passed a timeout specifying " "how long the kernel should wait for the futex to be upped. In this case, " "semantics are more complex and the programmer is referred to B(2) " "for more details. The same holds for asynchronous futex waiting." msgstr "" "В системном вызове B(2) можно указать время ожидания, то есть как " "долго ядро должно ждать установку фьютекса, В этом случае семантика более " "сложна и программисту нужно обратиться к B(2). Это тоже самое что и " "ожидания асинхронного фьютекса." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "VERSIONS" msgstr "ВЕРСИИ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Initial futex support was merged in Linux 2.5.7 but with different semantics " "from those described above. Current semantics are available from Linux " "2.5.40 onward." msgstr "" "Впервые поддержка фьютексов появилась в Linux 2.5.7, но с другой семантикой. " "Текущая семантика используется в Linux с версии 2.5.40." #. 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 "" "To reiterate, bare futexes are not intended as an easy-to-use abstraction " "for end users. Implementors are expected to be assembly literate and to " "have read the sources of the futex user-space library referenced below." msgstr "" "Ещё раз повторим: в чистом виде фьютексы не являются лёгкой в использовании " "абстракцией для конечных пользователей. Использующие их программисты должны " "иметь хороший запас знаний об ассемблере и уметь читать исходный код " "библиотеки фьютексов для пользовательского пространства, указанной далее." #. #-#-#-#-# archlinux: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .P #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# debian-bookworm: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .PP #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# debian-unstable: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .P #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# fedora-40: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .P #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# fedora-rawhide: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .P #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# mageia-cauldron: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .P #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# opensuse-leap-15-6: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .PP #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #. #-#-#-#-# opensuse-tumbleweed: futex.7.pot (PACKAGE VERSION) #-#-#-#-# #. .SH AUTHORS #. .P #. Futexes were designed and worked on by Hubertus Franke #. (IBM Thomas J. Watson Research Center), #. Matthew Kirkwood, Ingo Molnar (Red Hat) and #. Rusty Russell (IBM Linux Technology Center). #. This page written by bert hubert. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This man page illustrates the most common use of the B(2) " "primitives; it is by no means the only one." msgstr "" "В этой справочной странице показано самое распространённое использование " "примитивов B(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(2), B(2), B(2), B(2), " "B(2), B(7)" msgstr "" "B(2), B(2), B(2), B(2), " "B(2), B(7)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "I " #| "(proceedings of the Ottawa Linux Symposium 2002), futex example library, " #| "futex-*.tar.bz2 E<.UR ftp://ftp.kernel.org\\:/pub\\:/linux\\:/kernel\\:/" #| "people\\:/rusty/> E<.UE .>" msgid "" "I (proceedings " "of the Ottawa Linux Symposium 2002), futex example library, futex-*.tar.bz2 " "E<.UR https://mirrors.kernel.org\\:/pub\\:/linux\\:/kernel\\:/people\\:/" "rusty/> E<.UE .>" msgstr "" "I (доклад с " "Ottawa Linux Symposium 2002), пример в библиотеке futex, futex-*.tar.bz2 E<." "UR ftp://ftp.kernel.org\\:/pub\\:/linux\\:/kernel\\:/people\\:/rusty/> E<." "UE .>" #. type: TH #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "2022-10-30" msgstr "30 октября 2022 г." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 октября 2023 г." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux man-pages 6.04" #. type: TH #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages 6.7"