GET_THREAD_AREA(2)

ИМЯ
get_thread_area - получение области локального хранилища нити (TLS, Thread Local Storage)

ОБЗОР
#include <linux/unistd.h>
#include <asm/ldt.h>

int get_thread_area(struct user_desc *u_info);

ОПИСАНИЕ
get_thread_area() возвращает элемент в текущем массиве локального хранилища нити. Индекс записи соответствует значению u_info->entry_number, переданного от пользователя. Если это значение находится в допустимых пределах, то get_thread_area() копирует соответствующую запись TLS в область, на которую указывает u_info.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
get_thread_area() возвращает 0 при нормальном завершении работы. Иначе возвращается -1, а errno устанавливается соответствующим образом.

ОШИБКИ

EFAULT
    u_info является некорректным указателем.

EINVAL
    u_info->entry_number вне допустимых границ.

ВЕРСИИ
Впервые, get_thread_area() появилась в Linux 2.5.32.

СООТВЕТСТВИЕ СТАНДАРТАМ
Вызов get_thread_area() есть только в Linux, и он не должен использоваться в переносимых программах.

ЗАМЕЧАНИЯ
В glibc нет обёртки для данного системного вызова; запускайте его с помощью syscall(2).

СМОТРИТЕ ТАКЖЕ
modify_ldt(2), set_thread_area(2)