-.\" Hey Emacs! This file is -*- nroff -*- source.
-.\"
.\" Copyright (c) 1993 Michael Haardt
.\" (michael@moria.de)
.\" Fri Apr 2 11:32:09 MET DST 1993
.\"
+.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
-.\" License along with this manual; if not, write to the Free
-.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
-.\" USA.
+.\" License along with this manual; if not, see
+.\" <http://www.gnu.org/licenses/>.
+.\" %%%LICENSE_END
.\"
.\" Modified Sat Jul 24 15:12:05 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified Tue Aug 1 16:27 1995 by Jochen Karrer
.\" Modified, 27 May 2004, Michael Kerrisk <mtk.manpages@gmail.com>
.\" Added notes on capability requirements
.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.\"
.\" Japanese Version Copyright (c) 1997 HORIMOTO Masafumi
.\" all rights reserved.
.\" Translated 1997-09-11, HORIMOTO Masafumi
.\" Updated 2003-10-12, Kentaro Shirakata <argrath@ub32.org>
.\" Updated 2005-02-24, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
.\" Updated 2007-01-07, Akihiro MOTOKI, catch up to LDP v2.43
+.\" Updated 2013-05-01, Akihiro MOTOKI <amotoki@gmail.com>
.\"
-.TH IOPERM 2 2007-06-15 "Linux" "Linux Programmer's Manual"
-.SH ̾Á°
-ioperm \- ¥Ý¡¼¥È¤ÎÆþ½ÐÎϵö²Ä¤òÀßÄꤹ¤ë
-.SH ½ñ¼°
-.B #include <unistd.h>
-/* for libc5 */
+.TH IOPERM 2 2013\-03\-12 Linux "Linux Programmer's Manual"
+.SH 名前
+ioperm \- ポートの入出力許可を設定する
+.SH 書式
+\fB#include <unistd.h>\fP /* for libc5 */
.br
-.B #include <sys/io.h>
-/* for glibc */
+\fB#include <sys/io.h>\fP /* for glibc */
.sp
-.BI "int ioperm(unsigned long " from ", unsigned long " num ", int " turn_on );
-.SH ÀâÌÀ
-.BR ioperm ()
-¤Ï¡¢°ú¤¿ô \fIfrom\fP ¤Î I/O ¥Ý¡¼¥È¥¢¥É¥ì¥¹¤«¤é
-\fInum\fP ¥Ð¥¤¥Èʬ¤ÎÎΰè¤ËÂФ¹¤ë¡¢¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Î
-¥¢¥¯¥»¥¹µö²Ä¥Ó¥Ã¥È¤ò¡¢\fIturn_on\fP ¤ËÀßÄꤹ¤ë¡£
-\fIturn_on\fP ¤¬ 0 °Ê³°¤Î¾ì¹ç¡¢¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤ÏÆø¢
-.RB ( CAP_SYS_RAWIO )
-¤ò»ý¤Ã¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
+\fBint ioperm(unsigned long \fP\fIfrom\fP\fB, unsigned long \fP\fInum\fP\fB, int
+\fP\fIturn_on\fP\fB);\fP
+.SH 説明
+\fBioperm\fP() は、引き数 \fIfrom\fP の I/O ポートアドレスから \fInum\fP
+ビット分の領域に対する、呼び出し元スレッドのアクセス許可ビットを設定する。 \fIturn_on\fP が 0
+以外の場合、指定されたビットに対応する許可が有効になる。 \fIturn_on\fP が 0 以外の場合、呼び出し元プロセスは特権
+(\fBCAP_SYS_RAWIO\fP) を持っていなければならない。
-.\" FIXME is the following ("Only the first 0x3ff I/O ports can be
-.\" specified in this manner") still true? Looking at changes in
-.\" include/asm-i386/processor.h between 2.4 and 2.6 suggests
-.\" that the limit is different in 2.6.
-¤³¤ÎÊýË¡¤ÇÀßÄê¤Ç¤¤ë¤Î¤Ï 0x3ff ÈÖÃϤޤǤΠI/O¥Ý¡¼¥È¤Ë¸Â¤é¤ì¤ë¡£
-¤³¤ì¤è¤ê¤âÂ礤ʥ¢¥É¥ì¥¹¤Î¥Ý¡¼¥È¤ËÂФ·¤Æ¤Ï
-.BR iopl (2)
-´Ø¿ô¤ò»È¤ï¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
+Linux 2.6.8 より前のバージョンでは、この方法で設定できるのは 0x3ff 番地までの
+I/Oポートに限られていた。これよりも大きなアドレスのポートに対しては \fBiopl\fP(2) 関数を使わなければならなかった。Linux 2.6.8
+以降では、65,536 個の I/O ポートを指定できる。
-¥¢¥¯¥»¥¹¸¢¤Ï
-.BR fork (2)
-¤ÇºîÀ®¤µ¤ì¤¿»Ò¥×¥í¥»¥¹¤Ë¤Ï·Ñ¾µ¤µ¤ì¤Ê¤¤¡£
-.BR execve (2)
-¤ÎÁ°¸å¤Ç¥¢¥¯¥»¥¹¸¢¤ÏÊݸ¤µ¤ì¤ë¡£¤³¤Îµ¡Ç½¤Ï
-ÈóÆø¢¥×¥í¥°¥é¥à¤Ë¥Ý¡¼¥È¤Ø¤Î¥¢¥¯¥»¥¹¸¢¤ò
-Í¿¤¨¤ë¤Î¤Ë»ÈÍѤǤ¤ë¡£
+アクセス権は \fBfork\fP(2) で作成された子プロセスには継承されない。子プロセスでは、\fBfork\fP(2)
+の後で必要なアクセス権を有効にしなければならない。 \fBexecve\fP(2) の前後でアクセス権は保存される。この機能は
+非特権プログラムにポートへのアクセス権を 与えるのに使用できる。
-¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¤Û¤È¤ó¤É i386 ¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Î¤¿¤á¤À¤±¤Î¤â¤Î¤Ç¤¢¤ë¡£
-¤½¤Î¾¤Î¿¤¯¤Î¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ç¤Ï¸ºß¤·¤Ê¤¤¤«¡¢¾ï¤Ë¥¨¥é¡¼¤òÊÖ¤¹¡£
-.SH ÊÖ¤êÃÍ
-À®¸ù¤·¤¿¾ì¹ç¤Ë¤Ï 0 ¤òÊÖ¤¹¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ë \-1 ¤òÊÖ¤·¡¢
-.I errno
-¤ËŬÀÚ¤ÊÃͤòÀßÄꤹ¤ë¡£
-.SH ¥¨¥é¡¼
-.TP
-.B EINVAL
-.I from
-¤Þ¤¿¤Ï
-.I num
-¤ÎÃͤ¬ÉÔÀµ¤Ç¤¢¤ë¡£
-.TP
-.B EIO
-(PowerPC ¤Ç) ¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¡£
-.TP
-.B ENOMEM
+このシステムコールはほとんど i386 アーキテクチャのためだけのものである。 その他の多くのアーキテクチャでは存在しないか、常にエラーを返す。
+.SH 返り値
+成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。
+.SH エラー
+.TP
+\fBEINVAL\fP
+\fIfrom\fP または \fInum\fP の値が不正である。
+.TP
+\fBEIO\fP
+(PowerPC で) このシステムコールはサポートしていない。
+.TP
+\fBENOMEM\fP
.\" Could not allocate I/O bitmap.
-¥á¥â¥êÉÔ¡£
-.TP
-.B EPERM
-¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Ë½½Ê¬¤Ê¸¢¸Â¤¬¤Ê¤«¤Ã¤¿¡£
-.SH ½àµò
-.BR ioperm ()
-¤Ï Linux ÆÃͤδؿô¤Ç¤¢¤ê¡¢°Ü¿¢¤ò°Õ¿Þ¤·¤¿¥×¥í¥°¥é¥à¤Ç
-»ÈÍѤ·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
-.SH Ãí°Õ
-libc5 ¤Ç¤Ï¥·¥¹¥Æ¥à¥³¡¼¥ë¤È¤·¤Æ°·¤¤
-.I <unistd.h>
-¤Ë¥×¥í¥È¥¿¥¤¥×¤¬Â¸ºß¤·¤Æ¤¤¤ë¡£
-glibc1 ¤Ë¤Ï¥×¥í¥È¥¿¥¤¥×¤Ï¸ºß¤·¤Ê¤¤¡£
-glibc2 ¤Ï
-.I <sys/io.h>
-¤È
-.I <sys/perm.h>
-¤ÎξÊý¤Ë¥×¥í¥È¥¿¥¤¥×¤ò»ý¤Ã¤Æ¤¤¤ë¡£
-¸å¼Ô¤Ï i386 ¤Î¤ß¤ÇÍøÍѲÄǽ¤Ê¤Î¤Ç¡¢»ÈÍѤ¹¤Ù¤¤Ç¤Ï¤Ê¤¤¡£
-.SH ´ØÏ¢¹àÌÜ
-.BR iopl (2),
-.BR capabilities (7)
+メモリ不足。
+.TP
+\fBEPERM\fP
+呼び出し元スレッドに十分な権限がなかった。
+.SH 準拠
+\fBioperm\fP() は Linux 特有の関数であり、移植を意図したプログラムで 使用してはならない。
+.SH 注意
+\fI/proc/ioports\fP ファイルには、現在このシステムに割り当てられている I/O ポートが表示される。
+
+libc5 ではシステムコールとして扱い \fI<unistd.h>\fP にプロトタイプが存在している。 glibc1
+にはプロトタイプは存在しない。 glibc2 は \fI<sys/io.h>\fP と \fI<sys/perm.h>\fP
+の両方にプロトタイプを持っている。 後者は i386 のみで利用可能なので、使用すべきではない。
+.SH 関連項目
+\fBiopl\fP(2), \fBoutb\fP(2), \fBcapabilities\fP(7)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.54 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。