# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # aereiae , 2014. # Alexey , 2015. # Azamat Hackimov , 2013-2017. # Dmitriy S. Seregin , 2013. # Dmitry Bolkhovskikh , 2017. # ITriskTI , 2013. # Max Is , 2016. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017. # Малянов Евгений Викторович , 2014. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 06:03+0200\n" "PO-Revision-Date: 2019-10-06 08:59+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 "mlock" msgstr "mlock" #. 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 "mlock, mlock2, munlock, mlockall, munlockall - lock and unlock memory" msgstr "" "mlock, mlock2, munlock, mlockall, munlockall - блокируют и разблокируют " "память" #. 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, 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-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<#include Esys/mman.hE>\n" msgstr "B<#include Esys/mman.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "BIB<, size_t >IB<);>\n" #| "BIB<, size_t >IB<, unsigned int >IB<);>\n" #| "BIB<, size_t >IB<);>\n" msgid "" "BIB<[.>IB<], size_t >IB<);>\n" "BIB<[.>IB<], size_t >IB<, unsigned int >IB<);>\n" "BIB<[.>IB<], size_t >IB<);>\n" msgstr "" "BIB<, size_t >IB<);>\n" "BIB<, size_t >IB<, unsigned int >IB<);>\n" "BIB<, size_t >IB<);>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<);>\n" "B\n" msgstr "" "BIB<);>\n" "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(), B(), and B() lock part or all of the calling " "process's virtual address space into RAM, preventing that memory from being " "paged to the swap area." msgstr "" "Вызовы B(), B() и B() блокируют часть или всё " "виртуальное адресное пространство процесса в ОЗУ, запрещая эту память " "перемещать в пространство подкачки." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, fuzzy #| msgid "" #| "B() and B() perform the converse operation, " #| "unlocking part or all of the calling process's virtual address space, so " #| "that pages in the specified virtual address range may once more be " #| "swapped out if required by the kernel memory manager." msgid "" "B() and B() perform the converse operation, unlocking " "part or all of the calling process's virtual address space, so that pages in " "the specified virtual address range can be swapped out again if required by " "the kernel memory manager." msgstr "" "Вызовы B() и B() выполняют обратную операцию, " "разблокируя часть или всё виртуальное адресное пространство процесса, после " "чего страницы в этом диапазоне виртуальных адресов могут вытесняться в " "пространство подкачки, если того потребуется менеджеру памяти ядра." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Memory locking and unlocking are performed in units of whole pages." msgstr "Размер блокировки и разблокировки памяти округляется до целых страниц." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "mlock(), mlock2(), and munlock()" msgstr "mlock(), mlock2() и munlock()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() locks pages in the address range starting at I and " "continuing for I bytes. All pages that contain a part of the specified " "address range are guaranteed to be resident in RAM when the call returns " "successfully; the pages are guaranteed to stay in RAM until later unlocked." msgstr "" "Вызов B() блокирует страницы в адресном диапазоне, начиная с I " "и длиной I байтов. Все страницы, попадающие, даже частично, в заданную " "область, будут гарантировано помещены в ОЗУ, если системный вызов выполнился " "успешно; страницы гарантировано останутся в ОЗУ пока не будут разблокированы." #. commit a8ca5d0ecbdde5cc3d7accacbd69968b0c98764e #. commit de60f5f10c58d4f34b68622442c0e04180367f3f #. commit b0f205c2a3082dd9081f9a94e50658c5fa906ff1 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() also locks pages in the specified range starting at I and " "continuing for I bytes. However, the state of the pages contained in " "that range after the call returns successfully will depend on the value in " "the I argument." msgstr "" "Вызов B() также блокирует страницы в адресном диапазоне, начиная с " "I и длиной I байтов. Однако состояние страниц в этом диапазоне " "после успешного выполнения вызова будет зависеть от значения аргумента " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The I argument can be either 0 or the following constant:" msgstr "" "Параметр I может принимать значение 0 или одну из следующих констант:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Lock pages that are currently resident and mark the entire range so that the " "remaining nonresident pages are locked when they are populated by a page " "fault." msgstr "" "Блокировать страницы, которые в настоящее время уже есть в памяти и пометить " "весь диапазон так, чтобы оставшиеся вне памяти страницы блокировались, когда " "они будут заполнены из-за страничного промаха (fault)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "If I is 0, B() behaves exactly the same as B()." msgstr "" "Если параметр I равен 0, то B() ведёт себя точно так же как " "B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() unlocks pages in the address range starting at I and " "continuing for I bytes. After this call, all pages that contain a part " "of the specified memory range can be moved to external swap space again by " "the kernel." msgstr "" "Вызов B() разблокирует страницы в области, начинающейся с адреса " "I и длиной I байтов. После этого вызова все страницы, попадающие, " "даже частично, в заданную область, снова могут быть помещены ядром во " "внешнее пространство подкачки." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "mlockall() and munlockall()" msgstr "mlockall() и munlockall()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() locks all pages mapped into the address space of the calling " "process. This includes the pages of the code, data, and stack segment, as " "well as shared libraries, user space kernel data, shared memory, and memory-" "mapped files. All mapped pages are guaranteed to be resident in RAM when " "the call returns successfully; the pages are guaranteed to stay in RAM until " "later unlocked." msgstr "" "Вызов B() блокирует все страницы, отображённые в адресное " "пространство вызывающего процесса. Сюда входят страницы сегмента кода, " "данных и стека, а также общих библиотек, страницы с данными " "пользовательского пространства ядра, общей памяти и файлов, отображённых в " "память. Все отображённые страницы гарантировано останутся в ОЗУ, если " "системный вызов выполнился успешно; страницы гарантировано останутся в ОЗУ " "пока не будут разблокированы." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is constructed as the bitwise OR of one or more of the " "following constants:" msgstr "" "Аргумент I создаётся побитовым сложением одной или более следующих " "констант:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Lock all pages which are currently mapped into the address space of the " "process." msgstr "" "Блокировать все страницы, которые в данный момент отображены в адресное " "пространство процесса." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Lock all pages which will become mapped into the address space of the " "process in the future. These could be, for instance, new pages required by " "a growing heap and stack as well as new memory-mapped files or shared memory " "regions." msgstr "" "Блокировать все страницы, которые будут отображены в адресное пространство " "процесса в будущем. Это могут быть, например, новые страницы, затребованные " "для увеличения кучи и стека, а также новые отображённые в память файлы или " "области общей памяти." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 4.4)" msgstr "B (начиная с Linux 4.4)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Used together with B, B, or both. Mark all current " "(with B) or future (with B) mappings to lock " "pages when they are faulted in. When used with B, all present " "pages are locked, but B() will not fault in non-present pages. " "When used with B, all future mappings will be marked to lock " "pages when they are faulted in, but they will not be populated by the lock " "when the mapping is created. B must be used with either " "B or B or both." msgstr "" "Используется вместе с B, B или обоими. Пометить все " "текущие (с B) или будущие (с B) отображения для " "блокировки страниц, когда они получаются при сбое (faulted in). При " "использовании с B все существующие страницы блокируются, но " "B() не будет сбоить на несуществующих страницах. При использовании " "с B все будущие отображения будут помечены для блокировки " "страниц при сбое, но они не будут заполнены из-за блокировки при создании " "отображения. Флаг B должен использовать одновременно с " "B или B или обоими." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If B has been specified, then a later system call (e.g., " "B(2), B(2), B(3)), may fail if it would cause the number " "of locked bytes to exceed the permitted maximum (see below). In the same " "circumstances, stack growth may likewise fail: the kernel will deny stack " "expansion and deliver a B signal to the process." msgstr "" "Если указан флаг B, то последующий системный вызов (например, " "B(2), B(2), B(3)), может завершиться с ошибкой, если бы " "его работа приводит к превышению разрешённого максимального числа " "блокируемых байт (см. ниже). Также этот флаг может остановить увеличение " "стека: ядро будет отказывать в увеличении стека и будет посылать процессу " "сигнал B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() unlocks all pages mapped into the address space of the " "calling process." msgstr "" "Вызов B() разблокирует все страницы, отображённые в адресное " "пространство вызывающего процесса." #. 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 #, fuzzy #| msgid "" #| "On success, these system calls return 0. On error, -1 is returned, " #| "I is set appropriately, and no changes are made to any locks in " #| "the address space of the process." msgid "" "On success, these system calls return 0. On error, -1 is returned, I " "is set to indicate the error, and no changes are made to any locks in the " "address space of the process." msgstr "" "При успешном выполнении эти системные вызовы возвращают 0. При ошибке " "возвращается -1, устанавливается соответствующий код ошибки в I, и " "никакие блокировки не изменяются в адресном пространстве процесса." #. 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" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B(), B(), and B()) Some or all of the specified " "address range could not be locked." msgstr "" "(B(), B() и B()) Невозможно заблокировать некоторую " "часть или весь диапазон адресов." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B(), B(), and B()) The result of the addition " "I+I was less than I (e.g., the addition may have resulted " "in an overflow)." msgstr "" "(B(), B() и B()) Результат добавления I" "+I стал меньше чем I (например, добавление могло привести к " "переполнению)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "(B()) Unknown I were specified." msgstr "(B()) Указан неизвестный флаг в I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B()) Unknown I were specified or B was " "specified without either B or B." msgstr "" "(B()) Неизвестное значение в I или B задан " "без B или B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "(Not on Linux) I was not a multiple of the page size." msgstr "(Не в Linux) Значение I не кратно размеру страницы." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B(), B(), and B()) Some of the specified address " "range does not correspond to mapped pages in the address space of the " "process." msgstr "" "(B(), B() и B()) Часть указанного адресного " "диапазона не соответствует отображённым страницам адресного пространства " "процесса." #. I.e., the number of VMAs would exceed the 64kB maximum #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B(), B(), and B()) Locking or unlocking a region " "would result in the total number of mappings with distinct attributes (e.g., " "locked versus unlocked) exceeding the allowed maximum. (For example, " "unlocking a range in the middle of a currently locked mapping would result " "in three mappings: two locked mappings at each end and an unlocked mapping " "in the middle.)" msgstr "" "(B(), B() и B()) Блокировка и разблокировка области " "привела бы к превышению разрешённого максимума на количество отображений с " "различающимися атрибутами (блокированных и разблокированных). Например, " "разблокировка диапазона в середине области в данный момент блокированного " "отображения привела бы к трём отображениям: два блокированных отображения на " "концах и доступное разблокированное отображение посередине." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(Linux 2.6.9 and later) the caller had a nonzero B soft " "resource limit, but tried to lock more memory than the limit permitted. " "This limit is not enforced if the process is privileged (B)." msgstr "" "(Linux 2.6.9 и новее) У вызывающего процесса установлено ненулевое мягкое " "ограничение ресурса B, но он пытается заблокировать больше " "памяти, чем это разрешено ограничением. Данное ограничение не учитывается у " "привилегированных процессов (B)." #. In the case of mlock(), this check is somewhat buggy: it doesn't #. take into account whether the to-be-locked range overlaps with #. already locked pages. Thus, suppose we allocate #. (num_physpages / 4 + 1) of memory, and lock those pages once using #. mlock(), and then lock the *same* page range a second time. #. In the case, the second mlock() call will fail, since the check #. calculates that the process is trying to lock (num_physpages / 2 + 2) #. pages, which of course is not true. (MTK, Nov 04, kernel 2.4.28) #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(Linux 2.4 and earlier) the calling process tried to lock more than half of " "RAM." msgstr "" "(Linux 2.4 и в более ранних) Вызывающий процесс пытается заблокировать более " "половины ОЗУ." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The caller is not privileged, but needs privilege (B) to " "perform the requested operation." msgstr "" "Вызывающий не имеет прав (B) для выполнения запрошенной " "операции." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(B()) (Linux 2.6.8 and earlier) The caller was not privileged " "(B)." msgstr "" "(B()) (Linux 2.6.8 и более ранних) Вызывающий процесс не имеет " "достаточно прав (B)." #. 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: SS #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Linux" msgstr "Linux" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Under Linux, B(), B(), and B() automatically round " "I down to the nearest page boundary. However, the POSIX.1 " "specification of B() and B() allows an implementation to " "require that I is page aligned, so portable applications should ensure " "this." msgstr "" "В Linux, B(), B() и B() автоматически округляют " "I в меньшую сторону к размеру границы ближайшей страницы. Однако, в " "POSIX.1 указано, что реализации B() и B() разрешено " "требовать, чтобы значение I было выровнено по размеру страницы, " "поэтому переносимые приложения должны выполнять выравнивание." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The I field of the Linux-specific I file shows " #| "how many kilobytes of memory the process with ID I has locked using " #| "B(), B(), B(), and B(2) B." msgid "" "The I field of the Linux-specific IpidI file shows " "how many kilobytes of memory the process with ID I has locked using " "B(), B(), B(), and B(2) B." msgstr "" "В поле I, имеющемся только в Linux файле I, " "показано сколько килобайт памяти заблокировал процесс с идентификатором " "I с помощью B(), B(), B() и B(2) с " "флагом B." #. 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: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B(2)" msgid "B()" msgstr "B(2)" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B(2)" msgid "B()" msgstr "B(2)" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "For B():" msgid "B()" msgstr "У B():" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "For B():" msgid "B()" msgstr "У B():" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2008." msgstr "POSIX.1-2008." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B(2)" msgid "B()" msgstr "B(2)" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "Linux." msgstr "Linux." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On POSIX systems on which B() and B() are available, " "B<_POSIX_MEMLOCK_RANGE> is defined in Iunistd.hE> and the number " "of bytes in a page can be determined from the constant B (if " "defined) in Ilimits.hE> or by calling I." msgstr "" "В POSIX-системах, в которых доступны B() и B(), значение " "B<_POSIX_MEMLOCK_RANGE> определено в Iunistd.hE>, а количество " "байт в странице можно определить из константы B (если определена) " "в Ilimits.hE> или вызвав I." #. POSIX.1-2001: It shall be defined to -1 or 0 or 200112L. #. -1: unavailable, 0: ask using sysconf(). #. glibc defines it to 1. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On POSIX systems on which B() and B() are available, " "B<_POSIX_MEMLOCK> is defined in Iunistd.hE> to a value greater " "than 0. (See also B(3).)" msgstr "" "В POSIX-системах, в которых доступны B() и B(), " "значение B<_POSIX_MEMLOCK>, определенное в Iunistd.hE>, больше " "нуля (см. также B(3))." #. 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 "POSIX.1-2001, POSIX.1-2008, SVr4." msgstr "POSIX.1-2001, POSIX.1-2008, SVr4." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "Since glibc 2.2.2:" msgid "Linux 4.4, glibc 2.27." msgstr "Начиная с glibc 2.2.2:" #. 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 "" "Memory locking has two main applications: real-time algorithms and high-" "security data processing. Real-time applications require deterministic " "timing, and, like scheduling, paging is one major cause of unexpected " "program execution delays. Real-time applications will usually also switch " "to a real-time scheduler with B(2). Cryptographic " "security software often handles critical bytes like passwords or secret keys " "as data structures. As a result of paging, these secrets could be " "transferred onto a persistent swap store medium, where they might be " "accessible to the enemy long after the security software has erased the " "secrets in RAM and terminated. (But be aware that the suspend mode on " "laptops and some desktop computers will save a copy of the system's RAM to " "disk, regardless of memory locks.)" msgstr "" "Блокировка памяти используется, в основном, в двух случаях: в алгоритмах " "реального времени и при работе с секретными данными. Программам реального " "времени необходима предсказуемость времени выполнения, а страничный обмен " "(наряду с системой переключения процессов) может привести к неожиданным " "задержкам в работе. Такие приложения часто переключаются в режим реального " "времени при помощи вызовы B(2). Криптографические " "системы защиты данных очень часто содержат важные данные, например, пароли " "или секретные ключи, в структурах данных. В результате страничного обмена " "эти данные могут попасть в область подкачки, находящуюся на устройстве " "длительного хранения, где к этим данным после того, как они пропадут из ОЗУ, " "может получить доступ практически кто угодно. (Помните, что в режиме " "приостановки (suspend) на ноутбуках и некоторых компьютерах на жёсткий диск " "сохраняется копия памяти ОЗУ системы, независимо от блокировок памяти)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Real-time processes that are using B() to prevent delays on page " "faults should reserve enough locked stack pages before entering the time-" "critical section, so that no page fault can be caused by function calls. " "This can be achieved by calling a function that allocates a sufficiently " "large automatic variable (an array) and writes to the memory occupied by " "this array in order to touch these stack pages. This way, enough pages will " "be mapped for the stack and can be locked into RAM. The dummy writes ensure " "that not even copy-on-write page faults can occur in the critical section." msgstr "" "Процессы реального времени, использующие B() для устранения " "задержек при страничных прерываниях (page fault), должны зарезервировать " "достаточно заблокированных страниц стека до входа в критический ко времени " "участок, для того, чтобы вызов функции не мог привести к страничному " "прерыванию. Это можно выполнить с помощью вызова функции, которая выделит " "место под достаточно большую автоматическую переменную (массив) и выполнит " "запись в память для того, чтобы этот массив занял место в странице стека. " "Таким путём будет отображено достаточно страниц для стека, которые можно " "заблокировать в ОЗУ. Бесполезная запись нужна для того, чтобы в критическом " "участке не возникло страничное прерывание для копирования страницы при " "записи." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Memory locks are not inherited by a child created via B(2) and are " "automatically removed (unlocked) during an B(2) or when the process " "terminates. The B() B and B settings are not inherited by a child created via B(2) " "and are cleared during an B(2)." msgstr "" "Блокировка памяти не наследуется дочерними процессами, созданными при помощи " "B(2), и автоматически удаляется (разблокируется) при выполнении " "B(2) или при завершении работы процесса. Установка B и " "B в B() не наследуется потомком, " "созданными при помощи B(2), и автоматически стирается при выполнении " "B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "Note that B(2) will prepare the address space for a copy-on-write " #| "operation. The consequence is that any write access that follows will " #| "cause a page fault that in turn may cause high latencies for a real-time " #| "process. Therefore, it is crucial not to invoke B(2) after an " #| "B() or B() operation\\(emnot even from a thread which " #| "runs at a low priority within a process which also has a thread running " #| "at elevated priority." msgid "" "Note that B(2) will prepare the address space for a copy-on-write " "operation. The consequence is that any write access that follows will cause " "a page fault that in turn may cause high latencies for a real-time process. " "Therefore, it is crucial not to invoke B(2) after an B() " "or B() operation\\[em]not even from a thread which runs at a low " "priority within a process which also has a thread running at elevated " "priority." msgstr "" "Заметим, что that B(2) подготовит адресное пространство для операции " "копирования при записи. Следовательно, любой последующий доступ на запись " "приведёт к страничному отказу, который, в свою очередь, может привести к " "большим задержкам в процессах реального времени. Поэтому, существенно важно " "не вызывать B(2) после операции B() или B() — даже " "для нитей, которые выполняются с низким приоритетом внутри процесса, который " "также имеет нить, выполняющуюся с более высоким приоритетом." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The memory lock on an address range is automatically removed if the address " "range is unmapped via B(2)." msgstr "" "Блокировка памяти адресного диапазона автоматически удаляется, если этот " "диапазон становится неотображаемым с помощью вызова B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Memory locks do not stack, that is, pages which have been locked several " "times by calls to B(), B(), or B() will be " "unlocked by a single call to B() for the corresponding range or by " "B(). Pages which are mapped to several locations or by several " "processes stay locked into RAM as long as they are locked at least at one " "location or by at least one process." msgstr "" "Блокировки памяти не накапливаются, то есть, если страница была " "заблокирована вызовами B(), B() или B() несколько " "раз, то она будет разблокирована единственным вызовом B() для " "соответствующего диапазона или с помощью вызова B(). Страницы, " "которые были отображены в несколько мест или несколькими процессами, " "останутся заблокированными в ОЗУ до тех пор, пока они блокируются хотя бы в " "одном месте или хотя бы в одном процессе." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If a call to B() which uses the B flag is followed by " "another call that does not specify this flag, the changes made by the " "B call will be lost." msgstr "" "Если послед вызова B() с флагом B идёт другой вызов, у " "которого нет этого флага, то изменения, сделанные вызовом с B " "будут потеряны." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() B flag and the B() B " "flag allow efficient memory locking for applications that deal with large " "mappings where only a (small) portion of pages in the mapping are touched. " "In such cases, locking all of the pages in a mapping would incur a " "significant penalty for memory locking." msgstr "" "Флаг B у B() и B у B() " "позволяют эффективно блокировать память в приложениях, которые работают с " "большим количеством отображений, где только задействуется часть (малая) " "страниц в отображении. В таких случаях блокировка всех страниц в отображении " "приводила бы к значительным простоям из-за блокировки памяти." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Limits and permissions" msgstr "Ограничения и права доступа" #. 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.8 and earlier, a process must be privileged (B) " "in order to lock memory and the B soft resource limit " "defines a limit on how much memory the process may lock." msgstr "" "В Linux версии 2.6.8 и более ранних для блокировки памяти процесс должен " "иметь мандат (B), а мягкое ограничение ресурса " "B определяет как много памяти можно заблокировать." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 2.6.9, no limits are placed on the amount of memory that a " "privileged process can lock and the B soft resource limit " "instead defines a limit on how much memory an unprivileged process may lock." msgstr "" "Начиная с Linux 2.6.9, привилегированный процесс не имеет ограничения на " "ограничиваемое количество памяти, а мягкое ограничение ресурса " "B определяет предел ограничиваемой памяти для " "непривилегированных процессов." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "ОШИБКИ" #. commit 0cf2f6f6dc605e587d2c1120f295934c77e810e8 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In Linux 4.8 and earlier, a bug in the kernel's accounting of locked memory " "for unprivileged processes (i.e., without B) meant that if " "the region specified by I and I overlapped an existing lock, then " "the already locked bytes in the overlapping region were counted twice when " "checking against the limit. Such double accounting could incorrectly " "calculate a \"total locked memory\" value for the process that exceeded the " "B limit, with the result that B() and B() " "would fail on requests that should have succeeded. This bug was fixed in " "Linux 4.9." msgstr "" "В Linux 4.8 и старее имеется дефект учёта блокированной памяти " "непривилегированных процессов (т. е., без B) в ядре, состоящий " "в том, что если область, указанная I и I перекрывает существующую " "блокировку, то при проверке ограничений уже заблокированные байты " "перекрывающей области учитываются дважды. Из-за такого двойного учёта может " "некорректно вычисляться значение «общего количества заблокированной памяти», " "и процесс, который превышает ограничение B, в результате " "B() и B() получит ошибку при запросах, которые должны " "выполняться успешно. Этот дефект был исправлен в Linux 4.9." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "In the 2.4 series Linux kernels up to and including 2.4.17, a bug caused " #| "the B() B flag to be inherited across a " #| "B(2). This was rectified in kernel 2.4.18." msgid "" "In Linux 2.4 series of kernels up to and including Linux 2.4.17, a bug " "caused the B() B flag to be inherited across a " "B(2). This was rectified in Linux 2.4.18." msgstr "" "В ветви 2.4 ядер Linux до версии 2.4.17 включительно есть дефект, из-за " "которого флаг B у B() наследуется при B(2). Он " "устранён в версии 2.4.18." #. See the following LKML thread: #. http://marc.theaimsgroup.com/?l=linux-kernel&m=113801392825023&w=2 #. "Rationale for RLIMIT_MEMLOCK" #. 23 Jan 2006 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "Since kernel 2.6.9, if a privileged process calls I " #| "and later drops privileges (loses the B capability by, for " #| "example, setting its effective UID to a nonzero value), then subsequent " #| "memory allocations (e.g., B(2), B(2)) will fail if the " #| "B resource limit is encountered." msgid "" "Since Linux 2.6.9, if a privileged process calls I and " "later drops privileges (loses the B capability by, for " "example, setting its effective UID to a nonzero value), then subsequent " "memory allocations (e.g., B(2), B(2)) will fail if the " "B resource limit is encountered." msgstr "" "Начиная с ядра версии 2.6.9, если привилегированный процесс вызывает " "I и, позднее, отказывается от прав (теряет мандат " "B, например, устанавливая свой эффективный UID в ненулевое " "значение), то последующие выделения памяти (например, с помощью B(2), " "B(2)) будут завершаться с ошибкой при достижении предела ресурса " "B." #. 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(3), " "B(5), B(7)" msgstr "" "B(2), B(2), B(2), B(2), B(3), " "B(5), B(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 msgid "" "B() and B() perform the converse operation, unlocking " "part or all of the calling process's virtual address space, so that pages in " "the specified virtual address range may once more be swapped out if required " "by the kernel memory manager." msgstr "" "Вызовы B() и B() выполняют обратную операцию, " "разблокируя часть или всё виртуальное адресное пространство процесса, после " "чего страницы в этом диапазоне виртуальных адресов могут вытесняться в " "пространство подкачки, если того потребуется менеджеру памяти ядра." #. type: Plain text #: debian-bookworm #, fuzzy #| msgid "" #| "B() is available since Linux 4.4; glibc support was added in " #| "version 2.27." msgid "" "B() is available since Linux 4.4; glibc support was added in glibc " "2.27." msgstr "" "Системный вызов B() появился в Linux 4.4; поддержка в glibc началась " "с версии 2.27." #. type: Plain text #: debian-bookworm msgid "" "B(), B(), B(), and B(): POSIX.1-2001, " "POSIX.1-2008, SVr4." msgstr "" "B(), B(), B() и B(): POSIX.1-2001, " "POSIX.1-2008, SVr4." #. type: Plain text #: debian-bookworm msgid "B() is Linux specific." msgstr "B() определена только в Linux." #. type: SS #: debian-bookworm #, no-wrap msgid "Linux notes" msgstr "Замечания, касающиеся Linux" #. type: Plain text #: debian-bookworm msgid "" "The I field of the Linux-specific I file shows " "how many kilobytes of memory the process with ID I has locked using " "B(), B(), B(), and B(2) B." msgstr "" "В поле I, имеющемся только в Linux файле I, " "показано сколько килобайт памяти заблокировал процесс с идентификатором " "I с помощью B(), B(), B() и B(2) с " "флагом B." #. 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 "2023-04-03" msgstr "3 апреля 2023 г." #. 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"