[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFR] man://manpages-l10n/mmap.2.po [2/5]



Hallo Helge,

#.  See http://lwn.net/Articles/294642 "Tangled up in threads", 19 Aug 08
#. type: Plain text
#: archlinux debian-buster debian-unstable fedora-rawhide mageia-cauldron
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<MAP_32BIT> flag is ignored when B<MAP_FIXED> is set."
msgstr ""
"Legt die Mapping in die ersten zwei Gigabyte des Prozessadressraums. Dieser "
"Schalter wird nur auf X86-64 für 64-Bit-Programme unterstützt. Er wurde "
"hinzugefügt, damit Thread-Stacks irgendwo innerhalb der ersten 2\\ GB "
"Speicher zugewiesen werden kann, damit die Leistung des Kontext-Umschaltens "
"auf einigen der ersten 64-Bit-Prozessoren erhöht wird. Moderne X86-64-"
"Prozessoren haben dieses Leistungsproblem nicht mehr, wodurch der Einsatz "
"dieses Schalters auf diesen Systemen nicht mehr benötigt wird. Der Schalter "
"B<MAP_32BIT> wird ignoriert, wenn B<MAP_FIXED> gesetzt ist."

die Mapping → das Mapping
damit Thread-Stacks … zugewiesen werden kann
→
damit Thread-Stacks … zugewiesen werden können


#.  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-buster debian-unstable fedora-rawhide mageia-cauldron
msgid ""
"The mapping is not backed by any file; its contents are initialized to "
"zero.  The I<fd> argument is ignored; however, some implementations require "
"I<fd> to be -1 if B<MAP_ANONYMOUS> (or B<MAP_ANON>)  is specified, and "
"portable applications should ensure this.  The I<offset> argument should be "
"zero.  The use of B<MAP_ANONYMOUS> in conjunction with B<MAP_SHARED> is "
"supported on Linux only since kernel 2.4."
msgstr ""
"Diesem Mapping liegt keine Datei zugrunde; ihr Inhalt wird mit Nullen "
"initialisiert. Das Argument I<fd> wird ignoriert, einige Implementierungen "
"verlangen aber, dass I<fd> -1 ist, falls B<MAP_ANONYMOUS> (oder B<MAP_ANON>) "
"festgelegt ist, und portable Anwendungen sollten dies sicherstellen. Das "
"Argument I<offset> sollte 0 sein. Unter Linux wird die Kombination von "
"B<MAP_ANONYMOUS> mit B<MAP_SHARED> nur ab Kernelversion 2.4 unterstützt."

nur ab Kernelversion → erst ab Kernelversion


#.  commit a4ff8e8620d3f4f50ac4b41e8067b7d395056843
#. type: Plain text
#: archlinux debian-buster debian-unstable fedora-rawhide mageia-cauldron
msgid ""
"This flag provides behavior that is similar to B<MAP_FIXED> with respect to "
"the I<addr> enforcement, but differs in that B<MAP_FIXED_NOREPLACE> never "
"clobbers a preexisting mapped range.  If the requested range would collide "
"with an existing mapping, then this call fails with the error B<EEXIST.> "
"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 ""
"Dieser Schalter stellt ein Verhalten bereit, das B<MAP_FIXED> im Hinblick "
"auf die Erzwingung von I<addr> ähnelt, sich aber unterscheidet, dass "
"B<MAP_FIXED_NOREPLACE> einen bereits bestehenden, gemappten Bereich "
"durcheinanderbringt. Falls der angeforderte Bereich mit einem bestehenden "
"Mapping kollidieren würde, dann schlägt dieser Aufruf mit B<EEXIST> fehl. "
"Dieser Schalter kann daher für atomare (im Hinblick auf andere Threads) "
"Versuche, einen Adressbereich zu mappen, verwandt werden: ein Thread hat "
"Erfolg, alle anderen berichten einen Fehlschlag."

sich aber unterscheidet → sich aber dadurch unterscheidet


#. type: Plain text
#: archlinux debian-buster debian-unstable fedora-rawhide mageia-cauldron
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<SIGSEGV> signal."
msgstr ""
"Dieser Schalter wird für Stacks verwandt. Er zeigt dem Kernelsystem für "
"virtuellen Speicher an, dass sich das Mapping nach unten im Speicher "
"ausdehnen soll. Die zurückgelieferte Adresse ist eine Seite tiefer als der "
"Speicherbereich, der tatsächlich im virtuellen Adressraum des Prozesses "
"erstellt wird. Wird eine Adresse in der »Wächter«-Seite unterhalb des "
"Mappings berührt, dann wächst das Mapping um eine Seite. Dieses Wachstum "
"kann wiederholt werden, bis dass Mapping bis auf eine Seite innerhalb des "
"hohen Endes des nächst-niedriegeren Mappings anwächst - zu diesem Zeitpunkt "
"führt das berühren der »Wächter«-Seite zu einem B<SIGSEGV>-Signal."

bis dass Mapping → bis das Mapping
nächst-niedriegeren → nächst-niedrigeren
das berühren → das Berühren


#. type: Plain text
#: archlinux debian-buster debian-unstable fedora-rawhide mageia-cauldron
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<MAP_HUGE_SHIFT>.  (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<Hugepagesize> field exposed by I</proc/meminfo>.)  Thus, the above two "
"constants are defined as:"
msgstr ""
"Allgemeiner kann die gewünschte große Seitengröße durch Kodierung des "
"Logarithmus zur Basis 2 der gewünschten Seitengröße in den sechs Bits am "
"Versatz B<MAP_HUGE_SHIFT> konfiguriert werden. (Ein Wert 0 in diesem Bitfeld "
"stellt die Vorgabe große Seitengröße bereit; die Vorgabe große Seitengröße "
"kann mittels des durch I</proc/meminfo> offengelegten Feldes I<Hugepagesize> "
"ermittelt werden.) Daher sind die obigen zwei Konstanten wie folgt definiert:"

»große Seitengröße« geht so überhaupt nicht. Auf die Gefahr hin, dass
dir das zu frei ist: die gewünschten großen Seiten
(nachfolgend gibt es noch mehr solche »großen Größen«)

Der Klammereinschub ist grammatisch grauenhaft. Was soll das sein,
»die Vorgabe große Seitengröße«?


Gruß Mario


Reply to: