# Polish translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Przemek Borys , 1998. # Andrzej Krzysztofowicz , 2002. # Michał Kułach , 2024. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 06:03+0200\n" "PO-Revision-Date: 2024-06-02 12:52+0200\n" "Last-Translator: Michał Kułach \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 22.12.3\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 " "|| n%100>14) ? 1 : 2);\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "mmap" msgstr "mmap" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 maja 2024 r." #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.8" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "NAZWA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "mmap, munmap - map or unmap files or devices into memory" msgstr "" "mmap, munmap - mapuje lub usuwa mapowanie plików lub urządzeń w pamięci" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "BIBLIOTEKA" #. 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 "Standardowa biblioteka C (I, I<-lc>)" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SYNOPSIS" msgstr "SKŁADNIA" #. 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 #, no-wrap msgid "" "BIB<[.>IB<], size_t >IB<, int >IB<, int >IB<,>\n" "B< int >IB<, off_t >IB<);>\n" "BIB<[.>IB<], size_t >IB<);>\n" msgstr "" "BIB<[.>IB<], size_t >IB<, int >IB<, int >IB<,>\n" "B< int >IB<, off_t >IB<);>\n" "BIB<[.>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 "See NOTES for information on feature test macro requirements." msgstr "" "Informacje o wymaganych makrach sprawdzania cech znajdują się w rozdziale " "UWAGI." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "OPIS" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() creates a new mapping in the virtual address space of the calling " "process. The starting address for the new mapping is specified in I. " "The I argument specifies the length of the mapping (which must be " "greater than 0)." msgstr "" "B() tworzy nowe mapowanie w wirtualnej przestrzeni adresowej procesu " "wywołującego. Początkowy adres nowego mapowania podaje się w I. " "Argument I określa długość mapowania (musi być ono większe niż 0)." #. Before Linux 2.6.24, the address was rounded up to the next page #. boundary; since Linux 2.6.24, it is rounded down! #. 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 kernel chooses the (page-aligned) address at " "which to create the mapping; this is the most portable method of creating a " "new mapping. If I is not NULL, then the kernel takes it as a hint " "about where to place the mapping; on Linux, the kernel will pick a nearby " "page boundary (but always above or equal to the value specified by I) and attempt to create the mapping there. If another " "mapping already exists there, the kernel picks a new address that may or may " "not depend on the hint. The address of the new mapping is returned as the " "result of the call." msgstr "" "Jeśli I wynosi NULL, to jądro wybiera (wyrównany do strony) adres, na " "którym utworzy mapowanie; jest to najbardziej przenośna metoda tworzenia " "nowych mapowań. Jeśli I nie wynosi NULL, to jądro traktuje go jako " "wskazówkę na temat miejsca umieszczenia mapowania; w Linuksie, jądro " "wybierze najbliższą granicę strony (jednak będzie ona zawsze równa lub " "większa wartości określonej w I) i spróbuje " "utworzyć tu nowe mapowanie. Jeśli inne mapowanie już tu istnieje, jądro " "wybierze nowy adres, który może, lecz nie musi, zależeć od wskazówki. Adres " "nowego mapowania jest zwracany jako wynik wywołania." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The contents of a file mapping (as opposed to an anonymous mapping; see " "B below), are initialized using I bytes starting at " "offset I in the file (or other object) referred to by the file " "descriptor I. I must be a multiple of the page size as returned " "by I." msgstr "" "Zawartość mapowania pliku (w przeciwieństwie do mapowania anonimowego; zob. " "B poniżej) jest inicjowana za pomocą I bajtów " "zaczynających się w przesunięciu I w pliku (lub innym obiekcie), do " "którego odnosi się deskryptor pliku I. I musi być " "wielokrotnością rozmiaru strony, jaki zwraca I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "After the B() call has returned, the file descriptor, I, can be " "closed immediately without invalidating the mapping." msgstr "" "Po powrocie wywołania B(), deskryptor pliku I może być " "niezwłocznie zamknięty, nie unieważniając mapowania." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument describes the desired memory protection of the mapping " "(and must not conflict with the open mode of the file). It is either " "B or the bitwise OR of one or more of the following flags:" msgstr "" "Argument I opisuje oczekiwany sposób ochrony pamięci mapowania (i nie " "może być sprzeczny z trybem otwarcia pliku). Może on być równy B " "lub może być sumą bitową (OR) jednego lub więcej spośród innych znaczników " "PROT_*." #. 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 "Pages may be executed." msgstr "Strony mogą być wykonywane." #. 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 "Pages may be read." msgstr "Strony mogą być odczytywane." #. 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 "Pages may be written." msgstr "Strony mogą być zapisywane." #. 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 "Pages may not be accessed." msgstr "Strony mogą nie być dostępne." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "The flags argument" msgstr "Argument flags" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument determines whether updates to the mapping are visible " "to other processes mapping the same region, and whether updates are carried " "through to the underlying file. This behavior is determined by including " "exactly one of the following values in I:" msgstr "" "Argument I określa, czy aktualizacje mapowania są widoczne dla innych " "procesów mapowanych do tego samego miejsca i czy aktualizacje są przenoszone " "na sam plik. To zachowanie zależy od podanej, dokładnie jednej z poniższych " "wartości 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 "" "Share this mapping. Updates to the mapping are visible to other processes " "mapping the same region, and (in the case of file-backed mappings) are " "carried through to the underlying file. (To precisely control when updates " "are carried through to the underlying file requires the use of B(2).)" msgstr "" "Dzieli zadane mapowanie. Aktualizacje mapowania są widoczne dla innych " "procesów mapowanych do tego samego miejsca i (w przypadku mapowań opartych " "na pliku) są przenoszone do samego pliku (aby kontrolować dokładnie, kiedy " "aktualizacje są przenoszone na sam plik, konieczne jest użycie B(2))." #. 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.15)" msgstr "B (od Linuksa 4.15)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag provides the same behavior as B except that " "B mappings ignore unknown flags in I. By contrast, when " "creating a mapping using B, the kernel verifies all " "passed flags are known and fails the mapping with the error B " "for unknown flags. This mapping type is also required to be able to use " "some mapping flags (e.g., B)." msgstr "" "Znacznik zapewnia takie same zachowanie jak B z tą różnicą, że " "mapowania B ignorują nieznane znaczniki we I. Przy " "tworzeniu mapowań z użyciem B, jądro sprawdza " "natomiast, czy wszystkie przekazane znaczniki są znane i odmawia mapowania z " "błędem B, jeśli wystąpią nieznane znaczniki. Ten typ mapowania " "jest również wymagany, aby móc korzystać z niektórych znaczników mapowań " "(np. 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 "" "Create a private copy-on-write mapping. Updates to the mapping are not " "visible to other processes mapping the same file, and are not carried " "through to the underlying file. It is unspecified whether changes made to " "the file after the B() call are visible in the mapped region." msgstr "" "Tworzy prywatne mapowanie, typu \\[Bq]kopiowanie podczas zapisu\\[rq]. " "Aktualizacje mapowania nie są widoczne dla innych procesów mapujących ten " "sam plik i nie są przenoszone na sam plik. Nie jest określone, czy zmiany " "zawartości pliku wykonane po wywołaniu B() będą uwidocznione w " "mapowanym obszarze." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Both B and B are described in POSIX.1-2001 and " "POSIX.1-2008. B is a Linux extension." msgstr "" "B i B są opisane w POSIX.1-2001 i POSIX.1-2008. " "B jest rozszerzeniem Linuksa." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In addition, zero or more of the following values can be ORed in I:" msgstr "" "Ponadto, zero lub więcej poniższych wartości można zsumować bitowo (OR) we " "I:" #. 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 2.4.20, 2.6)" msgstr "B (od Linuksa 2.4.20, 2.6)" #. See http://lwn.net/Articles/294642 "Tangled up in threads", 19 Aug 08 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Put the mapping into the first 2 Gigabytes of the process address space. " "This flag is supported only on x86-64, for 64-bit programs. It was added to " "allow thread stacks to be allocated somewhere in the first 2\\ GB of memory, " "so as to improve context-switch performance on some early 64-bit " "processors. Modern x86-64 processors no longer have this performance " "problem, so use of this flag is not required on those systems. The " "B flag is ignored when B is set." msgstr "" "Umieszcza mapowanie w pierwszych 2 gigabajtach przestrzeni adresowej " "procesu. Znacznik jest obsługiwany tylko na architekturze x86-64, w " "przypadku programów 64-bitowych. Znacznik dodano, aby pozwolić stosom wątków " "na zaalokowanie w pierwszych 2\\ GB pamięci, co usprawniało wydajność " "przełączania kontekstów na pewnych wczesnych procesorach 64-bitowych. " "Współczesne procesory x86-64 nie mają takiego problemu z wydajnością, zatem " "znacznik ten nie jest wymagany na tych systemach. Znacznik B jest " "ignorowany, gdy ustawiony jest 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 "" "Synonym for B; provided for compatibility with other " "implementations." msgstr "" "Równoważne B; istnieje dla kompatybilności z innymi " "implementacjami." #. 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" #. See the pgoff overflow check in do_mmap(). #. See the offset check in sys_mmap in arch/x86/kernel/sys_x86_64.c. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The mapping is not backed by any file; its contents are initialized to " "zero. The I argument is ignored; however, some implementations require " "I to be -1 if B (or B) is specified, and " "portable applications should ensure this. The I argument should be " "zero. Support for B in conjunction with B was " "added in Linux 2.4." msgstr "" "Mapowanie nie jest oparte na pliku; jego zawartość jest inicjowana jako " "zero. Argument I jest ignorowany, jednak niektóre implementacje " "wymagają, aby I wynosiło -1 jeśli podano B (lub " "B), dlatego przenośne aplikacje powinny używać tej wartości. " "Argument I powinien wynosić zero. Obsługę B w " "połączeniu z B dodano w Linuksie 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" #. Introduced in 1.1.36, removed in 1.3.24. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag is ignored. (Long ago\\[em]Linux 2.0 and earlier\\[em]it signaled " "that attempts to write to the underlying file should fail with B. " "But this was a source of denial-of-service attacks.)" msgstr "" "Ten znacznik jest ignorowany (dawno temu \\[em] Linux 2.0 i wcześniejsze " "\\[em] sygnalizował on, że próba zapisu to mapowanego pliku powinna zawieść " "z B; było to jednak źródłem ataków blokujących usługę (DoS))." #. 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" #. Introduced in 1.1.38, removed in 1.3.24. Flag tested in proc_follow_link. #. (Long ago, it signaled that the underlying file is an executable. #. However, that information was not really used anywhere.) #. Linus talked about DOS related to MAP_EXECUTABLE, but he was thinking of #. MAP_DENYWRITE? #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This flag is ignored." msgstr "Ten znacznik jest ignorowany." #. 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" #. On some systems, this was required as the opposite of #. MAP_ANONYMOUS -- mtk, 1 May 2007 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Compatibility flag. Ignored." msgstr "Znacznik służący zgodności. Ignorowany." #. 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 "" "Don't interpret I as a hint: place the mapping at exactly that " "address. I must be suitably aligned: for most architectures a " "multiple of the page size is sufficient; however, some architectures may " "impose additional restrictions. If the memory region specified by I " "and I overlaps pages of any existing mapping(s), then the overlapped " "part of the existing mapping(s) will be discarded. If the specified address " "cannot be used, B() will fail." msgstr "" "Nie interpretuje I jako wskazówki: umieszcza mapowanie dokładnie na " "podanym adresie. I musi być właściwie wyrównany: w przypadku " "większości architektur, wystarczająca jest wielokrotność rozmiaru strony; " "jednak niektóre architektury mogą narzucać dodatkowe ograniczenia. Jeśli " "obszar pamięci podany w I i I nachodzi na strony jakiegoś " "istniejącego mapowania, to te nachodzące części istniejącego mapowania " "zostaną odrzucone. Jeśli podany adres nie może być użyty, wywołanie " "B() zawiedzie." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Software that aspires to be portable should use the B flag with " "care, keeping in mind that the exact layout of a process's memory mappings " "is allowed to change significantly between Linux versions, C library " "versions, and operating system releases. I" msgstr "" "Oprogramowanie, które ma zamiar być przenośne, powinno bardzo ostrożnie " "korzystać ze znacznika B, mając na względzie, że dokładny schemat " "mapowań pamięci procesu może się znacznie zmieniać pomiędzy wersjami " "Linuksa, wersjami biblioteki C i wydaniami systemu operacyjnego. I" #. 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.17)" msgstr "B (od Linuksa 4.17)" #. commit a4ff8e8620d3f4f50ac4b41e8067b7d395056843 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag provides behavior that is similar to B with respect to " "the I enforcement, but differs in that B never " "clobbers a preexisting mapped range. If the requested range would collide " "with an existing mapping, then this call fails with the error B " "This flag can therefore be used as a way to atomically (with respect to " "other threads) attempt to map an address range: one thread will succeed; all " "others will report failure." msgstr "" "Znacznik zapewnia zachowanie podobne do B, jeśli chodzi o " "wymuszenie adresu I, lecz z tą różnicą, że B " "nigdy nie narusza wcześniejszego zakresu mapowania. Jeśli żądany zakres " "kolidowałby z istniejącym mapowaniem, to wywołanie zawiedzie z błędem " "B. Znacznik ten może zatem posłużyć do niepodzielnej (z " "uwzględnieniem innym wątków) próby mapowania zakresu adresowego: u jednego " "wątku powiedzie się to, wszystkie inne zawiodą." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that older kernels which do not recognize the B " "flag will typically (upon detecting a collision with a preexisting mapping) " "fall back to a \\[lq]non-B\\[rq] type of behavior: they will " "return an address that is different from the requested address. Therefore, " "backward-compatible software should check the returned address against the " "requested address." msgstr "" "Proszę zauważyć, że starsze jądra, które nie rozpoznają znacznika " "B, zwykle (po wykryciu kolizji z wcześniejszym " "mapowaniem) awaryjnie zachowają się jak \\[Bq]nie-B\\[rq]: zwrócą " "adres, który jest odmienny od adresu żądanego. Oprogramowanie, które ma być " "kompatybilne wstecznie, powinno zatem sprawdzać zwracany adres z adresem " "żądanym." #. 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 "" "This flag is used for stacks. It indicates to the kernel virtual memory " "system that the mapping should extend downward in memory. The return " "address is one page lower than the memory area that is actually created in " "the process's virtual address space. Touching an address in the \"guard\" " "page below the mapping will cause the mapping to grow by a page. This " "growth can be repeated until the mapping grows to within a page of the high " "end of the next lower mapping, at which point touching the \"guard\" page " "will result in a B signal." msgstr "" "Znacznik jest używany do stosów. Wskazuje systemowi pamięci wirtualnej " "jądra, że mapowanie ma kontynuować się w dół pamięci. Zwracany adres jest o " "jedną stronę niżej, niż obszar pamięci, który jest w rzeczywistości tworzony " "w wirtualnej przestrzeni adresowej procesu. Dotknięcie adresu w " "\\[Bq]strzeżonej\\[rq] stronie (guard page) poniżej mapowania spowoduje " "zwiększenie mapowania o jedną stronę. Ten wzrost można powtarzać do momentu, " "gdy mapowanie osiągnie wysoki koniec strony następnego niższego mapowania; " "wówczas dotknięcie \\[Bq]strzeżonej\\[rq] strony spowoduje sygnał B." #. 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 2.6.32)" msgstr "B (od Linuksa 2.6.32)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Allocate the mapping using \"huge\" pages. See the Linux kernel source file " "I for further information, as " "well as NOTES, below." msgstr "" "Przydziela mapowanie za pomocą dużych (\\[Bq]huge\\[rq]) stron. Więcej " "informacji w pliku I w " "źródłach jądra Linux oraz w UWAGACH poniżej." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.8)" msgstr "B (od Linuksa 3.8)" #. See https://lwn.net/Articles/533499/ #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Used in conjunction with B to select alternative hugetlb page " "sizes (respectively, 2\\ MB and 1\\ GB) on systems that support multiple " "hugetlb page sizes." msgstr "" "Używane w połączeniu z B, do wybrania alternatywnych rozmiarów " "strony hugetlb (odpowiednio, 2\\ MB i 1\\ GB) w systemach, które obsługują " "wiele rozmiarów stron hugetlb." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "More generally, the desired huge page size can be configured by encoding the " "base-2 logarithm of the desired page size in the six bits at the offset " "B. (A value of zero in this bit field provides the default " "huge page size; the default huge page size can be discovered via the " "I field exposed by I.) Thus, the above two " "constants are defined as:" msgstr "" "Ogólniej, żądany rozmiar dużych stron można skonfigurować, podając logarytm " "o podstawie 2, żądanego rozmiaru strony, w sześciu bitach na przesunięciu " "B (wartość zero w tym polu bitowym oznacza domyślny rozmiar " "dużej strony; można go sprawdzić za pomocą pola I ujawnianego " "w I). Zatem, powyższe dwie stałe są zdefiniowane jako:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "#define MAP_HUGE_2MB (21 EE MAP_HUGE_SHIFT)\n" "#define MAP_HUGE_1GB (30 EE MAP_HUGE_SHIFT)\n" msgstr "" "#define MAP_HUGE_2MB (21 EE MAP_HUGE_SHIFT)\n" "#define MAP_HUGE_1GB (30 EE MAP_HUGE_SHIFT)\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The range of huge page sizes that are supported by the system can be " "discovered by listing the subdirectories in I." msgstr "" "Zakres obsługiwanych rozmiarów dużych stron w systemie można sprawdzić, " "wypisując podkatalogi w katalogu I." #. 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 2.5.37)" msgstr "B (od Linuksa 2.5.37)" # page fault = chybienie strony za https://www.ia.pw.edu.pl/~tkruk/edu/soib/ # wyklad/w05_art.pdf. Używany często termin "błąd stronicowania" jest # zdecydowanie mylący. #. If set, the mapped pages will not be swapped out. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Mark the mapped region to be locked in the same way as B(2). This " "implementation will try to populate (prefault) the whole range but the " "B() call doesn't fail with B if this fails. Therefore major " "faults might happen later on. So the semantic is not as strong as " "B(2). One should use B() plus B(2) when major faults " "are not acceptable after the initialization of the mapping. The " "B flag is ignored in older kernels." msgstr "" "Oznacza mapowany obszar jako zablokowany w ten sam sposób, jak robi to " "B(2). Ta implementacja postara się wypełnić (prefault) cały zakres, " "lecz wywołanie B() nie zawodzi z błędem B gdy się to nie " "powiedzie. Z tego względu później mogą wystąpić główne chybienia stron (ang. " "major page fault). Semantyka ta nie jest zatem tak mocna jak B(2). " "Jeśli po zainicjowaniu mapowania nie są później dopuszczalne główne " "chybienia stron, należy korzystać w zamian z B() wraz z B(2). " "Znacznik B jest ignorowany przez starsze jądra." #. 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 2.5.46)" msgstr "B (od Linuksa 2.5.46)" #. commit 54cb8821de07f2ffcd28c380ce9b93d5784b40d7 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag is meaningful only in conjunction with B. Don't " "perform read-ahead: create page tables entries only for pages that are " "already present in RAM. Since Linux 2.6.23, this flag causes " "B to do nothing. One day, the combination of B " "and B may be reimplemented." msgstr "" "Znacznik ten ma znaczenie tylko w połączeniu z B. Nie " "przeprowadza odczytu naprzód: wpisy tablicy stron są tworzone tylko w " "przypadku stron, które są już obecne w RAM. Od Linuksa 2.6.23, znacznik ten " "nie ma wpływu na B. W przyszłości, połączenie B " "z B może zostać na nowo zaimplementowane." #. 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 "" "Do not reserve swap space for this mapping. When swap space is reserved, " "one has the guarantee that it is possible to modify the mapping. When swap " "space is not reserved one might get B upon a write if no physical " "memory is available. See also the discussion of the file I in B(5). Before Linux 2.6, this flag had effect " "only for private writable mappings." msgstr "" "Poleca nie rezerwować przestrzeni wymiany dla tego mapowania. Gdy przestrzeń " "wymiany jest zarezerwowana, ma się gwarancję, że istnieje możliwość " "modyfikacji mapowania. Gdy przestrzeń wymiany nie jest zarezerwowana, można " "otrzymać B podczas zapisu, jeśli braknie pamięci fizycznej. Proszę " "zapoznać się również z opisem pliku I w " "B(5). Przed Linuksem 2.6, znacznik ten działał tylko dla prywatnych, " "zapisywalnych mapowań." #. 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 2.5.46)" msgstr "B (od Linuksa 2.5.46)" # page fault = chybienie strony za https://www.ia.pw.edu.pl/~tkruk/edu/soib/ # wyklad/w05_art.pdf. Używany często termin "błąd stronicowania" jest # zdecydowanie mylący. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Populate (prefault) page tables for a mapping. For a file mapping, this " "causes read-ahead on the file. This will help to reduce blocking on page " "faults later. The B() call doesn't fail if the mapping cannot be " "populated (for example, due to limitations on the number of mapped huge " "pages when using B). Support for B in " "conjunction with private mappings was added in Linux 2.6.23." msgstr "" "Wypełnia (prefault) tablice strony dla mapowania. W przypadku mapowania " "pliku, powoduje to odczyt z wyprzedzeniem pliku. W ten sposób redukuje się " "blokowanie, przy późniejszych chybieniach stron (ang. page fault). Wywołanie " "B() nie zawodzi, jeśli nie da się wypełnić mapowania (np. ze względu " "na ograniczenie liczby mapowanych dużych (huge) stron, za pomocą " "B). Obsługę B w połączeniu z mapowaniami " "prywatnymi dodano w Linuksie 2.6.23." #. 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 2.6.27)" msgstr "B (od Linuksa 2.6.27)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Allocate the mapping at an address suitable for a process or thread stack." msgstr "" "Przydziela mapowanie na adresie odpowiednim dla stosu: procesu lub wątku." #. See http://lwn.net/Articles/294642 "Tangled up in threads", 19 Aug 08 #. commit cd98a04a59e2f94fa64d5bf1e26498d27427d5e7 #. http://thread.gmane.org/gmane.linux.kernel/720412 #. "pthread_create() slow for many threads; also time to revisit 64b #. context switch optimization?" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag is currently a no-op on Linux. However, by employing this flag, " "applications can ensure that they transparently obtain support if the flag " "is implemented in the future. Thus, it is used in the glibc threading " "implementation to allow for the fact that some architectures may (later) " "require special treatment for stack allocations. A further reason to employ " "this flag is portability: B exists (and has an effect) on some " "other systems (e.g., some of the BSDs)." msgstr "" "Znacznik ten jest w Linuksie instrukcją pustą. Jednak podając go, przenośne " "aplikacje mogą zapewnić zyskanie obsługi znacznika, gdy zostanie on w " "przyszłości zaimplementowany. Z tego względu jest używany w implementacji " "wątkowania glibc, aby uwzględnić fakt, że niektóre architektury mogą (w " "przyszłości) wymagać specjalnego traktowania przy alokowaniu stosu. Kolejnym " "powodem korzystania z tego znacznika jest przenośność: B istnieje " "(i działa) na niektórych innych systemach (np. niektórych BSD)." #. 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.15)" msgstr "B (od Linuksa 4.15)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This flag is available only with the B mapping type; " "mappings of type B will silently ignore this flag. This flag is " "supported only for files supporting DAX (direct mapping of persistent " "memory). For other files, creating a mapping with this flag results in an " "B error." msgstr "" "Znacznik ten jest dostępny jedynie z typem mapowania B; " "mapowania typu B po cichu go zignorują. Znacznik ten jest " "obsługiwany jedynie dla plików obsługujących DAX (bezpośrednie mapowanie do " "pamięci trwałej). W przypadku innych plików, utworzenie mapowania z tym " "znacznikiem spowoduje wystąpienie błędu B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Shared file mappings with this flag provide the guarantee that while some " "memory is mapped writable in the address space of the process, it will be " "visible in the same file at the same offset even after the system crashes or " "is rebooted. In conjunction with the use of appropriate CPU instructions, " "this provides users of such mappings with a more efficient way of making " "data modifications persistent." msgstr "" "Dzielone mapowania pliku z tym znacznikiem zapewniają gwarancję, że choć " "pewna część pamięci będzie zmapowana jako zapisywalna w przestrzeni " "adresowej procesu, będzie ona widoczna w tym samym pliku, na tym samym " "przesunięciu, nawet po załamaniu lub przeładowaniu systemu. W połączeniu z " "odpowiednimi instrukcjami procesora, użytkownicy takich mapowań mają " "zapewnioną lepszy tryb czynienia modyfikacji danych trwałymi." #. 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 2.6.33)" msgstr "B (od Linuksa 2.6.33)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Don't clear anonymous pages. This flag is intended to improve performance " "on embedded devices. This flag is honored only if the kernel was configured " "with the B option. Because of the security " "implications, that option is normally enabled only on embedded devices (i." "e., devices where one has complete control of the contents of user memory)." msgstr "" "Nie czyści stron anonimowych. Znacznik ten ma polepszyć wydajność na " "urządzeniach wbudowanych. Znacznik jest przestrzegany tylko, gdy jądro " "skonfigurowano z opcją B. Ze względu na " "skutki w zakresie bezpieczeństwa, opcja ta jest zwykle włączana wyłącznie na " "urządzeniach wbudowanych (tj. mających całkowitą kontrolę nad zawartością " "pamięci użytkownika)." #. FIXME . for later review when Issue 8 is one day released... #. POSIX may add MAP_ANON in the future #. http://austingroupbugs.net/tag_view_page.php?tag_id=8 #. http://austingroupbugs.net/view.php?id=850 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Of the above flags, only B is specified in POSIX.1-2001 and " "POSIX.1-2008. However, most systems also support B (or its " "synonym B)." msgstr "" "Z powyższych znaczników, jedynie B jest określony przez " "POSIX.1-2001 i POSIX.1-2008. Większość systemów obsługuje jednak także " "B (lub jego synonim B)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "munmap()" msgstr "munmap()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call deletes the mappings for the specified address " "range, and causes further references to addresses within the range to " "generate invalid memory references. The region is also automatically " "unmapped when the process is terminated. On the other hand, closing the " "file descriptor does not unmap the region." msgstr "" "Wywołanie systemowe B() usuwa mapowanie z podanego zakresu adresów i " "powoduje, że dalsze odwołania do adresów z tego zakresu będą generować " "nieprawidłowe odwołania do pamięci. Mapowanie obszaru jest również " "automatycznie usuwane, gdy proces się zakończy. Z drugiej strony, zamknięcie " "deskryptora pliku nie usuwa mapowania obszaru." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The address I must be a multiple of the page size (but I need " "not be). All pages containing a part of the indicated range are unmapped, " "and subsequent references to these pages will generate B. It is " "not an error if the indicated range does not contain any mapped pages." msgstr "" "Adres I musi być wielokrotnością rozmiaru strony (ale I już " "nie musi). Usuwane jest mapowanie wszystkich stron zawierających fragmenty " "ze wskazanego zakresu, wszystkie późniejsze odwołania do tych stron " "wygenerują B. Nie jest błędem, gdy brak w podanym zakresie " "zamapowanych stron." #. 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 "WARTOŚĆ ZWRACANA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, B() returns a pointer to the mapped area. On error, the " "value B (that is, I<(void\\ *)\\ -1>) is returned, and I " "is set to indicate the error." msgstr "" "Po pomyślnym zakończeniu B() zwraca wskaźnik do mapowanego obszaru. Po " "błędzie zwracane jest B (tj. I<(void\\ *)\\ -1>) i ustawiane " "I, wskazując błąd." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, B() returns 0. On failure, it returns -1, and I " "is set to indicate the error (probably to B)." msgstr "" "Po pomyślnym zakończeniu B() zwraca 0. Po błędzie zwracane jest -1 i " "ustawiane I, wskazując błąd (prawdopodobnie 1B)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ERRORS" msgstr "BŁĘDY" #. 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 "" "A file descriptor refers to a non-regular file. Or a file mapping was " "requested, but I is not open for reading. Or B was " "requested and B is set, but I is not open in read/write " "(B) mode. Or B is set, but the file is append-only." msgstr "" "Deskryptor pliku odnosi się do pliku innego niż zwykły plik. Lub zażądano " "mapowania pliku, lecz I nie jest otwarty do odczytu. Lub zażądano " "B i ustawiono B, lecz I nie jest otwarte w " "trybie do odczytu i do zapisu (B). Lub ustawiono B, lecz " "plik jest otwarty tylko do dopisywania." #. 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 file has been locked, or too much memory has been locked (see " "B(2))." msgstr "" "Plik został zablokowany lub zablokowano zbyt wiele pamięci (zob. " "B(2))." #. 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 "" "I is not a valid file descriptor (and B was not set)." msgstr "" "I nie jest prawidłowym deskryptorem pliku (a nie ustawiono " "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 was specified in I, and the range covered by " "I and I clashes with an existing mapping." msgstr "" "We I podano B, a zakres który opisuje I i " "I koliduje z istniejącym mapowaniem." #. 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 "" "We don't like I, I, or I (e.g., they are too large, or " "not aligned on a page boundary)." msgstr "" "Niewłaściwe I, I lub I (np. mogą być zbyt duże lub " "niewyrównane do granicy strony)." #. 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.12) I was 0." msgstr "(od Linuksa 2.6.12) I wynosiła 0." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I contained none of B, B, or " "B." msgstr "" "We I nie wystąpiło żadne z: B, B lub " "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" #. This is for shared anonymous segments #. [2.6.7] shmem_zero_setup()-->shmem_file_setup()-->get_empty_filp() #. .TP #. .B ENOEXEC #. A file could not be mapped for reading. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The system-wide limit on the total number of open files has been reached." msgstr "" "Zostało osiągnięte systemowe ograniczenie na całkowitą liczbę otwartych " "plików." #. 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 underlying filesystem of the specified file does not support memory " "mapping." msgstr "" "System plików, na którym znajduje się podany plik, nie obsługuje mapowania w " "pamięci." #. 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 "No memory is available." msgstr "Brak dostępnej pamięci." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The process's maximum number of mappings would have been exceeded. This " "error can also occur for B(), when unmapping a region in the middle " "of an existing mapping, since this results in two smaller mappings on either " "side of the region being unmapped." msgstr "" "Doszłoby do przekroczenia maksymalnej liczby mapowań procesu. Błąd ten może " "wystąpić również dla B(), przy usuwaniu mapowania z obszaru w środku " "istniejącego mapowania, ponieważ spowodowałoby to powstanie dwóch mniejszych " "mapowań po obu stronach niezmapowanego obszaru." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(since Linux 4.7) The process's B limit, described in " "B(2), would have been exceeded." msgstr "" "(od Linuksa 4.7) Doszłoby do przekroczenia limitu B procesu, " "opisanego w podręczniku B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "We don't like I, because it exceeds the virtual address space of the " "CPU." msgstr "I przekroczyłoby wirtualną przestrzeń adresową procesora." #. 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 "" "On 32-bit architecture together with the large file extension (i.e., using " "64-bit I): the number of pages used for I plus number of " "pages used for I would overflow I (32 bits)." msgstr "" "Na architekturze 32-bitowej z rozszerzeniem dużych plików (tj. korzystając z " "64-bitowego I): liczba stron użytych dla I wraz z liczbą " "stron użytych dla I przepełniłaby liczbę typu I (32-" "bitową)." #. 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" #. (Since Linux 2.4.25 / Linux 2.6.0.) #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument asks for B but the mapped area belongs to a " "file on a filesystem that was mounted no-exec." msgstr "" "Argument I pyta o B lecz mapowany obszar należy do pliku " "zamontowanego na systemie plików z opcją no-exec (bez zezwolenia na " "wykonywanie)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The operation was prevented by a file seal; see B(2)." msgstr "" "Operacja zablokowana, z powodu zapieczętowania pliku (ang. file seal); zob. " "B(2)." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "The B flag was specified, but the caller was not privileged " "(did not have the B capability) and is not a member of the " "I group; see the description of I in B(5)." msgstr "" "Podano znacznik B, lecz wywołujący nie był uprzywilejowany (nie " "miał przywileju B (ang. capability)) i nie jest członkiem " "grupy I; zob. opis I w B(5)." #. 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 was set but the object specified by I is open for " "writing." msgstr "" "Ustawiono B, lecz obiekt wskazywany przez I jest otwarty " "do zapisu." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Use of a mapped region can result in these signals:" msgstr "" "Użycie zamapowanego obszaru może spowodować wystąpienie następujących " "sygnałów:" #. 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 "Attempted write into a region mapped as read-only." msgstr "Próba zapisu do obszaru zmapowanego tylko do odczytu." #. 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 "" "Attempted access to a page of the buffer that lies beyond the end of the " "mapped file. For an explanation of the treatment of the bytes in the page " "that corresponds to the end of a mapped file that is not a multiple of the " "page size, see NOTES." msgstr "" "Próba dostępu do strony bufora, która leży poza końcem mapowanego pliku. " "Wyjaśnienie traktowania bajtów w stronie, która odnosi się do końca " "mapowanego pliku i nie jest wielokrotnością rozmiaru strony zamieszczono w " "UWAGACH." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ATTRIBUTES" msgstr "ATRYBUTY" #. 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 "" "Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku " "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 "Interfejs" #. 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 "Atrybut" #. 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 "Wartość" #. 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 #, no-wrap msgid "" "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 "Bezpieczeństwo wątkowe" #. 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-bezpieczne" #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "VERSIONS" msgstr "WERSJE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On some hardware architectures (e.g., i386), B implies " "B. It is architecture dependent whether B implies " "B or not. Portable programs should always set B if " "they intend to execute code in the new mapping." msgstr "" "Na niektórych architekturach sprzętowych (np. i386), B wymusza " "B. Od architektury zależy, czy B wymusza B, " "czy nie. Programy przenośne powinny zawsze ustawiać B, jeśli mają " "zamiar wykonywać kod w nowym mapowaniu." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The portable way to create a mapping is to specify I as 0 (NULL), and " "omit B from I. In this case, the system chooses the " "address for the mapping; the address is chosen so as not to conflict with " "any existing mapping, and will not be 0. If the B flag is " "specified, and I is 0 (NULL), then the mapped address will be 0 (NULL)." msgstr "" "Przenośnym sposobem tworzenia mapowań jest podanie I jako 0 (NULL) i " "pominięcie B z I. W takim przypadku to system wybierze " "adres mapowania; wybrany adres uniknie konfliktu z istniejącymi mapowaniami " "i nie będzie wynosił 0. Jeśli podano znacznik B , a I " "wynosi 0 (NULL), to mapowany adres będzie wynosił 0 (NULL)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Certain I constants are defined only if suitable feature test macros " "are defined (possibly by default): B<_DEFAULT_SOURCE> with glibc 2.19 or " "later; or B<_BSD_SOURCE> or B<_SVID_SOURCE> in glibc 2.19 and earlier. " "(Employing B<_GNU_SOURCE> also suffices, and requiring that macro " "specifically would have been more logical, since these flags are all Linux-" "specific.) The relevant flags are: B, B (and the " "synonym B), B, B, B, " "B, B, B, B, " "B, B, and B." msgstr "" "Pewne stałe I są zdefiniowane tylko wtedy, gdy zdefiniowano określone " "makro sprawdzania cech (być może stało się to domyślnie): B<_DEFAULT_SOURCE> " "z glibc 2.19 lub późniejszymi; B<_BSD_SOURCE> lub B<_SVID_SOURCE> w glibc " "2.19 i wcześniejszych (podanie B<_GNU_SOURCE> jest również wystarczające i " "wymaganie właśnie tego makra byłoby logiczniejsze, skoro wszystkie te " "znaczniki są typowo linuksowe). Chodzi tu o znaczniki: B, " "B (i synonim B), B, " "B, B, B, B, " "B, B, B, B oraz " "B." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "C library/kernel differences" msgstr "Różnice biblioteki C/jądra" #. Since around glibc 2.1/2.2, depending on the platform. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This page describes the interface provided by the glibc B() wrapper " "function. Originally, this function invoked a system call of the same " "name. Since Linux 2.4, that system call has been superseded by B(2), " "and nowadays the glibc B() wrapper function invokes B(2) with " "a suitably adjusted value for I." msgstr "" "Niniejszy podręcznik opisuje interfejs zapewniany przez funkcję opakowującą " "B() z glibc. Pierwotnie, funkcja ta przywoływała wywołanie systemowe o " "tej samej nazwie. Od Linuksa 2.4, to wywołanie zostało zastąpione wywołaniem " "B(2), dlatego obecnie funkcja opakowująca B() z glibc " "przywołuje B(2) z odpowiednio dostosowanymi wartościami I." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "STANDARDY" #. 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: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "HISTORIA" #. SVr4 documents additional error codes ENXIO and ENODEV. #. SUSv2 documents additional error codes EMFILE and EOVERFLOW. #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2001, SVr4, 4.4BSD." msgstr "POSIX.1-2001, SVr4, 4.4BSD." #. 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(), B(2), and B() are " "available, B<_POSIX_MAPPED_FILES> is defined in Iunistd.hE> to a " "value greater than 0. (See also B(3).)" msgstr "" "W systemach POSIX, na których dostępne są B(), B(2) i " "B(), B<_POSIX_MAPPED_FILES> jest zdefiniowane w Iunistd." "hE> na wartość większą niż 0 (zob. też B(3))." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NOTES" msgstr "UWAGI" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Memory mapped by B() is preserved across B(2), with the same " "attributes." msgstr "" "Pamięć mapowana za pomocą B() jest zachowywana poprzez B(2) z " "tymi samymi atrybutami." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A file is mapped in multiples of the page size. For a file that is not a " "multiple of the page size, the remaining bytes in the partial page at the " "end of the mapping are zeroed when mapped, and modifications to that region " "are not written out to the file. The effect of changing the size of the " "underlying file of a mapping on the pages that correspond to added or " "removed regions of the file is unspecified." msgstr "" "Plik jest mapowany w wielokrotnościach rozmiaru strony. Dla plików, które " "nie są wielokrotnościami rozmiaru strony, pozostałe bajty w częściowej " "stronie na końcu mapowania są zerowane podczas mapowania, a modyfikacje tego " "obszaru nie są zapisywane w pliku. Efekt zmiany rozmiaru zamapowanego pliku " "na zamapowane strony, które odpowiadają dodanym lub usuniętym obszarom " "pliku, jest nieokreślony." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "An application can determine which pages of a mapping are currently resident " "in the buffer/page cache using B(2)." msgstr "" "Aplikacje mogą sprawdzić, które strony mapowania są aktualnie rezydentne w " "buforze/buforze strony za pomocą B(2)." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Using MAP_FIXED safely" msgstr "Bezpieczne korzystanie z MAP_FIXED" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The only safe use for B is where the address range specified by " "I and I was previously reserved using another mapping; " "otherwise, the use of B is hazardous because it forcibly removes " "preexisting mappings, making it easy for a multithreaded process to corrupt " "its own address space." msgstr "" "Jedyne bezpieczne zastosowanie B jest wtedy, gdy podany za pomocą " "I i I zakres adresów był uprzednio zarezerwowany przy użyciu " "innego mapowania; w przeciwnym przypadku B jest niebezpieczne, " "ponieważ przymusowo usuwa wcześniejsze mapowania, przez co w przypadku " "procesów wielowątkowych, łatwe staje się uszkodzenie swojej przestrzeni " "adresowej." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For example, suppose that thread A looks through IpidI in " "order to locate an unused address range that it can map using B, " "while thread B simultaneously acquires part or all of that same address " "range. When thread A subsequently employs B, it will " "effectively clobber the mapping that thread B created. In this scenario, " "thread B need not create a mapping directly; simply making a library call " "that, internally, uses B(3) to load some other shared library, will " "suffice. The B(3) call will map the library into the process's " "address space. Furthermore, almost any library call may be implemented in a " "way that adds memory mappings to the address space, either with this " "technique, or by simply allocating memory. Examples include B(2), " "B(3), B(3), and the PAM libraries E<.UR http://www." "linux-pam.org> E<.UE .>" msgstr "" "Przykładowo załóżmy, że wątek A przegląda IpidI, aby odszukać " "nieużywany zakres adresów, które można zmapować przy użyciu B, a " "wątek B w tym samym czasie uzyska część lub całość tego samego zakresu " "adresów. Gdy wątek A następnie użyje B, efektywnie naruszy " "mapowanie, które utworzył wątek B. W opisywanym scenariuszu, wątek B nie " "musi bezpośrednio tworzyć mapowania; wystarczy utworzenie wywołania " "bibliotecznego, które wewnętrznie korzysta z B(3) do załadowania " "jakiejś innej biblioteki współdzielonej. Wywołanie B(3) zmapuje " "bibliotekę do przestrzeni adresowej procesu. Co więcej, niemal każde " "wywołanie biblioteczne może być zaimplementowane w sposób, który dodaje " "mapowania pamięci do przestrzeni adresowej, albo za pomocą tej techniki, " "albo jedynie alokując pamięć. Przykładem mogą być B(2), B(3), " "B(3) i biblioteki PAM E<.UR http://www.linux-pam.org> E<.UE ." ">" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 4.17, a multithreaded program can use the B " "flag to avoid the hazard described above when attempting to create a mapping " "at a fixed address that has not been reserved by a preexisting mapping." msgstr "" "Od Linuksa 4.17, program wielowątkowy może skorzystać ze znacznika " "B, aby uniknąć niebezpieczeństwa opisanego wyżej, przy " "tworzeniu mapowania pod konkretnym adresem, który nie został zarezerwowany " "wcześniejszym mapowaniem." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Timestamps changes for file-backed mappings" msgstr "Zmiany znaczników czasu w przypadku mapowań opartych na plikach" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For file-backed mappings, the I field for the mapped file may be " "updated at any time between the B() and the corresponding unmapping; " "the first reference to a mapped page will update the field if it has not " "been already." msgstr "" "Dla mapowań opartych na plikach pole I zamapowanego pliku może " "zostać zaktualizowane w dowolnym momencie pomiędzy B() i usunięciem " "odpowiedniego mapowania; pierwsze odwołanie do zamapowanej strony spowoduje " "zaktualizowanie tego pola, jeśli nie stało się to wcześniej." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I and I field for a file mapped with B " "and B will be updated after a write to the mapped region, and " "before a subsequent B(2) with the B or B flag, if " "one occurs." msgstr "" "Pola I i I pliku zamapowanego z B i " "B zostanie zaktualizowane po zapisie do mapowanego obszaru, a " "przed późniejszym wywołaniem I(2) ze znacznikiem B lub " "B, jeśli taki wywołanie wystąpi." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Huge page (Huge TLB) mappings" msgstr "Mapowania dużych stron (Huge TLB)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For mappings that employ huge pages, the requirements for the arguments of " "B() and B() differ somewhat from the requirements for " "mappings that use the native system page size." msgstr "" "W przypadku mapowań korzystających z dużych (huge) stron, wymagania " "dotyczące argumentów B() i B() różnią się nieco, od wymagań " "mapowań, korzystających z natywnego systemowego rozmiaru strony." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For B(), I must be a multiple of the underlying huge page " "size. The system automatically aligns I to be a multiple of the " "underlying huge page size." msgstr "" "W przypadku B(), I musi być wielokrotnością używanego rozmiaru " "dużej strony. System automatycznie wyrówna I do wielokrotności " "używanego rozmiaru dużej strony." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For B(), I, and I must both be a multiple of the " "underlying huge page size." msgstr "" "W przypadku B(), I i I muszą być wielokrotnościami " "używanego systemowego rozmiaru dużej strony." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "USTERKI" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On Linux, there are no guarantees like those suggested above under " "B. By default, any process can be killed at any moment when " "the system runs out of memory." msgstr "" "W Linuksie, gwarancje zasugerowane powyżej w opisie B nie " "istnieją. Domyślnie, każdy proces może być zabity w dowolnym momencie, gdy " "systemowi wyczerpie się pamięć." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Before Linux 2.6.7, the B flag has effect only if I is " "specified as B." msgstr "" "Przed Linuksem 2.6.7, znacznik B działał tylko, gdy I " "określono jako B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "SUSv3 specifies that B() should fail if I is 0. However, " "before Linux 2.6.12, B() succeeded in this case: no mapping was " "created and the call returned I. Since Linux 2.6.12, B() fails " "with the error B for this case." msgstr "" "SUSv3 określa, że B() powinno zawieść, gdy I wynosi 0. Jednak " "przed Linuksem 2.6.12, B() było w takim przypadku pomyślne: nie " "tworzono mapowania, a wywołanie zwracało I. Od Linuksa 2.6.12, " "B() zawodzi w takim przypadku z błędem B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "POSIX specifies that the system shall always zero fill any partial page at " "the end of the object and that system will never write any modification of " "the object beyond its end. On Linux, when you write data to such partial " "page after the end of the object, the data stays in the page cache even " "after the file is closed and unmapped and even though the data is never " "written to the file itself, subsequent mappings may see the modified " "content. In some cases, this could be fixed by calling B(2) before " "the unmap takes place; however, this doesn't work on B(5) (for " "example, when using the POSIX shared memory interface documented in " "B(7))." msgstr "" "POSIX określa, ze system powinien zawsze wypełniać zerami wszelkie strony " "częściowe na końcu obiektu, a system nigdy nie zapisze żadnych modyfikacji " "obiektu poza jego końcem. W Linuksie, jeśli zapisze się dane do takiej " "częściowej strony, poza końcem obiektu, dane pozostają w buforze strony " "nawet po zamknięciu i odmapowaniu pliku, a choć dane nigdy nie są zapisywane " "do samego pliku, kolejne mapowania mogą zobaczyć zmodyfikowaną zawartość. W " "niektórych przypadkach, to zachowanie można poprawić wywołując B(2) " "przed dokonaniem odmapowania; jednak nie działa to na B(5) (np. przy " "użyciu interfejsu pamięci dzielonej POSIX opisanego w podręczniku " "B(7))." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "PRZYKŁADY" #. FIXME . Add an example here that uses an anonymous shared region for #. IPC between parent and child. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following program prints part of the file specified in its first command-" "line argument to standard output. The range of bytes to be printed is " "specified via offset and length values in the second and third command-line " "arguments. The program creates a memory mapping of the required pages of " "the file and then uses B(2) to output the desired bytes." msgstr "" "Poniższy program wypisuje część pliku, określonego w jego pierwszym " "argumencie wiersza poleceń, na standardowe wyjście. Zakres wypisywanych " "bajtów podaje się za pomocą wartości przesunięcia i długości, w drugim i " "trzecim argumencie wiersza poleceń. Program tworzy mapowania pamięci " "wymaganych stron pliku, a następnie używa B(2) do wypisania żądanych " "bajtów." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Program source" msgstr "Kod źródłowy programu" #. type: Plain text #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Esys/stat.hE\n" "#include Esys/types.hE\n" "#include Eunistd.hE\n" "\\&\n" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd;\n" " char *addr;\n" " off_t offset, pa_offset;\n" " size_t length;\n" " ssize_t s;\n" " struct stat sb;\n" "\\&\n" " if (argc E 3 || argc E 4) {\n" " fprintf(stderr, \"%s file offset [length]\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " fd = open(argv[1], O_RDONLY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" "\\&\n" " if (fstat(fd, &sb) == -1) /* To obtain file size */\n" " handle_error(\"fstat\");\n" "\\&\n" " offset = atoi(argv[2]);\n" " pa_offset = offset & \\[ti](sysconf(_SC_PAGE_SIZE) - 1);\n" " /* offset for mmap() must be page aligned */\n" "\\&\n" " if (offset E= sb.st_size) {\n" " fprintf(stderr, \"offset is past end of file\\en\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (argc == 4) {\n" " length = atoi(argv[3]);\n" " if (offset + length E sb.st_size)\n" " length = sb.st_size - offset;\n" " /* Can\\[aq]t display bytes past end of file */\n" "\\&\n" " } else { /* No length arg ==E display to end of file */\n" " length = sb.st_size - offset;\n" " }\n" "\\&\n" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" " MAP_PRIVATE, fd, pa_offset);\n" " if (addr == MAP_FAILED)\n" " handle_error(\"mmap\");\n" "\\&\n" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" " if (s != length) {\n" " if (s == -1)\n" " handle_error(\"write\");\n" "\\&\n" " fprintf(stderr, \"partial write\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " munmap(addr, length + offset - pa_offset);\n" " close(fd);\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Esys/stat.hE\n" "#include Esys/types.hE\n" "#include Eunistd.hE\n" "\\&\n" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd;\n" " char *addr;\n" " off_t offset, pa_offset;\n" " size_t length;\n" " ssize_t s;\n" " struct stat sb;\n" "\\&\n" " if (argc E 3 || argc E 4) {\n" " fprintf(stderr, \"przesunięcie pliku %s [długość]\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " fd = open(argv[1], O_RDONLY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" "\\&\n" " if (fstat(fd, &sb) == -1) /* Do pobrania rozmiaru pliku */\n" " handle_error(\"fstat\");\n" "\\&\n" " offset = atoi(argv[2]);\n" " pa_offset = offset & \\[ti](sysconf(_SC_PAGE_SIZE) - 1);\n" " /* przesunięcie dla mmap() musi być wyrównane do strony */\n" "\\&\n" " if (offset E= sb.st_size) {\n" " fprintf(stderr, \"przesunięcie za końcem pliku\\en\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (argc == 4) {\n" " length = atoi(argv[3]);\n" " if (offset + length E sb.st_size)\n" " length = sb.st_size - offset;\n" " /* Nie można wypisać bajtów poza końcem pliku */\n" "\\&\n" " } else { /* Brak arg. długości ==E wyświetl do końca pliku */\n" " length = sb.st_size - offset;\n" " }\n" "\\&\n" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" " MAP_PRIVATE, fd, pa_offset);\n" " if (addr == MAP_FAILED)\n" " handle_error(\"mmap\");\n" "\\&\n" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" " if (s != length) {\n" " if (s == -1)\n" " handle_error(\"write\");\n" "\\&\n" " fprintf(stderr, \"częściowy zapis\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " munmap(addr, length + offset - pa_offset);\n" " close(fd);\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" #. SRC END #. 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 "ZOBACZ TAKŻE" #. 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(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), " "B(3), B(7)" msgstr "" "B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(2), " "B(3), B(7)" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The descriptions of the following files in B(5): IpidI, " "IpidI, and IpidI." msgstr "" "Opis poniższych plików w B(5): IpidI, IpidI i IpidI." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B.O. Gallmeister, POSIX.4, O'Reilly, pp. 128\\[en]129 and 389\\[en]391." msgstr "B.O. Gallmeister, POSIX.4, O'Reilly, str. 128\\[en]129 i 389\\[en]391." #. type: TH #: debian-bookworm #, no-wrap msgid "2023-02-05" msgstr "5 lutego 2023 r." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B (since Linux 3.8)" msgstr "B, B (od Linuksa 3.8)" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 msgid "" "The B flag was specified, but the caller was not privileged " "(did not have the B capability) and is not a member of the " "I group; see the description of I in" msgstr "" "Podano znacznik B, ale proces wywołujący nie był " "uprzywilejowany (nie miał przywileju B) oraz nie jest " "członkiem grupy I; zob. opis I w podręczniku B(5)" #. SVr4 documents additional error codes ENXIO and ENODEV. #. SUSv2 documents additional error codes EMFILE and EOVERFLOW. #. type: Plain text #: debian-bookworm msgid "POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD." msgstr "POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD." #. type: Plain text #: debian-bookworm msgid "" "For example, suppose that thread A looks through IpidE/maps> " "in order to locate an unused address range that it can map using " "B, while thread B simultaneously acquires part or all of that " "same address range. When thread A subsequently employs B, " "it will effectively clobber the mapping that thread B created. In this " "scenario, thread B need not create a mapping directly; simply making a " "library call that, internally, uses B(3) to load some other shared " "library, will suffice. The B(3) call will map the library into the " "process's address space. Furthermore, almost any library call may be " "implemented in a way that adds memory mappings to the address space, either " "with this technique, or by simply allocating memory. Examples include " "B(2), B(3), B(3), and the PAM libraries E<.UR " "http://www.linux-pam.org> E<.UE .>" msgstr "" "Przykładowo załóżmy, że wątek A przegląda IpidE/maps>, aby " "odszukać nieużywany zakres adresów, które można zmapować przy użyciu " "B, a wątek B w tym samym czasie uzyska część lub całość tego " "samego zakresu adresów. Gdy wątek A następnie użyje B, " "efektywnie naruszy mapowanie, które utworzył wątek B. W opisywanym " "scenariuszu, wątek B nie musi bezpośrednio tworzyć mapowania; wystarczy " "utworzenie wywołania bibliotecznego, które wewnętrznie korzysta z " "B(3) do załadowania jakiejś innej biblioteki współdzielonej. " "Wywołanie B(3) zmapuje bibliotekę do przestrzeni adresowej procesu. " "Co więcej, niemal każde wywołanie biblioteczne może być zaimplementowane w " "sposób, który dodaje mapowania pamięci do przestrzeni adresowej, albo za " "pomocą tej techniki, albo jedynie alokując pamięć. Przykładem mogą być " "B(2), B(3), B(3) i biblioteki PAM E<.UR http://" "www.linux-pam.org> E<.UE .>" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Esys/stat.hE\n" "#include Eunistd.hE\n" msgstr "" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Esys/stat.hE\n" "#include Eunistd.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" msgstr "" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd;\n" " char *addr;\n" " off_t offset, pa_offset;\n" " size_t length;\n" " ssize_t s;\n" " struct stat sb;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd;\n" " char *addr;\n" " off_t offset, pa_offset;\n" " size_t length;\n" " ssize_t s;\n" " struct stat sb;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (argc E 3 || argc E 4) {\n" " fprintf(stderr, \"%s file offset [length]\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " if (argc E 3 || argc E 4) {\n" " fprintf(stderr, \"przesunięcie pliku %s [długość]\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " fd = open(argv[1], O_RDONLY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" msgstr "" " fd = open(argv[1], O_RDONLY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (fstat(fd, &sb) == -1) /* To obtain file size */\n" " handle_error(\"fstat\");\n" msgstr "" " if (fstat(fd, &sb) == -1) /* Do pobrania rozmiaru pliku */\n" " handle_error(\"fstat\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " offset = atoi(argv[2]);\n" " pa_offset = offset & \\[ti](sysconf(_SC_PAGE_SIZE) - 1);\n" " /* offset for mmap() must be page aligned */\n" msgstr "" " offset = atoi(argv[2]);\n" " pa_offset = offset & \\[ti](sysconf(_SC_PAGE_SIZE) - 1);\n" " /* przesunięcie dla mmap() musi być wyrównane do strony */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (offset E= sb.st_size) {\n" " fprintf(stderr, \"offset is past end of file\\en\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " if (offset E= sb.st_size) {\n" " fprintf(stderr, \"przesunięcie za końcem pliku\\en\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (argc == 4) {\n" " length = atoi(argv[3]);\n" " if (offset + length E sb.st_size)\n" " length = sb.st_size - offset;\n" " /* Can\\[aq]t display bytes past end of file */\n" msgstr "" " if (argc == 4) {\n" " length = atoi(argv[3]);\n" " if (offset + length E sb.st_size)\n" " length = sb.st_size - offset;\n" " /* Nie można wypisać bajtów poza końcem pliku */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " } else { /* No length arg ==E display to end of file */\n" " length = sb.st_size - offset;\n" " }\n" msgstr "" " } else { /* Brak arg. długości ==E wyświetl do końca pliku */\n" " length = sb.st_size - offset;\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" " MAP_PRIVATE, fd, pa_offset);\n" " if (addr == MAP_FAILED)\n" " handle_error(\"mmap\");\n" msgstr "" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" " MAP_PRIVATE, fd, pa_offset);\n" " if (addr == MAP_FAILED)\n" " handle_error(\"mmap\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" " if (s != length) {\n" " if (s == -1)\n" " handle_error(\"write\");\n" msgstr "" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" " if (s != length) {\n" " if (s == -1)\n" " handle_error(\"write\");\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " fprintf(stderr, \"partial write\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " fprintf(stderr, \"częściowy zapis\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " munmap(addr, length + offset - pa_offset);\n" " close(fd);\n" msgstr "" " munmap(addr, length + offset - pa_offset);\n" " close(fd);\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: debian-bookworm msgid "" "The descriptions of the following files in B(5): I, " "I, and I." msgstr "" "Opis poniższych plików w B(5): I, I i I." #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 października 2023 r." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: Plain text #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Esys/stat.hE\n" "#include Eunistd.hE\n" "\\&\n" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd;\n" " char *addr;\n" " off_t offset, pa_offset;\n" " size_t length;\n" " ssize_t s;\n" " struct stat sb;\n" "\\&\n" " if (argc E 3 || argc E 4) {\n" " fprintf(stderr, \"%s file offset [length]\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " fd = open(argv[1], O_RDONLY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" "\\&\n" " if (fstat(fd, &sb) == -1) /* To obtain file size */\n" " handle_error(\"fstat\");\n" "\\&\n" " offset = atoi(argv[2]);\n" " pa_offset = offset & \\[ti](sysconf(_SC_PAGE_SIZE) - 1);\n" " /* offset for mmap() must be page aligned */\n" "\\&\n" " if (offset E= sb.st_size) {\n" " fprintf(stderr, \"offset is past end of file\\en\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (argc == 4) {\n" " length = atoi(argv[3]);\n" " if (offset + length E sb.st_size)\n" " length = sb.st_size - offset;\n" " /* Can\\[aq]t display bytes past end of file */\n" "\\&\n" " } else { /* No length arg ==E display to end of file */\n" " length = sb.st_size - offset;\n" " }\n" "\\&\n" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" " MAP_PRIVATE, fd, pa_offset);\n" " if (addr == MAP_FAILED)\n" " handle_error(\"mmap\");\n" "\\&\n" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" " if (s != length) {\n" " if (s == -1)\n" " handle_error(\"write\");\n" "\\&\n" " fprintf(stderr, \"partial write\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " munmap(addr, length + offset - pa_offset);\n" " close(fd);\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/mman.hE\n" "#include Esys/stat.hE\n" "#include Eunistd.hE\n" "\\&\n" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" "\\&\n" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd;\n" " char *addr;\n" " off_t offset, pa_offset;\n" " size_t length;\n" " ssize_t s;\n" " struct stat sb;\n" "\\&\n" " if (argc E 3 || argc E 4) {\n" " fprintf(stderr, \"przesunięcie pliku %s [długość]\\en\", argv[0]);\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " fd = open(argv[1], O_RDONLY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" "\\&\n" " if (fstat(fd, &sb) == -1) /* Do pobrania rozmiaru pliku */\n" " handle_error(\"fstat\");\n" "\\&\n" " offset = atoi(argv[2]);\n" " pa_offset = offset & \\[ti](sysconf(_SC_PAGE_SIZE) - 1);\n" " /* przesunięcie dla mmap() musi być wyrównane do strony */\n" "\\&\n" " if (offset E= sb.st_size) {\n" " fprintf(stderr, \"przesunięcie za końcem pliku\\en\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " if (argc == 4) {\n" " length = atoi(argv[3]);\n" " if (offset + length E sb.st_size)\n" " length = sb.st_size - offset;\n" " /* Nie można wypisać bajtów poza końcem pliku */\n" "\\&\n" " } else { /* Brak arg. długości ==E wyświetl do końca pliku */\n" " length = sb.st_size - offset;\n" " }\n" "\\&\n" " addr = mmap(NULL, length + offset - pa_offset, PROT_READ,\n" " MAP_PRIVATE, fd, pa_offset);\n" " if (addr == MAP_FAILED)\n" " handle_error(\"mmap\");\n" "\\&\n" " s = write(STDOUT_FILENO, addr + offset - pa_offset, length);\n" " if (s != length) {\n" " if (s == -1)\n" " handle_error(\"write\");\n" "\\&\n" " fprintf(stderr, \"częściowy zapis\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " munmap(addr, length + offset - pa_offset);\n" " close(fd);\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" #. 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 kwietnia 2023 r." #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux man-pages 6.04" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages (niewydane)"