getunwind(2)

NUME
getunwind - copiază datele de derulare în memoria tampon a apelantului

BIBLIOTECA
Biblioteca C standard (libc, -lc)

REZUMAT
#include <linux/unwind.h>
#include <sys/syscall.h>      /* Definition of SYS_* constants */
#include <unistd.h>

[[depreciat]] long syscall(SYS_getunwind, void buf[.buf_size],
                            size_t buf_size);

DESCRIERE
Notă: acest apel de sistem este învechit.

Apelul de sistem getunwind(), specific IA-64, copiază datele de derulare a cadrului de apel al nucleului în memoria tampon indicată de buf și returnează dimensiunea datelor de derulare; aceste date descriu pagina de poartă (codul nucleului care este cartografiat în spațiul utilizatorului).

Dimensiunea memoriei tampon buf este specificată în buf_size. Datele sunt copiate numai dacă buf_size este mai mare sau egală cu dimensiunea datelor de derulare și dacă buf nu este NULL; în caz contrar, nu se copiază date, iar apelul reușește, returnând dimensiunea care ar fi necesară pentru a stoca datele de derulare.

Prima parte a datelor de derulare conține un tabel de derulare. Restul conține informațiile de derulare asociate, fără o anumită ordine. Tabelul de derulare conține intrări de următoarea formă:

    u64 start;      (adresa pe 64 de biți a începutului funcției)
    u64 end;        (adresa pe 64 de biți a sfârșitului funcției)
    u64 info;       (poziția relativă din memoria tampon pentru informațiile de derulare)

O intrare a cărei valoare start este zero indică sfârșitul tabelului. Pentru mai multe informații despre format, consultați manualul IA-64 Software Conventions and Runtime Architecture.

VALOAREA RETURNATĂ
În caz de succes, getunwind() returnează dimensiunea datelor de derulare. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI
getunwind() eșuează cu eroarea EFAULT dacă informațiile de derulare nu pot fi stocate în spațiul specificat de buf.

VERSIUNI
Acest apel de sistem este disponibil începând cu Linux 2.4.

STANDARDE
Acest apel de sistem este specific Linux și este disponibil numai pe arhitectura IA-64.

NOTE
Acest apel de sistem a fost depreciat (eliminat). Modalitatea modernă de a obține datele de derulare ale nucleului este prin intermediul vdso(7).

CONSULTAȚI ȘI
getauxval(3)

TRADUCERE
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.