aboutsummaryrefslogtreecommitdiff
path: root/documentation/manual-pages/ja/man9/make_dev.9
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/manual-pages/ja/man9/make_dev.9')
-rw-r--r--documentation/manual-pages/ja/man9/make_dev.9139
1 files changed, 139 insertions, 0 deletions
diff --git a/documentation/manual-pages/ja/man9/make_dev.9 b/documentation/manual-pages/ja/man9/make_dev.9
new file mode 100644
index 0000000000..bb1ba97c3f
--- /dev/null
+++ b/documentation/manual-pages/ja/man9/make_dev.9
@@ -0,0 +1,139 @@
+.\" Copyright (c) 1999 Chris Costello
+.\" 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.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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.
+.\"
+.\" %FreeBSD: src/share/man/man9/make_dev.9,v 1.15.4.1 2005/03/31 14:20:12 brueffer Exp %
+.\"
+.\" $FreeBSD$
+.Dd March 28, 2005
+.Os
+.Dt MAKE_DEV 9
+.Sh 名称
+.Nm make_dev ,
+.Nm make_dev_alias ,
+.Nm destroy_dev ,
+.Nm dev_depends
+.Nd デバイスのための
+.Vt cdev
+および DEVFS 登録の管理
+.Sh 書式
+.In sys/param.h
+.In sys/conf.h
+.Ft struct cdev
+.Fn make_dev "struct cdevsw *cdevsw" "int minor" "uid_t uid" "gid_t gid" "int perms" "const char *fmt" ...
+.Ft struct cdev
+.Fn make_dev_alias "struct cdev pdev" "const char *fmt" ...
+.Ft void
+.Fn destroy_dev "struct cdev dev"
+.Ft void
+.Fn dev_depends "struct cdev pdev" "struct cdev cdev"
+.Sh 解説
+.Fn make_dev
+関数は新しいデバイスのための
+.Fa cdev
+構造体を作成します。
+DEVFS が利用可能の場合には、新しいデバイスの存在も通知されます。
+そのデバイスは
+.Va uid
+によって所有され、
+.Va gid
+のグループに所有され、
+.Va name
+で指定される名前を持ちます。
+.Va perms
+に指定するファイルのパーミッションは
+.In sys/stat.h
+で定義されています。
+.Pp
+.Bd -literal -offset indent -compact
+#define S_IRWXU 0000700 /* 所有者の RWX マスク
+#define S_IRUSR 0000400 /* 所有者の R */
+#define S_IWUSR 0000200 /* 所有者の W */
+#define S_IXUSR 0000100 /* 所有者の X */
+
+#define S_IRWXG 0000070 /* グループの RWX マスク */
+#define S_IRGRP 0000040 /* グループの R */
+#define S_IWGRP 0000020 /* グループの W */
+#define S_IXGRP 0000010 /* グループの X */
+
+#define S_IRWXO 0000007 /* その他の RWX マスク */
+#define S_IROTH 0000004 /* その他の R */
+#define S_IWOTH 0000002 /* その他の W */
+#define S_IXOTH 0000001 /* その他の X */
+
+#define S_ISUID 0004000 /* 実行時にユーザ ID を設定 */
+#define S_ISGID 0002000 /* 実行時にグループ ID を設定 */
+#define S_ISVTX 0001000 /* スティッキビット */
+#ifndef _POSIX_SOURCE
+#define S_ISTXT 0001000
+#endif
+.Ed
+.Pp
+.Fn make_dev_alias
+関数は
+.Fn make_dev
+から返された
+.Ft cdev
+をとり、このデバイスのための別の名前 (別名) を作成します。
+.Fn make_dev
+の呼出しの前の
+.Fn make_dev_alias
+の呼出しは、誤りです。
+.Pp
+.Fn destroy_dev
+関数は
+.Fn make_dev
+から返された
+.Fa cdev
+をとり、そのデバイスの登録を削除します。
+.Fn make_dev_alias
+で作成されたデバイスで
+.Fn destroy_dev
+を呼出さないでください。
+.Pp
+.Fn dev_depends
+関数は 2 つのデバイス間の親子関係を確立します。
+このネット効果は、親デバイスの
+.Fn destroy_dev
+は、もしあれば、結果としてその子デバイスの破壊に終わります。
+1 つのデバイスは同時に親にも子にもなれ、
+そのため、完全な階層構造を構築することが可能です。
+.Sh 関連項目
+.Xr devfs 5
+.Sh 歴史
+.Fn make_dev
+および
+.Fn destroy_dev
+関数は
+.Fx 4.0
+ではじめて登場しました。
+関数
+.Fn make_dev_alias
+は
+.Fx 4.1
+ではじめて登場しました。
+関数
+.Fn dev_depends
+は
+.Fx 5.0
+ではじめて登場しました。