Moin, und nun Teil 2/5 mit der Bitte um konstruktive Anmerkungen. Vielen Dank & Grüße Helge -- Dr. Helge Kreutzmann debian@helgefjell.de Dipl.-Phys. http://www.helgefjell.de/debian.php 64bit GNU powered gpg signed mail preferred Help keep free software "libre": http://www.ffii.de/
#. type: TP #, no-wrap msgid "I<ucontext>" msgstr "I<ucontext>" #. type: Plain text msgid "" "This is a pointer to a I<ucontext_t> structure, cast to I<void\\ *>. The " "structure pointed to by this field contains signal context information that " "was saved on the user-space stack by the kernel; for details, see " "B<sigreturn>(2). Further information about the I<ucontext_t> structure can " "be found in B<getcontext>(3). Commonly, the handler function doesn't make " "any use of the third argument." msgstr "" "Dies ist ein Zeiger auf eine Struktur I<ucontext_t>, typenumgewandelt auf " "I<void\\ *>. Die Struktur, auf die von diesem Feld gezeigt wird, enthält " "Signalkontextinformation, die vom Benutzerraum-Stack durch den Kernel " "gespeichert wurde; für Details siehe B<sigreturn>(2). Weitere Informationen " "über die Struktur I<ucontext_t> können in B<getcontext>(3) gefunden werden. " "Typischerweise verwendet die Handler-Funktionen das dritte Argument nicht." #. type: Plain text msgid "The I<siginfo_t> data type is a structure with the following fields:" msgstr "Der Datentyp I<siginfo_t> ist eine Struktur mit den folgenden Feldern:" #. FIXME #. The siginfo_t 'si_trapno' field seems to be used #. only on SPARC and Alpha; this page could use #. a little more detail on its purpose there. #. In the kernel: si_tid #. type: Plain text #, no-wrap msgid "" "siginfo_t {\n" " int si_signo; /* Signal number */\n" " int si_errno; /* An errno value */\n" " int si_code; /* Signal code */\n" " int si_trapno; /* Trap number that caused\n" " hardware-generated signal\n" " (unused on most architectures) */\n" " pid_t si_pid; /* Sending process ID */\n" " uid_t si_uid; /* Real user ID of sending process */\n" " int si_status; /* Exit value or signal */\n" " clock_t si_utime; /* User time consumed */\n" " clock_t si_stime; /* System time consumed */\n" " sigval_t si_value; /* Signal value */\n" " int si_int; /* POSIX.1b signal */\n" " void *si_ptr; /* POSIX.1b signal */\n" " int si_overrun; /* Timer overrun count;\n" " POSIX.1b timers */\n" " int si_timerid; /* Timer ID; POSIX.1b timers */\n" " void *si_addr; /* Memory location which caused fault */\n" " long si_band; /* Band event (was I<int> in\n" " glibc 2.3.2 and earlier) */\n" " int si_fd; /* File descriptor */\n" " short si_addr_lsb; /* Least significant bit of address\n" " (since Linux 2.6.32) */\n" " void *si_lower; /* Lower bound when address violation\n" " occurred (since Linux 3.19) */\n" " void *si_upper; /* Upper bound when address violation\n" " occurred (since Linux 3.19) */\n" " int si_pkey; /* Protection key on PTE that caused\n" " fault (since Linux 4.6) */\n" " void *si_call_addr; /* Address of system call instruction\n" " (since Linux 3.5) */\n" " int si_syscall; /* Number of attempted system call\n" " (since Linux 3.5) */\n" " unsigned int si_arch; /* Architecture of attempted system call\n" " (since Linux 3.5) */\n" "}\n" msgstr "" #. type: Plain text msgid "" "I<si_signo>, I<si_errno> and I<si_code> are defined for all signals. " "(I<si_errno> is generally unused on Linux.) The rest of the struct may be a " "union, so that one should read only the fields that are meaningful for the " "given signal:" msgstr "" "I<si_signo>, I<si_errno> und I<si_code> sind für alle Signale definiert. " "(I<si_errno> ist im Allgemeinen unter Linux unbenutzt). Der Rest der " "Struktur kann eine Union sein, daher sollten nur die Felder ausgelesen " "werden, die für das übergebene Signal von Bedeutung sind:" #. type: IP #, no-wrap msgid "*" msgstr "*" #. type: Plain text msgid "" "Signals sent with B<kill>(2) and B<sigqueue>(3) fill in I<si_pid> and " "I<si_uid>. In addition, signals sent with B<sigqueue>(3) fill in I<si_int> " "and I<si_ptr> with the values specified by the sender of the signal; see " "B<sigqueue>(3) for more details." msgstr "" "Signale, die mit B<kill>(2) und B<sigqueue>(3) gesandt werden, füllen " "I<si_pid> und I<si_uid> aus. Zusätzlich füllen Signale, die mit " "B<sigqueue>(3) gesandt werden, I<si_int> und I<si_ptr> mit dem vom Sender " "angegebenen Werte aus. Siehe B<sigqueue>(3) für weitere Details." #. type: Plain text msgid "" "Signals sent by POSIX.1b timers (since Linux 2.6) fill in I<si_overrun> and " "I<si_timerid>. The I<si_timerid> field is an internal ID used by the kernel " "to identify the timer; it is not the same as the timer ID returned by " "B<timer_create>(2). The I<si_overrun> field is the timer overrun count; " "this is the same information as is obtained by a call to " "B<timer_getoverrun>(2). These fields are nonstandard Linux extensions." msgstr "" "Signale, die von POSIX.1b-Zeitgebern gesendet werden (seit Linux 2.6) füllen " "I<si_overrun> und I<si_timerid>. Das Feld I<si_timerid> ist eine interne " "Kennung, die vom Kernel zur Identifikation des Zeitgebers benutzt wurde, sie " "ist nicht mit der durch B<timer_create>(2) zurückgelieferten Kennung " "identisch. Das Feld I<si_overrun> ist der Zeitgeber-Überlaufzähler. Dies ist " "die gleiche Information, wie sie durch einen Aufruf von " "B<timer_getoverrun>(2) erhalten wird. Diese Felder sind nicht " "standardisierte Linux-Erweiterungen." #. type: Plain text msgid "" "Signals sent for message queue notification (see the description of " "B<SIGEV_SIGNAL> in B<mq_notify>(3)) fill in I<si_int>/I<si_ptr>, with the " "I<sigev_value> supplied to B<mq_notify>(3); I<si_pid>, with the process ID " "of the message sender; and I<si_uid>, with the real user ID of the message " "sender." msgstr "" "Signale, die der Nachrichtenbenachrichtigungswarteschlange gesandt werden " "(siehe die Beschreibung von B<SIGEV_SIGNAL> in B<mq_notify>(3)), füllen " "I<si_int>/I<si_ptr>, wobei I<sigev_value> für B<mq_notify>(3) bereitgestellt " "wird, I<si_pid> mit der Prozesskennung des Absenders und I<si_uid> mit der " "echten Benutzerkennung des Nachrichtensenders." #. FIXME . #. When si_utime and si_stime where originally implemented, the #. measurement unit was HZ, which was the same as clock ticks #. (sysconf(_SC_CLK_TCK)). In 2.6, HZ became configurable, and #. was *still* used as the unit to return the info these fields, #. with the result that the field values depended on the #. configured HZ. Of course, the should have been measured in #. USER_HZ instead, so that sysconf(_SC_CLK_TCK) could be used to #. convert to seconds. I have a queued patch to fix this: #. http://thread.gmane.org/gmane.linux.kernel/698061/ . #. This patch made it into 2.6.27. #. But note that these fields still don't return the times of #. waited-for children (as is done by getrusage() and times() #. and wait4()). Solaris 8 does include child times. #. type: Plain text msgid "" "B<SIGCHLD> fills in I<si_pid>, I<si_uid>, I<si_status>, I<si_utime>, and " "I<si_stime>, providing information about the child. The I<si_pid> field is " "the process ID of the child; I<si_uid> is the child's real user ID. The " "I<si_status> field contains the exit status of the child (if I<si_code> is " "B<CLD_EXITED>), or the signal number that caused the process to change " "state. The I<si_utime> and I<si_stime> contain the user and system CPU time " "used by the child process; these fields do not include the times used by " "waited-for children (unlike B<getrusage>(2) and B<times>(2)). In kernels " "up to 2.6, and since 2.6.27, these fields report CPU time in units of " "I<sysconf(_SC_CLK_TCK)>. In 2.6 kernels before 2.6.27, a bug meant that " "these fields reported time in units of the (configurable) system jiffy (see " "B<time>(7))." msgstr "" "B<SIGCHLD> füllt I<si_pid>, I<si_uid>, I<si_status>, I<si_utime> und " "I<si_stime> mit Informationen über das Kind aus. Das Feld I<si_pid> ist die " "Prozess-ID des Kindes; I<si_uid> ist die echte Benutzer-ID. Das Feld " "I<si_status> enthält den Exit-Status des Kindes (falls I<si_code> " "B<CLD_EXITED> ist) oder die Signalnummer, die den Prozess zur " "Zustandsänderung veranlasst hat. I<si_utime> und I<si_stime> enthalten die " "vom Kindprozess verwandte Benutzer- und System-CPU-Zeit, diese Felder " "enthalten nicht die Zeit von Kindern, auf die gewartet wurde (anders als " "B<getrusage>(2) und B<times>(2)). In Kerneln bis 2.6 und seit 2.6.27 " "berichten diese Felder die CPU-Zeit in Einheiten von " "I<sysconf(_SC_CLK_TCK)>. In 2.6er Kerneln vor 2.6.27 wurden durch einen " "Fehler diese Felder in Einheiten der (konfigurierbaren) System-Jiffys " "berichtet (siehe B<time>(7))." #. type: Plain text msgid "" "B<SIGILL>, B<SIGFPE>, B<SIGSEGV>, B<SIGBUS>, and B<SIGTRAP> fill in " "I<si_addr> with the address of the fault. On some architectures, these " "signals also fill in the I<si_trapno> field." msgstr "" #. type: Plain text msgid "" "Some suberrors of B<SIGBUS>, in particular B<BUS_MCEERR_AO> and " "B<BUS_MCEERR_AR>, also fill in I<si_addr_lsb>. This field indicates the " "least significant bit of the reported address and therefore the extent of " "the corruption. For example, if a full page was corrupted, I<si_addr_lsb> " "contains I<log2(sysconf(_SC_PAGESIZE))>. When B<SIGTRAP> is delivered in " "response to a B<ptrace>(2) event (PTRACE_EVENT_foo), I<si_addr> is not " "populated, but I<si_pid> and I<si_uid> are populated with the respective " "process ID and user ID responsible for delivering the trap. In the case of " "B<seccomp>(2), the tracee will be shown as delivering the event. " "B<BUS_MCEERR_*> and I<si_addr_lsb> are Linux-specific extensions." msgstr "" #. type: Plain text msgid "" "The B<SEGV_BNDERR> suberror of B<SIGSEGV> populates I<si_lower> and " "I<si_upper>." msgstr "" "Der Unterfehler B<SEGV_BNDERR> von B<SIGSEGV> belegt I<si_lower> und " "I<si_upper>." #. type: Plain text msgid "The B<SEGV_PKUERR> suberror of B<SIGSEGV> populates I<si_pkey>." msgstr "Der Unterfehler B<SEGV_PKUERR> von B<SIGSEGV> belegt I<si_pkey>." #. type: Plain text msgid "" "B<SIGIO>/B<SIGPOLL> (the two names are synonyms on Linux) fills in " "I<si_band> and I<si_fd>. The I<si_band> event is a bit mask containing the " "same values as are filled in the I<revents> field by B<poll>(2). The " "I<si_fd> field indicates the file descriptor for which the I/O event " "occurred; for further details, see the description of B<F_SETSIG> in " "B<fcntl>(2)." msgstr "" "B<SIGIO>/B<SIGPOLL> (die zwei Namen sind unter Linux synonym) füllen " "I<si_band> und I<si_fd> aus. Das Ereignis I<si_band> ist eine Bitmaske, die " "die gleichen Werte enthält, die auch durch B<poll>(2) in das Feld I<revents> " "eingetragen werden. Das Feld I<si_fd> zeigt den Dateideskriptor an, für den " "ein E/A-Ereignis aufgetreten ist. Für weitere Details lesen Sie die " "Beschreibung von B<F_SETSIG> in B<fcntl>(2)." #. commit a0727e8ce513fe6890416da960181ceb10fbfae6 #. type: Plain text msgid "" "B<SIGSYS>, generated (since Linux 3.5) when a seccomp filter returns " "B<SECCOMP_RET_TRAP>, fills in I<si_call_addr>, I<si_syscall>, I<si_arch>, " "I<si_errno>, and other fields as described in B<seccomp>(2)." msgstr "" "B<SIGSYS>, erstellt (seit Linux 3.5) wenn ein Seccomp-Filter " "B<SECCOMP_RET_TRAP> zurückliefert, füllt I<si_call_addr>, I<si_syscall>, " "I<si_arch>, I<si_errno> und andere Felder wie in B<seccomp>(2) beschrieben " "aus." #. type: SS #, no-wrap msgid "The si_code field" msgstr "Das Feld si_code" #. type: Plain text msgid "" "The I<si_code> field inside the I<siginfo_t> argument that is passed to a " "B<SA_SIGINFO> signal handler is a value (not a bit mask) indicating why " "this signal was sent. For a B<ptrace>(2) event, I<si_code> will contain " "B<SIGTRAP> and have the ptrace event in the high byte:" msgstr "" "Das Feld I<si_code> innerhalb des an den Signal-Handler B<SA_SIGINFO> " "übergebenen Arguments I<siginfo_t> ist ein Wert (keine Bitmaske), der " "angibt, warum dieses Signal gesendet wurde. Für ein B<ptrace>(2)-Ereignis " "wird I<si_code> B<SIGTRAP> enthalten und das Ptrace-Ereignis im hohen Byte " "enthalten." #. type: Plain text #, no-wrap msgid "(SIGTRAP | PTRACE_EVENT_foo E<lt>E<lt> 8).\n" msgstr "(SIGTRAP | PTRACE_EVENT_foo E<lt>E<lt> 8).\n" #. type: Plain text msgid "" "For a non-B<ptrace>(2) event, the values that can appear in I<si_code> are " "described in the remainder of this section. Since glibc 2.20, the " "definitions of most of these symbols are obtained from I<E<lt>signal.hE<gt>> " "by defining feature test macros (before including I<any> header file) as " "follows:" msgstr "" "Für ein Ereignis außerhalb von B<ptrace>(2) sind die Werte, die in " "I<si_code> erscheinen können, im Rest dieses Abschnittes beschrieben. Seit " "Glibc 2.20 werden die Definitionen der meisten dieser Symbole aus " "I<E<lt>signal.hE<gt>> erhalten, indem Feature-Test-Makros (vor dem Einbinden " "I<irgendeiner> Header-Datei) wie folgt definiert werden:" #. type: Plain text msgid "B<_XOPEN_SOURCE> with the value 500 or greater;" msgstr "B<_XOPEN_SOURCE> mit dem Wert 500 oder größer;" #. type: Plain text msgid "B<_XOPEN_SOURCE> and B<_XOPEN_SOURCE_EXTENDED>; or" msgstr "B<_XOPEN_SOURCE> und B<_XOPEN_SOURCE_EXTENDED>; oder" #. type: Plain text msgid "B<_POSIX_C_SOURCE> with the value 200809L or greater." msgstr "B<_POSIX_C_SOURCE> mit einem Wert 200809L oder größer." #. type: Plain text msgid "" "For the B<TRAP_*> constants, the symbol definitions are provided only in the " "first two cases. Before glibc 2.20, no feature test macros were required to " "obtain these symbols." msgstr "" "Für die Konstanten B<TRAP_*> werden die Symboldefinitionen nur in den ersten " "zwei Fällen bereitgestellt. Vor Glibc 2.20 wurde kein Feature-Test-Makro zum " "Erhalt dieser Symbole benötigt." #. type: Plain text msgid "" "For a regular signal, the following list shows the values which can be " "placed in I<si_code> for any signal, along with the reason that the signal " "was generated." msgstr "" "Für ein reguläres Signal zeigt die folgende Liste die Werte, die in " "I<si_code> für jedes Signal gelegt werden können, zusammen mit dem Grund für " "die Erstellung des Signals." #. type: TP #, no-wrap msgid "B<SI_USER>" msgstr "B<SI_USER>" #. type: Plain text msgid "B<kill>(2)." msgstr "B<kill>(2)" #. type: TP #, no-wrap msgid "B<SI_KERNEL>" msgstr "B<SI_KERNEL>" #. type: Plain text msgid "Sent by the kernel." msgstr "Vom Kernel geschickt" #. type: TP #, no-wrap msgid "B<SI_QUEUE>" msgstr "B<SI_QUEUE>" #. type: Plain text msgid "B<sigqueue>(3)." msgstr "B<sigqueue>(3)" #. type: TP #, no-wrap msgid "B<SI_TIMER>" msgstr "B<SI_TIMER>" #. type: Plain text msgid "POSIX timer expired." msgstr "POSIX-Zeitgeber ausgelaufen." #. type: TP #, no-wrap msgid "B<SI_MESGQ> (since Linux 2.6.6)" msgstr "B<SI_MESGQ> (seit Linux 2.6.6)" #. type: Plain text msgid "POSIX message queue state changed; see B<mq_notify>(3)." msgstr "POSIX-Nachrichtenwarteschlangenstatus geändert; siehe B<mq_notify>(3)." #. type: TP #, no-wrap msgid "B<SI_ASYNCIO>" msgstr "B<SI_ASYNCIO>" #. type: Plain text msgid "AIO completed." msgstr "AIO abgeschlossen" #. type: TP #, no-wrap msgid "B<SI_SIGIO>" msgstr "B<SI_SIGIO>" #. type: Plain text msgid "" "Queued B<SIGIO> (only in kernels up to Linux 2.2; from Linux 2.4 onward " "B<SIGIO>/B<SIGPOLL> fills in I<si_code> as described below)." msgstr "" "B<SIGIO> in die Warteschlange eingereiht (nur in Kerneln bis Linux 2.2; seit " "Linux 2.4 füllt wie unten beschrieben B<SIGIO>/B<SIGPOLL> in I<si_code>)." #. type: TP #, no-wrap msgid "B<SI_TKILL> (since Linux 2.4.19)" msgstr "B<SI_TKILL> (seit Linux 2.4.19)" #. SI_DETHREAD is defined in 2.6.9 sources, but isn't implemented #. It appears to have been an idea that was tried during 2.5.6 #. through to 2.5.24 and then was backed out. #. type: Plain text msgid "B<tkill>(2) or B<tgkill>(2)." msgstr "B<tkill>(2) oder B<tgkill>(2)" #. type: Plain text msgid "" "The following values can be placed in I<si_code> for a B<SIGILL> signal:" msgstr "" "Die folgenden Werte können in I<si_code> für ein Signal B<SIGILL> gesetzt " "werden:" #. type: TP #, no-wrap msgid "B<ILL_ILLOPC>" msgstr "B<ILL_ILLOPC>" #. type: Plain text msgid "Illegal opcode." msgstr "Ungültiger Opcode" #. type: TP #, no-wrap msgid "B<ILL_ILLOPN>" msgstr "B<ILL_ILLOPN>" #. type: Plain text msgid "Illegal operand." msgstr "Ungültiger Operand" #. type: TP #, no-wrap msgid "B<ILL_ILLADR>" msgstr "B<ILL_ILLADR>" #. type: Plain text msgid "Illegal addressing mode." msgstr "Ungültiger Adressierungsmodus" #. type: TP #, no-wrap msgid "B<ILL_ILLTRP>" msgstr "B<ILL_ILLTRP>" #. type: Plain text msgid "Illegal trap." msgstr ""
Attachment:
signature.asc
Description: Digital signature