OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / LDP_man-pages / release / man2 / _exit.2
index 0b2d9cb..0304a8a 100644 (file)
 .\" Updated Sat Sep  3 04:26:00 JST 2005
 .\"         by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
 .\"
-.\"WORD            descriptors ¥Ç¥£¥¹¥¯¥ê¥×¥¿
+.\"WORD            descriptors ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿
 .\"
 .TH _EXIT 2 2010-09-20 "Linux" "Linux Programmer's Manual"
-.SH Ì¾Á°
-_exit, _Exit \- ¸Æ¤Ó½Ð¤·¸µ¤Î¥×¥í¥»¥¹¤ò½ªÎ»¤µ¤»¤ë
-.SH ½ñ¼°
+.SH 名前
+_exit, _Exit \- 呼び出し元のプロセスを終了させる
+.SH 書式
 .B #include <unistd.h>
 .sp
 .BI "void _exit(int " status );
@@ -50,9 +50,9 @@ _exit, _Exit \- 
 .BI "void _Exit(int " status );
 .sp
 .in -4n
-glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
+glibc 向けの機能検査マクロの要件
 .RB ( feature_test_macros (7)
-»²¾È):
+参照):
 .in
 .sp
 .ad l
@@ -61,78 +61,78 @@ glibc 
 _XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE ||
 _POSIX_C_SOURCE\ >=\ 200112L;
 .br
-¤Þ¤¿¤Ï
+または
 .I cc\ -std=c99
 .ad
-.SH ÀâÌÀ
+.SH 説明
 .BR _exit ()
-¤Ï¡¢¤½¤ì¤ò¸Æ¤ó¤À¥×¥í¥»¥¹¤ò¡Öľ¤Á¤Ë¡×½ªÎ»¤µ¤»¤ë¡£
-¤½¤ÎºÝ¡¢¤³¤Î¥×¥í¥»¥¹¤¬½êÍ­¤·¤Æ¤¤¤ë¥Ç¥£¥¹¥¯¥ê¥×¥¿ (descriptor) ¤Ç¡¢
-¥ª¡¼¥×¥ó¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤ÏÁ´¤Æ¥¯¥í¡¼¥º¤µ¤ì¤ë¡£
-¤Þ¤¿¡¢¤³¤Î¥×¥í¥»¥¹¤¬½êÍ­¤¹¤ë»Ò¥×¥í¥»¥¹¤ÏÁ´¤Æ¡¢¥×¥í¥»¥¹ÈÖ¹æ 1¡¢
-¤Ä¤Þ¤ê
+は、それを呼んだプロセスを「直ちに」終了させる。
+その際、このプロセスが所有しているディスクリプタ (descriptor) で、
+オープンされているものは全てクローズされる。
+また、このプロセスが所有する子プロセスは全て、プロセス番号 1、
+つまり
 .I init
-¥×¥í¥»¥¹¤Ë¤è¤Ã¤Æ·Ñ¾µ¤µ¤ì¡¢¤³¤Î¥×¥í¥»¥¹¤Î¿Æ¥×¥í¥»¥¹¤ËÂФ·¤Æ
+プロセスによって継承され、このプロセスの親プロセスに対して
 .B SIGCHLD
-¥·¥°¥Ê¥ë¤¬Á÷½Ð¤µ¤ì¤ë¡£
+シグナルが送出される。
 .LP
 .I status
-¤ÎÃͤϡ¢¤³¤Î¥×¥í¥»¥¹¤Î½ªÎ»¾õÂ֤Ȥ·¤Æ¤½¤Î¿Æ¥×¥í¥»¥¹¤ËÂФ·¤ÆÊÖ¤µ¤ì¡¢
+の値は、このプロセスの終了状態としてその親プロセスに対して返され、
 .BR wait (2)
-·Ï´Ø¿ô¤òÍøÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¼èÆÀ¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
+系関数を利用することによって取得することができる。
 .LP
-´Ø¿ô
+関数
 .BR _Exit ()
-¤Ï
+は
 .BR _exit ()
-¤ÈÅù²Á¤Ç¤¢¤ë¡£
-.SH ÊÖ¤êÃÍ
-¤³¤ì¤é¤Î´Ø¿ô¤ÏÃͤòÊÖ¤µ¤Ê¤¤¡£
-.SH ½àµò
+と等価である。
+.SH 返り値
+これらの関数は値を返さない。
+.SH 準拠
 SVr4, POSIX.1-2001, 4.3BSD.
-´Ø¿ô
+関数
 .BR _Exit ()
-¤Ï C99 ¤ÇƳÆþ¤µ¤ì¤¿¡£
-.SH Ãí°Õ
-exit ¤ÎÌò³ä¡¦½ªÎ»¾õÂ֤μõÅϤ·¡¦
-¥¾¥ó¥Ó¥×¥í¥»¥¹¡¦¥·¥°¥Ê¥ëÁ÷½Ð¤Ê¤É¤Ë¤Ä¤¤¤Æ¤ÎµÄÏÀ¤Ï¡¢
+は C99 で導入された。
+.SH 注意
+exit の役割・終了状態の受渡し・
+ゾンビプロセス・シグナル送出などについての議論は、
 .BR exit (3)
-¤ò»²¾È¤¹¤ë¤³¤È¡£
+を参照すること。
 .LP
-´Ø¿ô
+関数
 .BR _exit ()
-¤Ï
+は
 .BR exit (3)
-¤Ë»÷¤Æ¤¤¤ë¤¬¡¢ANSI C ¤Î
+に似ているが、ANSI C の
 .BR atexit (3)
-¤ä
+や
 .BR on_exit (3)
-¤Ë¤è¤Ã¤ÆÅÐÏ¿¤µ¤ì¤¿¤¤¤«¤Ê¤ë´Ø¿ô¤â¸Æ¤Ó½Ð¤µ¤Ê¤¤¡£
-ɸ½à I/O ¥Ð¥Ã¥Õ¥¡¤Î¥Õ¥é¥Ã¥·¥å¤ä¡¢
+によって登録されたいかなる関数も呼び出さない。
+標準 I/O バッファのフラッシュや、
 .BR tmpfile (3)
-¤ÇºîÀ®¤µ¤ì¤¿¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë¤Îºï½ü¤ò¹Ô¤¦¤«¤É¤¦¤«¤Ï¡¢¼ÂÁõ¤Ë°Í¸¤¹¤ë¡£
-°ìÊý¤Ç¡¢
+で作成されたテンポラリファイルの削除を行うかどうかは、実装に依存する。
+一方で、
 .BR _exit ()
-¤Ï¥ª¡¼¥×¥ó¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤ò¥¯¥í¡¼¥º¤·¤Ê¤¤¤¿¤á¡¢
-̤·èÄê¤Ë¤Ê¤Ã¤Æ¤¤¤ë½ÐÎϤ¬¥Õ¥é¥Ã¥·¥å¤µ¤ì¤ë¤Î¤òÂԤĤΤËÉÔ³ÎÄê¤ÊÃ٤줬ȯÀ¸¤¹¤ë¡£
-¤³¤ÎÃÙ¤ì¤òȯÀ¸¤µ¤»¤¿¤¯¤Ê¤±¤ì¤Ð¡¢
+はオープンされているファイルディスクリプタをクローズしないため、
+未決定になっている出力がフラッシュされるのを待つのに不確定な遅れが発生する。
+この遅れを発生させたくなければ、
 .BR _exit ()
-¤ÎÁ°¤Ë
+の前に
 .BR tcflush (3)
-¤Î¤è¤¦¤Ê´Ø¿ô¤ò¸Æ¤Ó½Ð¤»¤Ð¤è¤¤¡£
+のような関数を呼び出せばよい。
 .BR _exit ()
-¤¬¸Æ¤Ó½Ð¤µ¤ì¤¿¤È¤­¤Ë¡¢
-̤·èÄê¤Ë¤Ê¤Ã¤Æ¤¤¤ëÁ´¤Æ¤Î I/O ¤¬¥­¥ã¥ó¥»¥ë¤µ¤ì¤ë¤Î¤«¡¢
-¤Þ¤¿¤É¤Î I/O ¤¬¥­¥ã¥ó¥»¥ë¤µ¤ì¤ë¤Î¤«¤Ï¼ÂÁõ¤Ë°Í¸¤¹¤ë¡£
+が呼び出されたときに、
+未決定になっている全ての I/O がキャンセルされるのか、
+またどの I/O がキャンセルされるのかは実装に依存する。
 
-¥Ð¡¼¥¸¥ç¥ó 2.3 ¤è¤êÁ°¤Î glibc ¤Ç¤Ï¡¢
+バージョン 2.3 より前の glibc では、
 .BR _exit ()
-¤Î¥é¥Ã¥Ñ¡¼´Ø¿ô¤ÏƱ¤¸Ì¾Á°¤Î¥«¡¼¥Í¥ë¡¦¥·¥¹¥Æ¥à¥³¡¼¥ë¤òµ¯Æ°¤·¤Æ¤¤¤¿¡£
-glibc 2.3 °Ê¹ß¤Ç¤Ï¡¢¥×¥í¥»¥¹Æâ¤ÎÁ´¤Æ¤Î¥¹¥ì¥Ã¥É¤ò½ªÎ»¤¹¤ë¤¿¤á¤Ë¡¢
-¥é¥Ã¥Ñ¡¼´Ø¿ô¤Ï
+のラッパー関数は同じ名前のカーネル・システムコールを起動していた。
+glibc 2.3 以降では、プロセス内の全てのスレッドを終了するために、
+ラッパー関数は
 .BR exit_group (2)
-¤òµ¯Æ°¤¹¤ë¡£
-.SH ´ØÏ¢¹àÌÜ
+を起動する。
+.SH 関連項目
 .BR execve (2),
 .BR exit_group (2),
 .BR fork (2),