X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=release%2Fman2%2Fiopl.2;h=fa31bad18e9dc098b0f0a9667f64070bcdf39cfc;hb=d9c7ccdf60b8401efe575aaca045e6d6ea3e9d3d;hp=98dc440cb1060a262c813fabf6087263517f8fe2;hpb=633a2252e0be3c867dce264a180a89ce8181d36f;p=linuxjm%2FLDP_man-pages.git diff --git a/release/man2/iopl.2 b/release/man2/iopl.2 index 98dc440c..fa31bad1 100644 --- a/release/man2/iopl.2 +++ b/release/man2/iopl.2 @@ -1,8 +1,7 @@ -.\" Hey Emacs! This file is -*- nroff -*- source. -.\" .\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu) .\" Portions extracted from linux/kernel/ioport.c (no copyright notice). .\" +.\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. @@ -22,6 +21,7 @@ .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. +.\" %%%LICENSE_END .\" .\" Modified Tue Aug 1 16:47 1995 by Jochen Karrer .\" @@ -30,80 +30,56 @@ .\" Modified, 27 May 2004, Michael Kerrisk .\" Added notes on capability requirements .\" -.\" Japanese Version Copyright (c) 1997 HORIMOTO Masafumi -.\" all rights reserved. -.\" Translated 1997-09-29, HORIMOTO Masafumi -.\" Modified 1999-04-03, HANATAKA Shinya -.\" Updated 2003-10-12, Kentaro Shirakata -.\" Updated 2005-02-24, Akihiro MOTOKI +.\"******************************************************************* +.\" +.\" This file was generated with po4a. Translate the source file. .\" -.TH IOPL 2 2004-05-27 "Linux" "Linux Programmer's Manual" -.SH ̾Á° -iopl \- I/O Æø¢¥ì¥Ù¥ë¤òÊѹ¹¤¹¤ë -.SH ½ñ¼° -.B #include +.\"******************************************************************* +.TH IOPL 2 2013\-03\-15 Linux "Linux Programmer's Manual" +.SH 名前 +iopl \- I/O 特権レベルを変更する +.SH 書式 +\fB#include \fP .sp -.BI "int iopl(int " level ); -.SH ÀâÌÀ -.BR iopl () -¤Ï¸Æ¤Ó½Ð¤·¸µ¤Î¥×¥í¥»¥¹¤Î I/O Æø¢¥ì¥Ù¥ë¤ò -.I level -¤Ç»ØÄꤷ¤¿ÃͤËÊѹ¹¤¹¤ë¡£ +\fBint iopl(int \fP\fIlevel\fP\fB);\fP +.SH 説明 +\fBiopl\fP() changes the I/O privilege level of the calling process, as +specified by the two least significant bits in \fIlevel\fP. -¤³¤Î´Ø¿ô¤Ï 8514 ¸ß´¹¤Î X ¥µ¡¼¥Ð¤ò Linux ¤ÇÆ°ºî¤µ¤»¤ë¤¿¤á¤ËɬÍפǤ¢¤ë¡£ -¤Ê¤¼¤Ê¤é¤³¤Î X ¥µ¡¼¥Ð¤Ï 65536 ¸Ä¤Î I/O ¥Ý¡¼¥ÈÁ´¤Æ¤Ø¤Î¥¢¥¯¥»¥¹¤òÍ׵᤹¤ë¤Î¤Ç -.BR ioperm (2) -´Ø¿ô¤Ç¤ÏÉÔ½½Ê¬¤À¤«¤é¤Ç¤¢¤ë¡£ +この関数は 8514 互換の X サーバを Linux で動作させるために必要である。 なぜならこの X サーバは 65536 個の I/O +ポート全てへのアクセスを要求するので \fBioperm\fP(2) 関数では不十分だからである。 -¤è¤ê¹â¤¤ I/O Æø¢¥ì¥Ù¥ë¤Ç¤ÎÆ°ºî¤ò¤µ¤»¤ë¤³¤È¤Ë¤è¤Ã¤Æ -I/O ¥Ý¡¼¥È¥¢¥¯¥»¥¹¤ÎÀ©¸Â¤ò²ò½ü¤¹¤ë¤³¤È¤Ë²Ã¤¨¤Æ¡¢¥×¥í¥»¥¹¤¬³ä¤ê¹þ¤ß¤ò -̵¸ú¤Ë¤¹¤ë¤³¤È¤â¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ë¡£¤³¤Îµ¡Ç½¤Ï»þ¤È¤·¤Æ¥·¥¹¥Æ¥à¤ÎÇ˲õ¤ò -¤â¤¿¤é¤¹¤Î¤Ç´«¤á¤é¤ì¤Ê¤¤¡£ +より高い I/O 特権レベルでの動作をさせることによって I/O ポートアクセスの制限を解除することに加えて、プロセスが割り込みを +無効にすることもできるようになる。この機能は時としてシステムの破壊を もたらすので勧められない。 -.BR fork (2) -¤ä -.BR exec (2) -¤ò¹Ô¤Ã¤¿¾ì¹ç¡¢Æø¢¤Ï·Ñ¾µ¤µ¤ì¤ë¡£ +\fBfork\fP(2) や \fBexec\fP(2) を行った場合、特権は継承される。 -Ä̾ï¤Î¥×¥í¥»¥¹¤Î I/O Æø¢¥ì¥Ù¥ë¤Ï 0 ¤Ç¤¢¤ë¡£ +通常のプロセスの I/O 特権レベルは 0 である。 -¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¤Û¤È¤ó¤É i386 ¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Î¤¿¤á¤À¤±¤Î¤â¤Î¤Ç¤¢¤ë¡£ -¤½¤Î¾¤Î¿¤¯¤Î¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ç¤Ï¸ºß¤·¤Ê¤¤¤«¡¢¾ï¤Ë¥¨¥é¡¼¤òÊÖ¤¹¡£ -.SH ÊÖ¤êÃÍ -À®¸ù¤·¤¿¾ì¹ç¤Ë¤Ï 0 ¤òÊÖ¤¹¡£¥¨¥é¡¼¤Î¾ì¹ç¤Ë¤Ï \-1 ¤òÊÖ¤·¡¢ -.I errno -¤ËŬÀÚ¤ÊÃͤ¬ÀßÄꤵ¤ì¤ë¡£ -.SH ¥¨¥é¡¼ -.TP -.B EINVAL -°ú¤­¿ô -.I level -¤¬ 3 ¤è¤êÂ礭¤¤¡£ -.TP -.B ENOSYS -¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£ -¸Æ¤Ó½Ð¤·¸µ¥×¥í¥»¥¹¤Ë -.BR iopl () -¤ò¸Æ¤Ó½Ð¤¹¤Î¤Ë½½Ê¬¤Ê¸¢¸Â¤¬¤Ê¤«¤Ã¤¿¡£ -.BR iopl () -¤ò¸Æ¤Ó½Ð¤¹¤Ë¤Ï -.B CAP_SYS_RAWIO -¥±¡¼¥Ñ¥Ó¥ê¥Æ¥£¤¬É¬ÍפǤ¢¤ë¡£ -.SH ½àµò -.BR iopl () -¤Ï Linux ÆÃÍ­¤Î´Ø¿ô¤Ç¤¢¤ê¡¢°Ü¿¢¤ò°Õ¿Þ¤·¤¿¥×¥í¥°¥é¥à¤Ç -»ÈÍѤ·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£ -.SH Ãí°Õ -libc5 ¤Ç¤Ï¥·¥¹¥Æ¥à¥³¡¼¥ë¤È¤·¤Æ°·¤¤ -.I -¤Ë¥×¥í¥È¥¿¥¤¥×¤¬Â¸ºß¤·¤Æ¤¤¤ë¡£ -glibc1 ¤Ë¤Ï¥×¥í¥È¥¿¥¤¥×¤Ï¸ºß¤·¤Æ¤¤¤Ê¤¤¡£ -glibc2 ¤Ï -.I -¤È -.I -¤ÎξÊý¤Ë¥×¥í¥È¥¿¥¤¥×¤ò»ý¤Ã¤Æ¤¤¤ë¡£ -¸å¼Ô¤Ï i386 ¤Î¤ß¤ÇÍøÍѲÄǽ¤Ê¤Î¤Ç¡¢»ÈÍѤ¹¤Ù¤­¤Ç¤Ï¤Ê¤¤¡£ -.SH ´ØÏ¢¹àÌÜ -.BR ioperm (2), -.BR capabilities (7) +このシステムコールはほとんど i386 アーキテクチャのためだけのものである。 その他の多くのアーキテクチャでは存在しないか、常にエラーを返す。 +.SH 返り値 +成功した場合は 0 が返される。エラーの場合は \-1 が返され、 \fIerrno\fP が適切に設定される。 +.SH エラー +.TP +\fBEINVAL\fP +引き数 \fIlevel\fP が 3 より大きい。 +.TP +\fBENOSYS\fP +このシステムコールは実装されていない。 +.TP +\fBEPERM\fP +The calling process has insufficient privilege to call \fBiopl\fP(); the +\fBCAP_SYS_RAWIO\fP capability is required to raise the I/O privilege level +above its current value. +.SH 準拠 +\fBipc\fP() は Linux 特有であり、 移植を意図したプログラムでは 使用してはいけない。 +.SH 注意 +libc5 ではシステムコールとして扱い \fI\fP にプロトタイプが存在している。 glibc1 +にはプロトタイプは存在していない。 glibc2 は \fI\fP と \fI\fP +の両方にプロトタイプを持っている。 後者は i386 のみで利用可能なので、使用すべきではない。 +.SH 関連項目 +\fBioperm\fP(2), \fBoutb\fP(2), \fBcapabilities\fP(7) +.SH この文書について +この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部 +である。プロジェクトの説明とバグ報告に関する情報は +http://www.kernel.org/doc/man\-pages/ に書かれている。