Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       getunwind - копирует раскрученные данные в буфер вызывающего

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #include <linux/unwind.h>
       #include <sys/syscall.h>      /* определения констант SYS_* */
       #include <unistd.h>

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

ОПИСАНИЕ

       Note: this system call is obsolete.

       Специальный системный вызов getunwind() для IA-64 копирует раскрученные данные кадра вызова ядра в буфер,
       указанный  в  buf,  и возвращает размер раскрученных данных; эти данные описывают шлюзовую страницу (gate
       page, код ядра, который отображается в адресное пространство пользователя).

       Размер буфера buf задаётся в buf_size. Данные копируются только, если значение buf_size больше или  равно
       размеру  раскрученных  данных  и  значение  buf не равно NULL; в противном случае, данные не копируются и
       вызов завершается без ошибки, возвращая размер, который необходим для хранения раскрученных данных.

       В начале раскрученных данных содержится таблица раскрутки. После  неё  хранится  связанная  с  раскруткой
       информация в произвольном порядке. В таблице раскрутки содержатся записи в следующем виде:

           u64 start;    (64-битный адрес начала функции)
           u64 end;      (64-битный адрес конца функции)
           u64 info;     (смещение относительно BUF на раскрученную информацию)

       Запись,  у  которой значение start равно нулю, указывает на конец таблицы. Подробности формата смотрите в
       руководстве IA-64 Software Conventions and Runtime Architecture.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       При успешном выполнении getunwind() возвращает размер раскрученных данных. При ошибке возвращается -1,  а
       в errno задаётся причина ошибки.

ОШИБКИ

       Вызов  getunwind()  завершается  с  ошибкой  EFAULT,  если раскрученную информацию невозможно сохранить в
       пространство, указанное buf.

СТАНДАРТЫ

       Linux on IA-64.

ИСТОРИЯ

       Linux 2.4.

       Данный системный вызов устарел. Современным способом получить раскрученные данные  ядра  является  работа
       через vdso(7).

СМОТРИТЕ ТАКЖЕ

       getauxval(3)

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства  разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>,
       Dmitry  Bolkhovskikh   <d20052005@yandex.ru>,   Vladislav   <ivladislavefimov@gmail.com>,   Yuri   Kozlov
       <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

       Этот  перевод является свободной программной документацией; он распространяется на условиях общедоступной
       лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html  версии  3  или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если  вы  обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом
       разработчику(ам)  по  его(их)  адресу(ам)  электронной  почты  или  по   адресу   списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                     getunwind(2)