OSDN Git Service

(split) Convert release and draft pages to UTF-8.
[linuxjm/LDP_man-pages.git] / draft / man2 / sched_yield.2
index 56c4a49..249032e 100644 (file)
 .\"         by HANATAKA Shinya <hanataka@abyss.rim.or.jp>
 .\" Updated 2008-11-10, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v3.13
 .\"
-.\"WORD:       yield                   ¶õ¤±ÅϤ¹
-.\"WORD:       block                   ÃæÃÇ(block)
-.\"WORD:       process                 ¥×¥í¥»¥¹
-.\"WORD:       processor               ¥×¥í¥»¥Ã¥µ¡¼
-.\"WORD:       queue                   ¥­¥å¡¼
-.\"WORD:       static                  ÀÅŪ
-.\"WORD:       priority                ¥×¥é¥¤¥ª¥ê¥Æ¥£
-.\"WORD:       scheduling              ¥¹¥±¥¸¥å¡¼¥ê¥ó¥°
+.\"WORD:       yield                   空け渡す
+.\"WORD:       block                   中断(block)
+.\"WORD:       process                 ã\83\97ã\83­ã\82»ã\82¹
+.\"WORD:       processor               ã\83\97ã\83­ã\82»ã\83\83ã\82µã\83¼
+.\"WORD:       queue                   ã\82­ã\83¥ã\83¼
+.\"WORD:       static                  静的
+.\"WORD:       priority                ã\83\97ã\83©ã\82¤ã\82ªã\83ªã\83\86ã\82£
+.\"WORD:       scheduling              ã\82¹ã\82±ã\82¸ã\83¥ã\83¼ã\83ªã\83³ã\82°
 .\"
 .TH SCHED_YIELD 2 2008-10-18 "Linux" "Linux Programmer's Manual"
 .\"O .SH NAME
-.SH Ì¾Á°
+.SH 名前
 .\"O sched_yield \- yield the processor
-sched_yield \- ¥×¥í¥»¥Ã¥µ¡¼¤ò¶õ¤±ÅϤ¹(yield)
+sched_yield \- プロセッサーを空け渡す(yield)
 .\"O .SH SYNOPSIS
-.SH ½ñ¼°
+.SH 書式
 .B #include <sched.h>
 .sp
 .B int sched_yield(void);
 .\"O .SH DESCRIPTION
-.SH ÀâÌÀ
+.SH 説明
 .\"O .BR sched_yield ()
 .\"O causes the calling thread to relinquish the CPU.
 .BR sched_yield ()
-¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤Ç¡¢¸Æ¤Ó½Ð¤·¤¿¥¹¥ì¥Ã¥É¤¬ CPU ¤Î»ÈÍѸ¢¤ò¼êÊü¤¹¤³¤È¤¬¤Ç¤­¤ë¡£
+を呼び出すことで、呼び出したスレッドが CPU の使用権を手放すことができる。
 .\"O The thread is moved to the end of the queue for its static
 .\"O priority and a new thread gets to run.
-¤½¤Î¥¹¥ì¥Ã¥É¤Ï¡¢¤½¤Î¥¹¥ì¥Ã¥É¤ÎÀÅŪ¥×¥é¥¤¥ª¥ê¥Æ¥£¤Î¥­¥å¡¼¤ÎËöÈø¤Ë
-°ÜÆ°¤·¡¢¿·¤·¤¤¥¹¥ì¥Ã¥É¤¬Áö¤ê»Ï¤á¤ë¡£
+そのスレッドは、そのスレッドの静的プライオリティのキューの末尾に
+移動し、新しいスレッドが走り始める。
 .\"O .SH "RETURN VALUE"
-.SH ÊÖ¤êÃÍ
+.SH 返り値
 .\"O On success,
 .\"O .BR sched_yield ()
 .\"O returns 0.
 .\"O On error, \-1 is returned, and
 .\"O .I errno
 .\"O is set appropriately.
-À®¸ù¤·¤¿¾ì¹ç¤Ï
+成功した場合は
 .BR sched_yield ()
-¤Ï 0 ¤òÊÖ¤¹¡£
-¥¨¥é¡¼¤Î¾ì¹ç¤Ï \-1 ¤¬ÊÖ¤µ¤ì¡¢
+は 0 を返す。
+エラーの場合は \-1 が返され、
 .I errno
-¤¬Å¬ÀÚ¤ËÀßÄꤵ¤ì¤ë¡£
+が適切に設定される。
 .\"O .SH ERRORS
-.SH ¥¨¥é¡¼
+.SH ã\82¨ã\83©ã\83¼
 .\"O In the Linux implementation,
 .\"O .BR sched_yield ()
 .\"O always succeeds.
-Linux ¤Î¼ÂÁõ¤Ç¤Ï¡¢
+Linux の実装では、
 .BR sched_yield ()
-¤Ï¾ï¤ËÀ®¸ù¤¹¤ë¡£
+は常に成功する。
 .\"O .SH "CONFORMING TO"
-.SH ½àµò
+.SH 準拠
 POSIX.1-2001.
 .\"O .SH NOTES
-.SH Ãí°Õ
+.SH 注意
 .\"O If the calling thread is the only thread in the highest
 .\"O priority list at that time,
 .\"O it will continue to run after a call to
 .\"O .BR sched_yield ().
 .BR sched_yield ()
-¤ò¸Æ¤Ó½Ð¤·¤¿»þÅÀ¤ÇºÇÂçÍ¥ÀèÅ٤Υꥹ¥È¤ÎÃæ¤Ë¸Æ¤Ó½Ð¤·¸µ¤Î¥¹¥ì¥Ã¥É¤·¤«
-¸ºß¤·¤Ê¤±¤ì¤Ð¡¢¤½¤Î¥¹¥ì¥Ã¥É¤Ï¸Æ¤Ó½Ð¤·¸å¤âÁö¤ê³¤±¤ë¤³¤È¤Ë¤Ê¤ë¡£
+を呼び出した時点で最大優先度のリストの中に呼び出し元のスレッドしか
+存在しなければ、そのスレッドは呼び出し後も走り続けることになる。
 
 .\"O POSIX systems on which
 .\"O .BR sched_yield ()
 .\"O is available define
 .\"O .B _POSIX_PRIORITY_SCHEDULING
 .\"O in \fI<unistd.h>\fP.
-POSIX ¥·¥¹¥Æ¥à¤Ç
+POSIX システムで
 .BR sched_yield ()
-¤Ï \fI<unistd.h>\fP ¤Ë
+は \fI<unistd.h>\fP に
 .B _POSIX_PRIORITY_SCHEDULING
-¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Î¤ß»ÈÍѲÄǽ¤Ç¤¢¤ë¡£
+が定義されている場合にのみ使用可能である。
 
 .\"O Strategic calls to
 .\"O .BR sched_yield ()
@@ -121,23 +121,23 @@ POSIX 
 .\"O since doing so will result in unnecessary context switches,
 .\"O which will degrade system performance.
 .BR sched_yield ()
-¤òÀïάŪ¤Ë¸Æ¤Ó½Ð¤¹¤³¤È¤Ç¡¢(¶ËÅÙ¤Ë) ¶¥¹ç¤¹¤ë¥ê¥½¡¼¥¹ (mutex ¤Ê¤É)
-¤ò¸Æ¤Ó½Ð¤·¸µ¤¬²òÊü¤·¤¿ºÝ¤Ë¾¤Î¥¹¥ì¥Ã¥É¤ä¥×¥í¥»¥¹¤Ë¼Â¹Ôµ¡²ñ¤òÍ¿¤¨¤ë¤³¤È¤Ç¡¢
-À­Ç½¤ò¾å¤²¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
+を戦略的に呼び出すことで、(極度に) 競合するリソース (mutex など)
+を呼び出し元が解放した際に他のスレッドやプロセスに実行機会を与えることで、
+性能を上げることができる。
 .BR sched_yield ()
-¤òɬÍפâ¤Ê¤¤¤Î¤Ë¸Æ¤Ó½Ð¤·¤¿¤ê¡¢ÉÔŬÀڤʾìÌÌ (Î㤨¤Ð¡¢Â¾¤Î¥¹¥±¥¸¥å¡¼¥ê¥ó¥°
-ÂоݤȤʤ륹¥ì¥Ã¥É¤¬É¬ÍפȤ¹¤ë¥ê¥½¡¼¥¹¤ò¸Æ¤Ó½Ð¤·¸µ¤¬ÊÝ»ý¤·¤¿¤Þ¤Þ¤Î¾õÂÖ)
-¤Ç¸Æ¤Ó½Ð¤·¤¿¤ê¤¹¤ë¤Î¤ÏÈò¤±¤ë¤³¤È¡£¤Ê¤¼¤Ê¤é¡¢
+ã\82\92å¿\85è¦\81ã\82\82ã\81ªã\81\84ã\81®ã\81«å\91¼ã\81³å\87ºã\81\97ã\81\9fã\82\8aã\80\81ä¸\8dé\81©å\88\87ã\81ªå ´é\9d¢ (ä¾\8bã\81\88ã\81°ã\80\81ä»\96ã\81®ã\82¹ã\82±ã\82¸ã\83¥ã\83¼ã\83ªã\83³ã\82°
+対象となるスレッドが必要とするリソースを呼び出し元が保持したままの状態)
+で呼び出したりするのは避けること。なぜなら、
 .BR sched_yield ()
-¤Î¸Æ¤Ó½Ð¤·¤è¤êÉÔɬÍפʥ³¥ó¥Æ¥­¥¹¥È¥¹¥¤¥Ã¥Á¤¬µ¯¤³¤ê¡¢¥·¥¹¥Æ¥àÀ­Ç½¤¬
-Îô²½¤¹¤ë·ë²Ì¤Ë¤Ê¤ë¤«¤é¤Ç¤¢¤ë¡£
+の呼び出しより不必要なコンテキストスイッチが起こり、システム性能が
+劣化する結果になるからである。
 .\"O .SH "SEE ALSO"
-.SH ´ØÏ¢¹àÌÜ
+.SH 関連項目
 .\"O .BR sched_setscheduler (2)
 .\"O for a description of Linux scheduling.
-Linux ¤Î¥¹¥±¡¼¥¸¥å¥ê¥ó¥°(scheduling)¤Ë¤Ä¤¤¤Æ¤Ï
+Linux のスケージュリング(scheduling)については
 .BR sched_setscheduler (2)
-¤ò»²¾È¤»¤è¡£
+を参照せよ。
 .PP
 .I Programming for the real world \- POSIX.4
 by Bill O. Gallmeister, O'Reilly & Associates, Inc., ISBN 1-56592-074-0