OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / LDP_man-pages / draft / man2 / brk.2
index 8924649..c69bf4b 100644 (file)
 .\"
 .TH BRK 2 2010-09-20 "Linux" "Linux Programmer's Manual"
 .\"O .SH NAME
-.SH Ì¾Á°
+.SH 名前
 .\"O brk, sbrk \- change data segment size
-brk, sbrk \- ¥Ç¡¼¥¿¡¦¥»¥°¥á¥ó¥È¤Î¥µ¥¤¥º¤ÎÊѹ¹¤¹¤ë
+brk, sbrk \- データ・セグメントのサイズの変更する
 .\"O .SH SYNOPSIS
-.SH ½ñ¼°
+.SH 書式
 .B #include <unistd.h>
 .sp
 .BI "int brk(void *" addr );
@@ -54,9 +54,9 @@ brk, sbrk \- 
 .in -4n
 .\"O Feature Test Macro Requirements for glibc (see
 .\"O .BR feature_test_macros (7)):
-glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
+glibc 向けの機能検査マクロの要件
 .RB ( feature_test_macros (7)
-»²¾È):
+参照):
 .in
 .sp
 .BR brk (),
@@ -66,7 +66,7 @@ glibc 
 .PD 0
 .TP 4
 .\"O Since glibc 2.12:
-glibc 2.12 °Ê¹ß:
+glibc 2.12 以降:
 .nf
 _BSD_SOURCE || _SVID_SOURCE ||
     (_XOPEN_SOURCE\ >=\ 500 ||
@@ -75,14 +75,14 @@ _BSD_SOURCE || _SVID_SOURCE ||
 .fi
 .TP 4
 .\"O Before glibc 2.12:
-glibc 2.12 ¤è¤êÁ°:
+glibc 2.12 より前:
 _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 ||
 _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .PD
 .RE
 .ad b
 .\"O .SH DESCRIPTION
-.SH ÀâÌÀ
+.SH 説明
 .\"O .BR brk ()
 .\"O and
 .\"O .BR sbrk ()
@@ -95,18 +95,18 @@ _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .\"O allocating memory to the process;
 .\"O decreasing the break deallocates memory.
 .BR brk ()
-¤È
+と
 .BR sbrk ()
-¤Ï
-.I "¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯ (program break)"
-¤Î¾ì½ê¤òÊѹ¹¤¹¤ë¡£
-¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯¤Ï¥×¥í¥»¥¹¤Î¥Ç¡¼¥¿¡¦¥»¥°¥á¥ó¥È (data segment) ¤Î
-ËöÈø¤ò¼¨¤¹ (¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯¤Ï¡¢½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤¤
-¥Ç¡¼¥¿¡¦¥»¥°¥á¥ó¥È¤ÎËöÈø¤Îľ¸å¤Î¾ì½ê¤È¤Ê¤ë)¡£
-¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯¤òÁý¤ä¤¹¤È¤¤¤¦¤³¤È¤Ï¡¢¤½¤Î¥×¥í¥»¥¹¤Ø¤Î
-¥á¥â¥ê¤ò³ä¤êÅö¤Æ¤ë¸ú²Ì¤¬¤¢¤ê¡¢
-¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯¤ò¸º¤é¤¹¤È¤¤¤¦¤³¤È¤Ï¡¢¥á¥â¥ê¤ò²òÊü¤¹¤ë
-¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£
+は
+.I "ã\83\97ã\83­ã\82°ã\83©ã\83 ã\83»ã\83\96ã\83¬ã\83¼ã\82¯ (program break)"
+の場所を変更する。
+プログラム・ブレークはプロセスのデータ・セグメント (data segment) の
+末尾を示す (プログラム・ブレークは、初期化されていない
+データ・セグメントの末尾の直後の場所となる)。
+プログラム・ブレークを増やすということは、そのプロセスへの
+メモリを割り当てる効果があり、
+プログラム・ブレークを減らすということは、メモリを解放する
+ということである。
 
 .\"O .BR brk ()
 .\"O sets the end of the data segment to the value specified by
@@ -115,51 +115,51 @@ _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .\"O and the process does not exceed its maximum data size (see
 .\"O .BR setrlimit (2)).
 .BR brk ()
-¤Ï¡¢¥Ç¡¼¥¿¡¦¥»¥°¥á¥ó¥È¤ÎËöÈø¤ò
+は、データ・セグメントの末尾を
 .I addr
-¤Ç»ØÄꤷ¤¿ÃͤËÀßÄꤹ¤ë¡£
-ÀßÄ꤬¹Ô¤ï¤ì¤ë¤Î¤Ï¡¢»ØÄꤷ¤¿Ãͤ¬Í­¸ú¤Ç¡¢
-¥·¥¹¥Æ¥à¤Ë½½Ê¬¤Ê¥á¥â¥ê¤¬¤¢¤ê¡¢
-¥×¥í¥»¥¹¤Î¥Ç¡¼¥¿¥µ¥¤¥º¤ÎºÇÂçÃͤòĶ¤¨¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¢¤ë
+で指定した値に設定する。
+設定が行われるのは、指定した値が有効で、
+システムに十分なメモリがあり、
+プロセスのデータサイズの最大値を超えていない場合である
 .RB ( setrlimit (2)
-¤ò»²¾È)¡£
+を参照)。
 
 .\"O .BR sbrk ()
 .\"O increments the program's data space by
 .\"O .I increment
 .\"O bytes.
 .BR sbrk ()
-¤Ï¡¢¥×¥í¥°¥é¥à¤Î¥Ç¡¼¥¿¶õ´Ö¤ò
+は、プログラムのデータ空間を
 .I increment
-¥Ð¥¤¥È¤À¤±Áý¤ä¤¹¡£
+バイトだけ増やす。
 .\"O Calling
 .\"O .BR sbrk ()
 .\"O with an
 .\"O .I increment
 .\"O of 0 can be used to find the current location of the program break.
 .I increment
-¤ò 0 ¤Ë¤·¤Æ
+を 0 にして
 .BR sbrk ()
-¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ç¡¢¥×¥í¥°¥é¥à¤Î¸½ºß¤Î¥Ö¥ì¡¼¥¯ (break) ¾ì½ê¤òÃΤ뤳¤È¤¬¤Ç¤­¤ë¡£
+を呼び出すことで、プログラムの現在のブレーク (break) 場所を知ることができる。
 .\"O .SH "RETURN VALUE"
-.SH ÊÖ¤êÃÍ
+.SH 返り値
 .\"O On success,
 .\"O .BR brk ()
 .\"O returns zero.
-À®¸ù¤·¤¿¾ì¹ç¡¢
+成功した場合、
 .BR brk ()
-¤Ï 0 ¤òÊÖ¤¹¡£
+は 0 を返す。
 .\"O On error, \-1 is returned, and
 .\"O .I errno
 .\"O is set to
 .\"O .BR ENOMEM .
 .\"O (But see \fILINUX NOTES\fP below.)
-¥¨¥é¡¼¤Î¾ì¹ç¤Ë¤Ï¡¢\-1 ¤òÊÖ¤·¡¢
+エラーの場合には、\-1 を返し、
 .I errno
-¤Ë
+に
 .B ENOMEM
-¤òÀßÄꤹ¤ë
-(¤¿¤À¤·¡ÖLINUX ¤Ç¤ÎÃí°Õ¡×¤ò»²¾È¤¹¤ë¤³¤È)¡£
+を設定する
+(ただし「LINUX での注意」を参照すること)。
 
 .\"O On success,
 .\"O .BR sbrk ()
@@ -172,24 +172,24 @@ _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
 .\"O .I errno
 .\"O is set to
 .\"O .BR ENOMEM .
-À®¸ù¤·¤¿¾ì¹ç¡¢
+成功した場合、
 .BR sbrk ()
-¤ÏÊѹ¹Á°¤Î¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯¤òÊÖ¤¹
-(¥×¥í¥°¥é¥à¡¦¥Ö¥ì¡¼¥¯¤¬Áý¤ä¤µ¤ì¤¿¾ì¹ç¡¢¤³¤ÎÃͤÏ
-¿·¤·¤¯³ä¤êÅö¤Æ¤é¤ì¤¿¥á¥â¥ê¤ÎÀèƬ¤ò»Ø¤¹¥Ý¥¤¥ó¥¿¤È¤Ê¤ë)¡£
-¥¨¥é¡¼¤Î¾ì¹ç¤Ë¤Ï¡¢
+は変更前のプログラム・ブレークを返す
+(プログラム・ブレークが増やされた場合、この値は
+新しく割り当てられたメモリの先頭を指すポインタとなる)。
+エラーの場合には、
 .I "(void\ *)\ \-1"
-¤òÊÖ¤·¡¢
+を返し、
 .I errno
-¤Ë
+に
 .B ENOMEM
-¤òÀßÄꤹ¤ë¡£
+を設定する。
 .\"O .SH "CONFORMING TO"
-.SH ½àµò
+.SH 準拠
 .\"O 4.3BSD; SUSv1, marked LEGACY in SUSv2, removed in POSIX.1-2001.
 4.3BSD, SUSv1.
-SUSv2 ¤Ç¤Ï¡Ö²áµî¤Î̾»Ä (LEGACY)¡×¤È°ÌÃÖÉÕ¤±¤é¤ì¤Æ¤ª¤ê¡¢
-POSIX.1-2001 ¤Çºï½ü¤µ¤ì¤¿¡£
+SUSv2 では「過去の名残 (LEGACY)」と位置付けられており、
+POSIX.1-2001 で削除された。
 .\"O .\"
 .\"O .\" .BR brk ()
 .\"O .\" and
@@ -197,12 +197,12 @@ POSIX.1-2001 
 .\"O .\" are not defined in the C Standard and are deliberately excluded from the
 .\"O .\" POSIX.1-1990 standard (see paragraphs B.1.1.1.3 and B.8.3.3).
 .\" .BR brk ()
-.\" ¤È
+.\" 
 .\" .BR sbrk ()
-.\" ¤Ï C µ¬³Ê (C Standard) ¤Ë¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£
-.\" ¤Þ¤¿ POSIX.1 µ¬³Ê¤«¤é¤Ï°Õ¿ÞŪ¤Ë½ü³°¤µ¤ì¤Æ¤¤¤ë (ÃÊÍî B.1.1.1.3, B.8.3.3 »²¾È)¡£
+.\" は C 規格 (C Standard) には定義されていない。
+.\" また POSIX.1 規格からは意図的に除外されている (段落 B.1.1.1.3, B.8.3.3 参照)。
 .\"O .SH NOTES
-.SH Ãí°Õ
+.SH 注意
 .\"O Avoid using
 .\"O .BR brk ()
 .\"O and
@@ -212,67 +212,67 @@ POSIX.1-2001 
 .\"O memory allocation package is the
 .\"O portable and comfortable way of allocating memory.
 .BR brk ()
-¤ä
+や
 .BR sbrk ()
-¤ò»ÈÍѤ¹¤ë¤Î¤ÏÈò¤±¤ë¤³¤È¡£
+を使用するのは避けること。
 .BR malloc (3)
-¥á¥â¥ê³ä¤êÅö¤Æ¥Ñ¥Ã¥±¡¼¥¸¤ÎÊý¤¬¡¢°Ü¿¢À­¤¬¹â¤¯¡¢
-»È¤¤¤ä¤¹¤¤¥á¥â¥ê³ä¤êÅö¤ÆÊýË¡¤òÄ󶡤·¤Æ¤¤¤ë¡£
+メモリ割り当てパッケージの方が、移植性が高く、
+使いやすいメモリ割り当て方法を提供している。
 
 .\"O Various systems use various types for the argument of
 .\"O .BR sbrk ().
-¤¤¤í¤¤¤í¤Ê¥·¥¹¥Æ¥à¤Ë¤ª¤¤¤Æ¡¢
+いろいろなシステムにおいて、
 .BR sbrk ()
-¤Î°ú¤­¿ô¤ËÍÍ¡¹¤Ê·¿¤¬»È¤ï¤ì¤Æ¤¤¤ë¡£
+の引き数に様々な型が使われている。
 .\"O Common are \fIint\fP, \fIssize_t\fP, \fIptrdiff_t\fP, \fIintptr_t\fP.
-°ìÈÌŪ¤Ê¤Î¤Ï \fIint\fP, \fIssize_t\fP, \fIptrdiff_t\fP, \fIintptr_t\fP ¤Ç¤¢¤ë¡£
+一般的なのは \fIint\fP, \fIssize_t\fP, \fIptrdiff_t\fP, \fIintptr_t\fP である。
 .\"O .\" One sees
 .\"O .\" \fIint\fP (e.g., XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
 .\"O .\" \fIssize_t\fP (OSF1 2.0, Irix 5.3, 6.5),
 .\"O .\" \fIptrdiff_t\fP (libc4, libc5, ulibc, glibc 2.0, 2.1),
 .\"O .\" \fIintptr_t\fP (e.g., XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7, NetBSD 1.6,
 .\"O .\" Tru64 5.1, glibc2.2).
-.\" \fIint\fP (¤¿¤È¤¨¤Ð XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
+.\" \fIint\fP (たとえば XPGv4, DU 4.0, HP-UX 11, FreeBSD 4.0, OpenBSD 3.2),
 .\" \fIssize_t\fP (OSF1 2.0, Irix 5.3, 6.5),
 .\" \fIptrdiff_t\fP (libc4, libc5, ulibc, glibc 2.0, 2.1),
-.\" \fIintptr_t\fP (¤¿¤È¤¨¤Ð XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7,
+.\" \fIintptr_t\fP (たとえば XPGv5, AIX, SunOS 5.8, 5.9, FreeBSD 4.7,
 .\" NetBSD 1.6, Tru64 5.1, glibc2.2).
-.\" ¤È¤¤¤¦¤Î¤¬Ê¬¤«¤ë¤À¤í¤¦¡£
+.\" というのが分かるだろう。
 .\"O .SS Linux Notes
-.SS Linux ¤Ç¤ÎÃí°Õ
+.SS Linux での注意
 .\"O The return value described above for
 .\"O .BR brk ()
 .\"O is the behavior provided by the glibc wrapper function for the Linux
 .\"O .BR brk ()
 .\"O system call.
-¾å¤ÇÀâÌÀ¤·¤¿
+上で説明した
 .BR brk ()
-¤ÎÊÖ¤êÃͤˤĤ¤¤Æ¤ÎÆ°ºî¤Ï¡¢
-Linux ¤Î
+の返り値についての動作は、
+Linux 
 .BR brk ()
-¥·¥¹¥Æ¥à¥³¡¼¥ë¤ò¥é¥Ã¥×¤¹¤ë glibc ¤Î´Ø¿ô¤Ë¤è¤ë¤â¤Î¤Ç¤¢¤ë¡£
+システムコールをラップする glibc の関数によるものである。
 .\"O (On most other implementations, the return value from
 .\"O .BR brk ()
 .\"O is the same; this return value was also specified in SUSv2.)
-(¤½¤Î¾¤Î¿¤¯¤Î¼ÂÁõ¤Ç¤â¡¢
+(その他の多くの実装でも、
 .BR brk ()
-¤ÎÊÖ¤êÃͤϤ³¤ì¤ÈƱ¤¸¤Ç¤¢¤ë¡£
-¤³¤ÎÊÖ¤êÃͤϠSUSv2 ¤Ç¤âµ¬Äꤵ¤ì¤Æ¤¤¤ë¡£)
+の返り値はこれと同じである。
+この返り値は SUSv2 でも規定されている。)
 .\"O However,
 .\"O the actual Linux system call returns the new program break on success.
-¤·¤«¤·¡¢¼ÂºÝ¤Î Linux ¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¡¢À®¸ù¤·¤¿¾ì¹ç¡¢
-¥×¥í¥°¥é¥à¤Î¿·¤·¤¤¥Ö¥ì¡¼¥¯¤òÊÖ¤¹¡£
+しかし、実際の Linux システムコールは、成功した場合、
+プログラムの新しいブレークを返す。
 .\"O On failure, the system call returns the current break.
-¼ºÇÔ¤·¤¿¾ì¹ç¡¢¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¸½ºß¤Î¥Ö¥ì¡¼¥¯¤òÊÖ¤¹¡£
+失敗した場合、このシステムコールは現在のブレークを返す。
 .\"O The glibc wrapper function does some work
 .\"O (i.e., checks whether the new break is less than
 .\"O .IR addr )
 .\"O to provide the 0 and \-1 return values described above.
-glibc ¥é¥Ã¥Ñ¡¼´Ø¿ô¤ÏƱÍͤÎƯ¤­¤ò¤·
-(¤¹¤Ê¤ï¤Á¡¢¿·¤·¤¤¥Ö¥ì¡¼¥¯¤¬
+glibc ラッパー関数は同様の働きをし
+(すなわち、新しいブレークが
 .I addr
-¤è¤ê¾®¤µ¤¤¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤·)¡¢
-¾å¤ÇÀâÌÀ¤·¤¿ 0 ¤È \-1 ¤È¤¤¤¦ÊÖ¤êÃͤòÊÖ¤¹¡£
+より小さいかどうかをチェックし)、
+上で説明した 0 と \-1 という返り値を返す。
 
 .\"O On Linux,
 .\"O .BR sbrk ()
@@ -280,14 +280,14 @@ glibc 
 .\"O .BR brk ()
 .\"O system call, and does some internal bookkeeping so that it can
 .\"O return the old break value.
-Linux ¤Ç¤Ï
+Linux では
 .BR sbrk ()
-¤Ï
+は
 .BR brk ()
-¥·¥¹¥Æ¥à¥³¡¼¥ë¤ò»È¤¦¥é¥¤¥Ö¥é¥ê´Ø¿ô¤È¤·¤Æ¼ÂÁõ¤µ¤ì¤Æ¤ª¤ê¡¢
-°ÊÁ°¤Î¥Ö¥ì¡¼¥¯¤ÎÃͤòÊÖ¤¹¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤ËÆâÉô¤ÇÄ´À°¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¡£
+システムコールを使うライブラリ関数として実装されており、
+以前のブレークの値を返すことができるように内部で調整が行われている。
 .\"O .SH "SEE ALSO"
-.SH ´ØÏ¢¹àÌÜ
+.SH 関連項目
 .BR execve (2),
 .BR getrlimit (2),
 .BR end (3),