.\" by Yuichi SATO <ysato444@yahoo.co.jp>
.\"
.TH VM86 2 2009-02-20 "Linux" "Linux Programmer's Manual"
-.SH ̾Á°
-vm86old, vm86 \- ²¾ÁÛ 8086 ¥â¡¼¥É¤Ø°Ü¹Ô¤¹¤ë
-.SH ½ñ¼°
+.SH 名前
+vm86old, vm86 \- 仮想 8086 モードへ移行する
+.SH 書式
.B #include <sys/vm86.h>
.sp
.BI "int vm86old(struct vm86_struct *" info );
.sp
.BI "int vm86(unsigned long " fn ", struct vm86plus_struct *" v86 );
-.SH ÀâÌÀ
+.SH 説明
.BR vm86 ()
-¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï Linux 0.97p2 ¤ÇƳÆþ¤µ¤ì¤¿¡£
-¤³¤ì¤Ï Linux 2.1.15 ¤È 2.0.28 ¤Ç
+システムコールは Linux 0.97p2 で導入された。
+これは Linux 2.1.15 と 2.0.28 で
.BR vm86old ()
-¤Ë̾Á°¤¬Êѹ¹¤µ¤ì¡¢
-¿·¤·¤¤
+に名前が変更され、
+新しい
.BR vm86 ()
-¤¬Æ³Æþ¤µ¤ì¤¿¡£
-\fIstruct vm86_struct\fP ¤ÎÄêµÁ¤Ï 1.1.8 ¤È 1.1.9 ¤ÇÊѹ¹¤µ¤ì¤¿¡£
+が導入された。
+\fIstruct vm86_struct\fP の定義は 1.1.8 と 1.1.9 で変更された。
.LP
-¤³¤ì¤é¤Î¥³¡¼¥ë¤Ë¤è¤Ã¤Æ¥×¥í¥»¥¹¤Ï VM86 ¥â¡¼¥É
-(Intel ¤Îʸ½ñ¤Ç¤Ï²¾ÁÛ 8086 ¥â¡¼¥É) ¤Ø¤È°Ü¹Ô¤¹¤ë¡£
-¤³¤ì¤é¤Î¥³¡¼¥ë¤Ï
+これらのコールによってプロセスは VM86 モード
+(Intel の文書では仮想 8086 モード) へと移行する。
+これらのコールは
.B dosemu
-¤Ç»ÈÍѤµ¤ì¤ë¡£
+で使用される。
.PP
-VM86 ¥â¡¼¥É¤Ï¥×¥í¥Æ¥¯¥È¥â¡¼¥É¥¿¥¹¥¯¤Ë¤ª¤±¤ë
-¥ê¥¢¥ë¥â¡¼¥É¤Î¥¨¥ß¥å¥ì¡¼¥·¥ç¥ó¤Ç¤¢¤ë¡£
-.SH ÊÖ¤êÃÍ
-À®¸ù¤·¤¿¾ì¹ç¤Ï 0 ¤òÊÖ¤¹¡£¼ºÇÔ¤·¤¿¾ì¹ç¤Ï \-1 ¤òÊÖ¤·¡¢
+VM86 モードはプロテクトモードタスクにおける
+リアルモードのエミュレーションである。
+.SH 返り値
+成功した場合は 0 を返す。失敗した場合は \-1 を返し、
.I errno
-¤¬¥¨¥é¡¼¤ÎÆâÍƤ˽¾¤Ã¤ÆÀßÄꤵ¤ì¤ë¡£
-.SH ¥¨¥é¡¼
+がエラーの内容に従って設定される。
+.SH ã\82¨ã\83©ã\83¼
.TP
.B EFAULT
-¤³¤ÎÊÖ¤êÃÍ¤Ï i386 ¸ÇͤΤâ¤Î¤Ç¤¢¤ê¡¢
-¥æ¡¼¥¶¡¼¶õ´Ö¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ëºÝ¤ËÌäÂ꤬¤¢¤Ã¤¿¤³¤È¤ò¼¨¤¹¡£
+この返り値は i386 固有のものであり、
+ユーザー空間のデータを取得する際に問題があったことを示す。
.TP
.B ENOSYS
-¤³¤ÎÊÖ¤êÃͤϡ¢¤³¤Î¥³¡¼¥ë¤¬¸½ºß¤Î¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò¼¨¤¹¡£
+この返り値は、このコールが現在のアーキテクチャで実装されていないことを示す。
.TP
.B EPERM
-Êݸ¤µ¤ì¤¿¥«¡¼¥Í¥ë¥¹¥¿¥Ã¥¯¤¬´û¤Ë¸ºß¤·¤Æ¤¤¤ë¡£(¤³¤ì¤Ï¥«¡¼¥Í¥ë¤¬Ä̾ï¤Î
-¾õÂ֤Ǥ¢¤ë¤«¤ò¥Á¥§¥Ã¥¯¤·¤Æ¤¤¤ë¡£Êݸ¤µ¤ì¤¿¥¹¥¿¥Ã¥¯¤Ï vm86 ¥â¡¼¥É¤Ç
-¤·¤«Â¸ºß¤·¤Ê¤¤¡£)
-.SH ½àµò
-¤³¤Î´Ø¿ô¤Ï 32 ¥Ó¥Ã¥È Intel ¥×¥í¥»¥Ã¥µ¾å¤Î Linux ÆÃͤδؿô¤Ç¤¢¤ê¡¢
-°Ü¿¢¤ò°Õ¿Þ¤·¤¿¥×¥í¥°¥é¥à¤Ç¤Ï»ÈÍѤ¹¤Ù¤¤Ç¤Ê¤¤¡£
+保存されたカーネルスタックが既に存在している。(これはカーネルが通常の
+状態であるかをチェックしている。保存されたスタックは vm86 モードで
+しか存在しない。)
+.SH 準拠
+この関数は 32 ビット Intel プロセッサ上の Linux 特有の関数であり、
+移植を意図したプログラムでは使用すべきでない。