diff options
Diffstat (limited to 'ja_JP.eucJP/man/man2/open.2')
-rw-r--r-- | ja_JP.eucJP/man/man2/open.2 | 324 |
1 files changed, 0 insertions, 324 deletions
diff --git a/ja_JP.eucJP/man/man2/open.2 b/ja_JP.eucJP/man/man2/open.2 deleted file mode 100644 index 330d1be4d9..0000000000 --- a/ja_JP.eucJP/man/man2/open.2 +++ /dev/null @@ -1,324 +0,0 @@ -.\" Copyright (c) 1980, 1991, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)open.2 8.2 (Berkeley) 11/16/93 -.\" %FreeBSD: src/lib/libc/sys/open.2,v 1.11.2.8 2001/08/17 15:42:45 ru Exp % -.\" -.\" $FreeBSD: doc/ja_JP.eucJP/man/man2/open.2,v 1.9 2001/07/29 05:15:14 horikawa Exp $ -.Dd November 16, 1993 -.Dt OPEN 2 -.Os -.Sh 名称 -.Nm open -.Nd 読取りまたは書込み用にファイルをオープンする、または作成する -.Sh ライブラリ -.Lb libc -.Sh 書式 -.Fd #include <fcntl.h> -.Ft int -.Fn open "const char *path" "int flags" "..." -.Sh 解説 -.Fa path -によって指定されるファイルを、引数 -.Fa flags -によって指定されたように読取りまたは書込み -(またはその両方) 用にオープンし、 -そのファイル記述子を呼び出し元プロセスに返します。 -ファイルが存在しない場合にはファイルを -作成するように、 -.Fa flags -引数で指示できます -.Dv ( O_CREAT -フラグを指定する)。 -この場合、 -.Nm -には 3 番目の引数 -.Fa "mode_t mode" -が必要であり、ファイルは -.Xr chmod 2 -で説明されているようにモード -.Fa mode -で作成され、プロセスの umask 値によって修正されます -.Pf ( Xr umask 2 -を参照)。 -.Pp -指定されたフラグは次の値の論理和 -.\".Em or Ns 'ing -.Em ( or ) -で作成されます。 -.Pp -.Bd -literal -offset indent -compact -O_RDONLY 読取り専用でオープン -O_WRONLY 書込み専用でオープン -O_RDWR 読取りと書込み用にオープン -O_NONBLOCK オープンするときにブロックしない -O_APPEND 書込みのたびに末尾に追加する -O_CREAT ファイルが存在しない場合、作成する -O_TRUNC サイズを 0 に切り捨てる -O_EXCL 作成するファイルが既に存在した場合、エラーとする -O_SHLOCK 共有ロックを自動的に取得する -O_EXLOCK 排他的ロックを自動的に取得する -O_DIRECT キャッシュの効果を無くすまたは減らす -O_FSYNC 同期的に書き込む -O_NOFOLLOW シンボリックリンクを辿らない -.Ed -.Pp -.Dv O_APPEND -を設定してファイルをオープンすると、 -ファイルへの書込みはすべてファイルの末尾に追加されます。 -.Dv O_TRUNC -が指定されていてファイルが存在する場合、ファイルは長さ 0 に -切り捨てられます。 -.Dv O_EXCL -が -.Dv O_CREAT -とともに設定されていてファイルが既に存在する場合、 -.Fn open -はエラーを返します。これを使用して、 -簡単な排他的アクセスロッキングメカニズムを -実現できます。 -.Dv O_EXCL -が設定されていてパス名の最後の構成要素がシンボリックリンクの場合、 -たとえシンボリックリンクが存在しない名前を指していたとしても -.Fn open -は処理に失敗します。 -.Dv O_NONBLOCK -フラグが指定されていて -.Fn open -呼び出しの結果、プロセスが何らかの理由でブロックされると (たとえば、 -ダイアルアップ回線でキャリアを待っている場合)、 -.Fn open -は即座に戻ります。プロセスがオープンしたファイルに -最初に入出力しようとしたとき、プロセスはブロックします -(現時点では実装されていません)。 -.Pp -.Dv O_FSYNC -がマスクに使用された場合、 -すべての書き込みは直ちにディスクに書き込まれ、 -カーネルは書き込まれたデータをキャッシュせず、 -書き込むべきすべてのデータが完了するまでは -この記述子に対するすべての書き込みは戻りません。 -.Pp -.Dv O_NOFOLLOW -がマスクに使用された場合で -.Fn open -に渡された対象ファイルがシンボリックリンクの場合、 -.Fn open -は失敗します。 -.Pp -ファイルをオープンするときに、 -.Xr flock 2 -を使ったロックを得るには、共有ロックについては -.Dv O_SHLOCK 、 -排他的ロックについては -.Dv O_EXLOCK -を設定します。 -.Dv O_CREAT -でファイルを作成する場合、ロック要求が失敗すること -はありません (ただし、下層にあるファイルシステムが -ロックをサポートしている場合に限ります)。 -.Pp -読み書きにおけるキャッシュの効果を最小化もしくは無くすために -.Dv O_DIRECT -を使用可能です。 -システムは、読み書きするデータのキャッシングを避けようとします。 -データのキャッシングが避けられない場合、 -データのキャッシュに対する影響を最小化します。 -注意せずに使用すると、本フラグは劇的に性能を劣化させます。 -.Pp -正常に完了すると、 -.Fn open -は、ファイル記述子を示す負でない整数を返します。 -処理に失敗すると -1 を返します。ファイル内の現在の位置をマークする -ファイルポインタはファイルの先頭に設定されます。 -.Pp -新しいファイルが作成される場合、そのグループは -ファイルが含まれるディレクトリのグループに設定されます。 -.Pp -新しい記述子は -.Xr execve 2 -システムコールを通じてオープンされたままであるように設定されます。 -.Xr close 2 -と -.Xr fcntl 2 -を参照してください。 -.Pp -システムには、1 つのプロセスによって同時にオープンできる -ファイル記述子数に制限があります。 -.Xr getdtablesize 2 -は現在のシステム制限を返します。 -.Sh 実装に関する注 -非スレッドライブラリでは、 -.Fn open -は -.Va open -システムコールとして実装されています。 -.Pp -スレッドライブラリでは、 -.Va open -システムコールは -.Fn _thread_sys_open -にアセンブルされ、 -.Fn open -は、スレッドの再スケジュールを無効にし -.Fn _thread_sys_open -を呼び出す関数として実装されています。 -戻る前に、 -.Fn open -はスレッドの再スケジュールを有効にします。 -.Sh 戻り値 -正常に完了すると、 -.Fn open -はファイル記述子である負でない整数を返します。 -処理に失敗すると -1 が返され、エラーを示すために -.Va errno -が設定されます。 -.Sh エラー -指定のファイルは次の場合を除いてオープンされます。 -.Bl -tag -width Er -.It Bq Er ENOTDIR -パスの構成要素中にディレクトリ以外のものが含まれています。 -.It Bq Er ENAMETOOLONG -パス名の構成要素が 255 文字を越えているか、 -またはパス名全体が 1023 文字を越えています。 -.It Bq Er ENOENT -指定されたファイルが存在せず、 -.Dv O_CREAT -も設定されていません。 -.It Bq Er ENOENT -存在しなければならないパス名の構成要素が存在しません。 -.It Bq Er EACCES -指定されたパスには、検索が許可されていないディレクトリが含まれています。 -.It Bq Er EACCES -要求されたパーミッション (読取りまたは書込み用、または両方) が -指定のフラグに拒否されています。 -.It Bq Er EACCES -.Dv O_CREAT -が指定されていて、ファイルが存在せず、かつファイルを作成する -ディレクトリに書込み許可がありません。 -.It Bq Er ELOOP -パス名を変換するときに検出されたシンボリックリンクが多すぎます。 -.It Bq Er EISDIR -指定のファイルがディレクトリであり、これを書込み用に -オープンするように引数が指定されています。 -.It Bq Er EROFS -指定されたファイルは読取り専用ファイルシステム上にあり、 -そのファイルを修正しようとしています。 -.It Bq Er EMFILE -プロセスは、すでにオープンできるファイル記述子に関する -制限に達しています。 -.It Bq Er ENFILE -システムファイルテーブルが満杯です。 -.It Bq Er EMLINK -.Dv O_NOFOLLOW -が指定され、対象がシンボリックリンクです。 -.It Bq Er ENXIO -指定のファイルはキャラクタ型特殊ファイルまたはブロック型特殊 -ファイルであり、この特殊ファイルに結び付けられたデバイスは -存在していません。 -.It Bq Er ENXIO -指定されたファイルは FIFO パイプで、どのプロセスからも -読取り用にオープンされていないにも関らず、 -これを書込み用にオープンしようとしました。 -.It Bq Er EINTR -.Fn open -操作がシグナルによって割り込みされました。 -.It Bq Er EOPNOTSUPP -.Dv O_SHLOCK -または -.Dv O_EXLOCK -が指定されましたが、下層となっているファイルシステムは -ロックをサポートしていません。 -.It Bq Er EWOULDBLOCK -.Dv O_NONBLOCK -と、 -.Dv O_SHLOCK -か -.Dv O_EXLOCK -のどちらかが指定されましたが、ファイルはロックされています。 -.It Bq Er ENOSPC -.Dv O_CREAT -が指定されていて、ファイルが存在せず、新しいファイル用のエントリを -配置中のディレクトリは、そのディレクトリを含むファイルシステムに -空間が残っていないため拡張できません。 -.It Bq Er ENOSPC -.Dv O_CREAT -が指定されていて、ファイルが存在せず、かつファイルが作成中の -ファイルシステム上に未使用の inode がありません。 -.It Bq Er EDQUOT -.Dv O_CREAT -が指定されていて、ファイルが存在せず、かつ新しいファイル用の -エントリを配置中のディレクトリは、そのディレクトリを含む -ファイルシステム上でディスクブロックの -ユーザのクォータが枯渇したために拡張できません。 -.It Bq Er EDQUOT -.Dv O_CREAT -が指定されていて、ファイルが存在せず、かつファイルを作成中の -ファイルシステム上で inode のユーザのクォータが枯渇しています。 -.It Bq Er EIO -ディレクトリエントリを作成中、または -.Dv O_CREAT -用の inode を割当て中に入出力エラーが発生しました。 -.It Bq Er ETXTBSY -ファイルは純粋な手続き (共有テキスト) ファイルで、 -.Fn open -が書込みアクセスを要求しましたが、ファイルは実行中です。 -.It Bq Er EFAULT -.Fa path -は、プロセスに割り当てられたアドレス空間の範囲外を指しています。 -.It Bq Er EEXIST -.Dv O_CREAT -と -.Dv O_EXCL -が指定されていて、ファイルが存在します。 -.It Bq Er EOPNOTSUPP -ソケットをオープンしようとしました (現時点では実装されていません)。 -.It Bq Er EINVAL -.Dv O_RDONLY , -.Dv O_WRONLY -および -.Dv O_RDWR -の不正な組合わせで記述子をオープンしようとしました。 -.El -.Sh 関連項目 -.Xr chmod 2 , -.Xr close 2 , -.Xr dup 2 , -.Xr getdtablesize 2 , -.Xr lseek 2 , -.Xr read 2 , -.Xr umask 2 , -.Xr write 2 -.Sh 歴史 -.Fn open -関数は -.At v6 -で登場しました。 |