# 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:01+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 #, fuzzy, no-wrap #| msgid "B(3)" msgid "malloc" msgstr "B(3)" #. 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 #, fuzzy #| msgid "malloc, free, calloc, realloc - allocate and free dynamic memory" msgid "" "malloc, free, calloc, realloc, reallocarray - allocate and free dynamic " "memory" msgstr "" "malloc, free, calloc, realloc - распределяет и освобождает динамическую " "память" #. 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 Estdlib.hE>\n" msgstr "B<#include Estdlib.hE>\n" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "BIB<);>\n" #| "BI<*ptr>B<);>\n" #| "BIB<, size_t >IB<);>\n" #| "BI<*ptr>B<, size_t >IB<);>\n" #| "BI<*ptr>B<, size_t >IB<, size_t >IB<);>\n" msgid "" "BIB<);>\n" "BIB<);>\n" "BIB<, size_t >IB<);>\n" "BIB<, size_t >IB<);>\n" "BIB<, size_t >IB<, size_t >IB<);>\n" msgstr "" "BIB<);>\n" "BI<*ptr>B<);>\n" "BIB<, size_t >IB<);>\n" "BI<*ptr>B<, size_t >IB<);>\n" "BI<*ptr>B<, size_t >IB<, size_t >IB<);>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Feature Test Macro Requirements for glibc (see B(7)):" msgstr "" "Требования макроса тестирования свойств для glibc (см. " "B(7)):" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B():" msgstr "B():" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "_GNU_SOURCE\n" #| " Since glibc 2.29:\n" #| " _DEFAULT_SOURCE\n" #| " Glibc 2.28 and earlier:\n" #| " _GNU_SOURCE\n" msgid "" " Since glibc 2.29:\n" " _DEFAULT_SOURCE\n" " glibc 2.28 and earlier:\n" " _GNU_SOURCE\n" msgstr "" "_GNU_SOURCE\n" " Начиная с glibc 2.29:\n" " _DEFAULT_SOURCE\n" " В glibc 2.28 и старее:\n" " _GNU_SOURCE\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: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B(3)" msgid "malloc()" msgstr "B(3)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The B() function allocates I bytes and returns a pointer " #| "to the allocated memory. I. If I " #| "is 0, then B() returns either NULL, or a unique pointer value " #| "that can later be successfully passed to B()." msgid "" "The B() function allocates I bytes and returns a pointer to " "the allocated memory. I. If I is 0, " "then B() returns a unique pointer value that can later be " "successfully passed to B(). (See \"Nonportable behavior\" for " "portability issues.)" msgstr "" "Функция B() распределяет I байтов и возвращает указатель на " "распределённую память. I<Память при этом не инициализируется>. Если значение " "I равно 0, то B() возвращает или NULL, или уникальный " "указатель, который можно без опасений передавать B()." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "free()" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The B() function frees the memory space pointed to by I, " #| "which must have been returned by a previous call to B(), " #| "B(), or B(). Otherwise, or if I has already " #| "been called before, undefined behavior occurs. If I is NULL, no " #| "operation is performed." msgid "" "The B() function frees the memory space pointed to by I, which " "must have been returned by a previous call to B() or related " "functions. Otherwise, or if I has already been freed, undefined " "behavior occurs. If I is NULL, no operation is performed." msgstr "" "Функция B() освобождает место в памяти, указанное в I, которое " "должно быть получено ранее вызовом функции B(), B() или " "B(). Иначе (или если вызов I уже выполнялся) дальнейшее " "поведение не определено. Если значение I равно NULL, то не выполняется " "никаких действий." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B(3)" msgid "calloc()" msgstr "B(3)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The B() function allocates I bytes and returns a pointer " #| "to the allocated memory. I. If I " #| "is 0, then B() returns either NULL, or a unique pointer value " #| "that can later be successfully passed to B()." msgid "" "The B() function allocates memory for an array of I elements " "of I bytes each and returns a pointer to the allocated memory. The " "memory is set to zero. If I or I is 0, then B() " "returns a unique pointer value that can later be successfully passed to " "B()." msgstr "" "Функция B() распределяет I байтов и возвращает указатель на " "распределённую память. I<Память при этом не инициализируется>. Если значение " "I равно 0, то B() возвращает или NULL, или уникальный " "указатель, который можно без опасений передавать B()." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The B() function allocates memory for an array of I " #| "elements of I bytes each and returns a pointer to the allocated " #| "memory. The memory is set to zero. If I or I is 0, then " #| "B() returns either NULL, or a unique pointer value that can " #| "later be successfully passed to B(). If the multiplication of " #| "I and I would result in integer overflow, then B() " #| "returns an error. By contrast, an integer overflow would not be detected " #| "in the following call to B(), with the result that an incorrectly " #| "sized block of memory would be allocated:" msgid "" "If the multiplication of I and I would result in integer " "overflow, then B() returns an error. By contrast, an integer " "overflow would not be detected in the following call to B(), with " "the result that an incorrectly sized block of memory would be allocated:" msgstr "" "Функция B<сalloc>() распределяет память для массива размером I " "элементов по I байтов каждый и возвращает указатель на распределённую " "память. Данные в выделенной памяти при этом обнуляются. Если значение " "I или I равно 0, то B() возвращает NULL или уникальный " "указатель, который можно без опасений передавать B(). Если " "перемножение I и I приводит к целочисленному переполнению, то " "B() возвращает ошибку. Это отличает её от B(), которая не " "обнаруживает целочисленное переполнение и возвращает блок памяти " "неправильного размера:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "malloc(nmemb * size);\n" msgstr "malloc(nmemb * size);\n" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B():" msgid "realloc()" msgstr "B():" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The B() function changes the size of the memory block pointed " #| "to by I to I bytes. The contents will be unchanged in the " #| "range from the start of the region up to the minimum of the old and new " #| "sizes. If the new size is larger than the old size, the added memory " #| "will I be initialized. If I is NULL, then the call is " #| "equivalent to I, for all values of I; if I is " #| "equal to zero, and I is not NULL, then the call is equivalent to " #| "I. Unless I is NULL, it must have been returned by an " #| "earlier call to B(), B(), or B(). If the area " #| "pointed to was moved, a I is done." msgid "" "The B() function changes the size of the memory block pointed to " "by I to I bytes. The contents of the memory will be unchanged in " "the range from the start of the region up to the minimum of the old and new " "sizes. If the new size is larger than the old size, the added memory will " "I be initialized." msgstr "" "Функция B() меняет размер блока памяти, на который указывает " "I, на размер, равный I байт. Содержимое памяти не будет изменено " "от начала области в пределах наименьшего из старого и нового размеров. Если " "новый размер больше старого, то добавленная память I<не> будет " "инициализирована. Если значение I равно NULL, то вызов эквивалентен " "I для всех значений I; если значение I равно нулю " "и I не равно NULL, то вызов эквивалентен I. Если только " "значение I не равно NULL, то должно быть возвращено ранее полученное " "значение от B(), B() или B(). Если область была " "перемещена, то выполняется I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is NULL, then the call is equivalent to I, for all " "values of I." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If I is equal to zero, and I is not NULL, then the call is " "equivalent to I (but see \"Nonportable behavior\" for portability " "issues)." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Unless I is NULL, it must have been returned by an earlier call to " "B or related functions. If the area pointed to was moved, a " "I is done." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B():" msgid "reallocarray()" msgstr "B():" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The B() function changes the size of the memory block " #| "pointed to by I to be large enough for an array of I " #| "elements, each of which is I bytes. It is equivalent to the call" msgid "" "The B() function changes the size of (and possibly moves) " "the memory block pointed to by I to be large enough for an array of " "I elements, each of which is I bytes. It is equivalent to the " "call" 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 #, fuzzy, no-wrap #| msgid " realloc(ptr, nmemb * size);\n" msgid "realloc(ptr, nmemb * size);\n" msgstr " realloc(ptr, nmemb * size);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "However, unlike that B() call, B() fails safely " #| "in the case where the multiplication would overflow. If such an overflow " #| "occurs, B() returns NULL, sets I to B, and " #| "leaves the original block of memory unchanged." msgid "" "However, unlike that B() call, B() fails safely in " "the case where the multiplication would overflow. If such an overflow " "occurs, B() returns an error." msgstr "" "Однако в отличие от вызова B(), функция B() безопасно " "завершается ошибкой в случае возникновения переполнения умножения. Если это " "происходит, то B() возвращает NULL, присваивает I " "значение 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 "" #| "The B() and B() functions return a pointer to the " #| "allocated memory, which is suitably aligned for any built-in type. On " #| "error, these functions return NULL. NULL may also be returned by a " #| "successful call to B() with a I of zero, or by a " #| "successful call to B() with I or I equal to zero." msgid "" "The B(), B(), B(), and B() functions " "return a pointer to the allocated memory, which is suitably aligned for any " "type that fits into the requested size or less. On error, these functions " "return NULL and set I. Attempting to allocate more than " "B bytes is considered an error, as an object that large could " "cause later pointer subtraction to overflow." msgstr "" "Функции B() и B() возвращают указатель на распределённую " "память, выровненную должным образом для любого встроенного типа. При ошибке " "возвращается NULL. Значение NULL также может быть получено при успешной " "работе вызова B(), если значение I равно нулю, или B() " "— если значение I или I равно нулю." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "The B() function returns no value." msgid "The B() function returns no value, and preserves I." msgstr "Функция B() ничего не возвращает." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() and B() functions return NULL if I is " "not NULL and the requested size is zero; this is not considered an error. " "(See \"Nonportable behavior\" for portability issues.) Otherwise, the " "returned pointer may be the same as I if the allocation was not moved " "(e.g., there was room to expand the allocation in-place), or different from " "I if the allocation was moved to a new address. If these functions " "fail, the original block is left untouched; it is not freed or moved." msgstr "" #. 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: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B(), B(), B(), and B() can fail with " "the following error:" msgstr "" "Функции B(), 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-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, fuzzy #| msgid "" #| "Out of memory. Possibly, the application hit the B or " #| "B limit described in B(2)." msgid "" "Out of memory. Possibly, the application hit the B or " "B limit described in B(2). Another reason could be " "that the number of mappings created by the caller process exceeded the limit " "specified by I." msgstr "" "Не хватает памяти. Вероятно приложение достигнут лимит B или " "B, описанный в B(2)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ATTRIBUTES" msgstr "АТРИБУТЫ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For an explanation of the terms used in this section, see B(7)." msgstr "Описание терминов данного раздела смотрите в B(7)." #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Interface" msgstr "Интерфейс" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Attribute" msgstr "Атрибут" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Value" msgstr "Значение" #. type: tbl table #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid ".na\n" msgstr ".na\n" #. type: tbl table #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid ".nh\n" msgstr ".nh\n" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "B(),\n" #| "B()" msgid "" "B(),\n" "B(),\n" "B(),\n" "B()" msgstr "" "B(),\n" "B()" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Thread safety" msgstr "Безвредность в нитях" #. type: tbl table #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "MT-Safe" msgstr "MT-Safe" #. 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(3)" msgid "B()" msgstr "B(3)" #. 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 "B(3)" msgid "B()" msgstr "B(3)" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B():" msgid "B()" msgstr "B():" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "C11, POSIX.1-2008." msgstr "C11, 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():" msgid "B()" msgstr "B():" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "None" msgid "None." msgstr "None" #. 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, C89." msgstr "POSIX.1-2001, C89." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "glibc 2.26. OpenBSD 5.6, FreeBSD 11.0." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() and related functions rejected sizes greater than " "B starting in glibc 2.30." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B() preserved I starting in glibc 2.33." msgstr "" #. 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 "" "By default, Linux follows an optimistic memory allocation strategy. This " "means that when B() returns non-NULL there is no guarantee that the " "memory really is available. In case it turns out that the system is out of " "memory, one or more processes will be killed by the OOM killer. For more " "information, see the description of I and I in B(5), and the Linux kernel source file " "I." msgstr "" "По умолчанию, Linux придерживается оптимистичной стратегии распределения " "памяти. Это означает, что когда B() возвращает значение не NULL, то " "нет никаких гарантий, что память в действительности доступна. Если " "обнаружится, что системе не хватает памяти, то один или несколько процессов " "будут завершены OOM. Дополнительную информацию можно получить из описания I и I в B(5) и " "файле из исходного кода ядра Linux I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Normally, B() allocates memory from the heap, and adjusts the size " "of the heap as required, using B(2). When allocating blocks of memory " "larger than B bytes, the glibc B() implementation " "allocates the memory as a private anonymous mapping using B(2). " "B is 128\\ kB by default, but is adjustable using " "B(3). Prior to Linux 4.7 allocations performed using B(2) " "were unaffected by the B resource limit; since Linux 4.7, this " "limit is also enforced for allocations performed using B(2)." msgstr "" "Обычно, B() выделяет память из кучи и подгоняет размер кучи " "соответствующим образом с помощью B(2). Если выделяемый блок памяти " "больше чем B байт, то реализация B() в glibc " "выделяет память с помощью B(2) в виде частного анонимного отображения. " "По умолчанию, значение B равно 128\\ КБ, но его можно " "изменить с помощью B(3). До Linux 4.7 на выделения, выполняемые с " "помощью B(2), не влияет ограничитель ресурса B; начиная с " "Linux 4.7 это ограничение также применяется к выделениям, созданным с " "помощью B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "To avoid corruption in multithreaded applications, mutexes are used " "internally to protect the memory-management data structures employed by " "these functions. In a multithreaded application in which threads " "simultaneously allocate and free memory, there could be contention for these " "mutexes. To scalably handle memory allocation in multithreaded " "applications, glibc creates additional I if mutex " "contention is detected. Each arena is a large region of memory that is " "internally allocated by the system (using B(2) or B(2)), and " "managed with its own mutexes." msgstr "" "Внутри данных функций для защиты от повреждений выделяемых структур данных " "управления памятью, используются мьютексы. В многонитевых приложениях, в " "которых нити одновременно выделяют и освобождают память, может возникнуть " "конфликт за обладание этими мьютексами. Чтобы расширить обработку выделения " "памяти в многонитевых приложениях библиотека glibc создаёт дополнительные " "I<области выделения памяти> (memory allocation arenas), если обнаруживается " "конфликт. Каждая область представляет собой большой кусок памяти, который " "внутренне выделен системой (с помощью B(2) или B(2)) и " "управляется своими собственными мьютексами." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If your program uses a private memory allocator, it should do so by " "replacing B(), B(), B(), and B(). The " "replacement functions must implement the documented glibc behaviors, " "including I handling, size-zero allocations, and overflow checking; " "otherwise, other library routines may crash or operate incorrectly. For " "example, if the replacement I() does not preserve I, then " "seemingly unrelated library routines may fail without having a valid reason " "in I. Private memory allocators may also need to replace other glibc " "functions; see \"Replacing malloc\" in the glibc manual for details." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "Crashes in B(), B(), B(), or B() are " #| "almost always related to heap corruption, such as overflowing an " #| "allocated chunk or freeing the same pointer twice." msgid "" "Crashes in memory allocators are almost always related to heap corruption, " "such as overflowing an allocated chunk or freeing the same pointer twice." msgstr "" "Аварийные ситуации в 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 "" "The B() implementation is tunable via environment variables; see " "B(3) for details." msgstr "" "Реализация B() настраивается с помощью переменных окружения; " "подробности смотрите в B(3)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Nonportable behavior" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The behavior of these functions when the requested size is zero is glibc " "specific; other implementations may return NULL without setting I, " "and portable POSIX programs should tolerate such behavior. See " "B(3p)." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "POSIX requires memory allocators to set I upon failure. However, the " "C standard does not require this, and applications portable to non-POSIX " "platforms should not assume this." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Portable programs should not use private memory allocators, as POSIX and the " "C standard do not allow replacement of B(), B(), B(), " "and B()." msgstr "" #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "ПРИМЕРЫ" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Eerr.hE\n" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "\\&\n" "#define MALLOCARRAY(n, type) ((type *) my_mallocarray(n, sizeof(type)))\n" "#define MALLOC(type) MALLOCARRAY(1, type)\n" "\\&\n" "static inline void *my_mallocarray(size_t nmemb, size_t size);\n" "\\&\n" "int\n" "main(void)\n" "{\n" " char *p;\n" "\\&\n" " p = MALLOCARRAY(32, char);\n" " if (p == NULL)\n" " err(EXIT_FAILURE, \"malloc\");\n" "\\&\n" " strlcpy(p, \"foo\", 32);\n" " puts(p);\n" "}\n" "\\&\n" "static inline void *\n" "my_mallocarray(size_t nmemb, size_t size)\n" "{\n" " return reallocarray(NULL, nmemb, size);\n" "}\n" msgstr "" #. 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(1), B(2), B(2), B(3), B(3), " "B(3), B(3), B(3), " "B(3), B(3), B(3), B(3)" msgstr "" "B(1), B(2), B(2), B(3), B(3), " "B(3), B(3), B(3), " "B(3), B(3), B(3), B(3)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For details of the GNU C library implementation, see E<.UR https://" "sourceware.org/glibc/wiki/MallocInternals> E<.UE .>" msgstr "" "Информацию о реализации в библиотеке GNU C смотрите в E<.UR https://" "sourceware.org/glibc/wiki/MallocInternals> E<.UE .>" #. 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 "" "BIB<);>\n" "BI<*ptr>B<);>\n" "BIB<, size_t >IB<);>\n" "BI<*ptr>B<, size_t >IB<);>\n" "BI<*ptr>B<, size_t >IB<, size_t >IB<);>\n" msgstr "" "BIB<);>\n" "BI<*ptr>B<);>\n" "BIB<, size_t >IB<);>\n" "BI<*ptr>B<, size_t >IB<);>\n" "BI<*ptr>B<, size_t >IB<, size_t >IB<);>\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "Out of memory. Possibly, the application hit the B or " "B limit described in B(2)." msgstr "" "Не хватает памяти. Вероятно приложение достигнут лимит B или " "B, описанный в B(2)." #. type: SH #: debian-bookworm #, no-wrap msgid "VERSIONS" msgstr "ВЕРСИИ" #. type: Plain text #: debian-bookworm #, fuzzy #| msgid "B() first appeared in glibc in version 2.2." msgid "B() was added in glibc 2.26." msgstr "Функция B() впервые появилась в glibc 2.2." #. type: Plain text #: debian-bookworm #, fuzzy #| msgid "" #| "B(), B(), B(), B(): POSIX.1-2001, " #| "POSIX.1-2008, C89, C99." msgid "" "B(), B(), B(), B(): POSIX.1-2001, " "POSIX.1-2008, C99." msgstr "" "B(), B(), B(), B(): POSIX.1-2001, " "POSIX.1-2008, C89, C99." #. type: Plain text #: debian-bookworm msgid "" "B() is a nonstandard extension that first appeared in OpenBSD " "5.6 and FreeBSD 11.0." msgstr "" "Функция B() является нестандартным расширением, впервые " "появилась в OpenBSD 5.6 и FreeBSD 11.0." #. 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-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" #. type: Plain text #: opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| "#include Eerrno.hE\n" #| "#include Epthread.hE\n" #| "#include Estdio.hE\n" #| "#include Estdlib.hE\n" #| "#include Eunistd.hE\n" msgid "" "#include Eerr.hE\n" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" msgstr "" "#include Eerrno.hE\n" "#include Epthread.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Eunistd.hE\n" #. type: Plain text #: opensuse-leap-15-6 #, no-wrap msgid "" "#define MALLOCARRAY(n, type) ((type *) my_mallocarray(n, sizeof(type)))\n" "#define MALLOC(type) MALLOCARRAY(1, type)\n" msgstr "" #. type: Plain text #: opensuse-leap-15-6 #, no-wrap msgid "static inline void *my_mallocarray(size_t nmemb, size_t size);\n" msgstr "" #. type: Plain text #: opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| "int\n" #| "main(int argc, char *argv[])\n" #| "{\n" #| " char *p;\n" msgid "" "int\n" "main(void)\n" "{\n" " char *p;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " char *p;\n" #. type: Plain text #: opensuse-leap-15-6 #, no-wrap msgid "" " p = MALLOCARRAY(32, char);\n" " if (p == NULL)\n" " err(EXIT_FAILURE, \"malloc\");\n" msgstr "" #. type: Plain text #: opensuse-leap-15-6 #, no-wrap msgid "" " strlcpy(p, \"foo\", 32);\n" " puts(p);\n" "}\n" msgstr "" #. type: Plain text #: opensuse-leap-15-6 #, no-wrap msgid "" "static inline void *\n" "my_mallocarray(size_t nmemb, size_t size)\n" "{\n" " return reallocarray(NULL, nmemb, size);\n" "}\n" msgstr "" #. type: TH #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages 6.7"