set_thread_area

Autres langues

Langue: ja

Autres versions - même langue

Version: 2003-02-21 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

set_thread_area - ¥¹¥ì¥Ã¥É¶É½êµ­²± (TLS) Îΰè¤òÀßÄꤹ¤ë

½ñ¼°

#include <linux/unistd.h>
#include <asm/ldt.h>

int set_thread_area(struct user_desc *u_info);

ÀâÌÀ

set_thread_area() ¤Ï¡¢¥«¥ì¥ó¥È¡¦¥¹¥ì¥Ã¥É¤Î¥¹¥ì¥Ã¥É¶É½êµ­²± (Thread Local Storage; TLS) ÇÛÎó¤ÎÃæ¤Î¥¨¥ó¥È¥ê¤òÀßÄꤹ¤ë¡£ set_thread_area() ¤Ë¤è¤êÀßÄꤵ¤ì¤ë TLS ÇÛÎó¤Î¥¨¥ó¥È¥ê¤Ï¡¢¥æ¡¼¥¶¤«¤é°ú¤­¿ô¤È¤·¤ÆÅϤµ¤ì¤ë u_info->entry_number ¤ÎÃͤËÂбþ¤·¤Æ¤¤¤ë¡£Ãͤ¬ÈÏ°ÏÆâ¤Ë¤¢¤ë¾ì¹ç¡¢ set_thread_area() ¤Ï u_info ¤Ç»Ø¤µ¤ì¤¿ TLS ¥Ç¥£¥¹¥¯¥ê¥×¥¿¤ò¥¹¥ì¥Ã¥É¤Î TLS ÇÛÎó¤Ë¥³¥Ô¡¼¤¹¤ë¡£

entry_number ¤È¤·¤Æ -1 ¤¬ÅϤµ¤ì¤¿¾ì¹ç¡¢ set_thread_area() ¤Ï̤»ÈÍÑ (free) ¤Î TLS ¥¨¥ó¥È¥ê¤ò»ÈÍѤ¹¤ë¡£ ̤»ÈÍѤΠTLS ¥¨¥ó¥È¥ê¤¬¤¢¤Ã¤¿¾ì¹ç¡¢¤É¤Î¥¨¥ó¥È¥ê¤¬Êѹ¹¤µ¤ì¤¿¤«¤¬Ê¬¤«¤ë ¤è¤¦¤Ë½ªÎ»»þ¤Ë u_info->entry_number ¤ÎÃͤ¬Êѹ¹¤µ¤ì¤ë¡£

ÊÖ¤êÃÍ

set_thread_area() ¤ÏÀ®¸ù¤·¤¿¾ì¹ç 0 ¤òÊÖ¤¹¡£¼ºÇÔ¤·¤¿¾ì¹ç¤Ï -1 ¤òÊÖ¤·¡¢ errno ¤òŬÀÚ¤ËÀßÄꤹ¤ë¡£

¥¨¥é¡¼

EINVAL
u_info->entry_number ¤¬Èϰϳ°¤Ç¤¢¤ë¡£
EFAULT
u_info ¤¬ÉÔÀµ¤Ê¥Ý¥¤¥ó¥¿¤Ç¤¢¤ë¡£
ESRCH
̤»ÈÍѤΠTLS ¥¨¥ó¥È¥ê¤¬¸«¤Ä¤«¤é¤Ê¤«¤Ã¤¿¡£

¥Ð¡¼¥¸¥ç¥ó

set_thread_area() ¤Ï Linux 2.5.29 ¤Ç½é¤á¤ÆÅо줷¤¿¡£

½àµò

set_thread_area() ¤Ï Linux Æȼ«¤Ç¤¢¤ê¡¢°Ü¿¢¤ò°Õ¿Þ¤·¤¿¥×¥í¥°¥é¥à¤Ç¤Ï»ÈÍѤ¹¤Ù¤­¤Ç¤Ï¤Ê¤¤¡£

´ØÏ¢¹àÌÜ

get_thread_area(2)