FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | 書式 | 解説 | 戻り値 | 使用例 | 関連項目 | 作者
G_BIO(9)               FreeBSD カーネル開発者マニュアル               G_BIO(9)

名称
     g_new_bio, g_clone_bio, g_destroy_bio, g_print_bio, g_reset_bio -- GEOM
     bio 制御関数

書式
     #include <sys/bio.h>
     #include <geom/geom.h>

     struct bio *
     g_new_bio(void);

     struct bio *
     g_alloc_bio(void);

     struct bio *
     g_clone_bio(struct bio *bp);

     struct bio *
     g_duplicate_bio(struct bio *bp);

     void
     g_destroy_bio(struct bio *bp);

     void
     g_print_bio(struct bio *bp);

     void
     g_reset_bio(struct bio *bp);

解説
     struct bio は I/O 要求を表現するために GEOM によって使用され、最も重要な
     フィールドは次で説明されます:

     bio_cmd        I/O 要求コマンド。GEOM で利用可能な 5 つの I/O 要求があり
                    ます:

                    BIO_READ     読み込み要求。

                    BIO_WRITE    書き込み要求。

                    BIO_DELETE   特定の範囲のデータがもう使用されないで、基本
                                 的な技術サポートとして、それを消すか、または
                                 解放することができることを示します。関連ブ
                                 ロックを消すように準備することができ、暗号デ
                                 バイスが攻撃に利用可能なデータの量を減少させ
                                 るための範囲にランダムビットを満たしたいかも
                                 しれません。

                    BIO_GETATTR  特定のプロバイダかパスで帯域外の属性を検査し
                                 て操作します。属性は、ASCII 文字列によって名
                                 前が付けられ bio_attribute フィールドに格納さ
                                 れます。

                    BIO_FLUSH    それらの書き込みキャッシュをフラッシュするた
                                 めに基本的なプロバイダに伝えます。

     bio_flags      利用可能なフラグは次の通りです:

                    BIO_ERROR  要求は失敗しました (エラー値は bio_error フィー
                               ルドに格納されます)。

                    BIO_DONE   要求は終了しました。

     bio_cflags     コンシューマ (消費者) によってプライベートに使用。

     bio_pflags     プロバイダによってプライベートに使用。

     bio_offset     プロバイダへのオフセット。

     bio_data       データバッファへのポインタ。

     bio_error      BIO_ERROR が設定されるときのエラー値。

     bio_done       要求が終了するときに呼び出される関数へのポインタ。

     bio_driver1    プロバイダによってプライベートに使用。

     bio_driver2    プロバイダによってプライベートに使用。

     bio_caller1    コンシューマによってプライベートに使用。

     bio_caller2    コンシューマによってプライベートに使用。

     bio_attribute  BIO_GETATTR 要求のための属性文字列。

     bio_from       (bio_to フィールド (クラスでは通常読み込み専用) に格納され
                    たプロバイダにアタッチされた) 要求を使用するコンシューマ。

     bio_to         宛先プロバイダ (クラスでは通常読み込み専用)。

     bio_length     バイト単位の要の長さ。

     bio_completed  要求の前部から完了する必要はありませんが、完了したバイト
                    数。

     bio_children   bio クローン (クラスでは通常読み込み専用) の数。

     bio_inbed      終了した bio クローンの数。

     bio_parent     親の bio へのポインタ。

     g_new_bio() 関数は新しく、空の bio 構造体を割り付けます。

     g_alloc_bio() - g_new_bio() と同じですが、常に成功します (M_WAITOK malloc
     フラグで bio を割り付け)。

     g_clone_bio() 関数は、新しい bio 構造体を割り付けて、クローンへの引数とし
     て与えられた bio から次のフィールドをコピーします: bio_cmd, bio_length,
     bio_offset, bio_data, bio_attribute。クローンでのフィールド bio_parent は
     渡された bio を指し、渡された bio でフィールド bio_children は増加されま
     す。

     この関数は特定の geom のプロバイダを通して入るあらゆる要求に使用されるべ
     きです、そして、スケジュールされる必要性は減ります。適切な順序は次の通り
     です:

     1.   受信された struct bio のクローンです。
     2.   クローンを修正します。
     3.   それ自体のコンシューマでクローンをスケジュールします。

     g_duplicate_bio() - g_clone_bio() と同じですが、常に成功します (M_WAITOK
     malloc フラグで bio を割り付け)。

     g_destroy_bio() 関数は、与えられた bio 構造体の割り付けを解放して、破壊し
     ます。

     g_print_bio() 関数は (デバッグ目的のために) 与えられた bio 構造体に関する
     情報を印刷 (表示) します。

     g_reset_bio() 関数は、与えられた bio 構造体をその初期状態に戻すようにリ
     セットします。g_reset_bio() は、すべてのユーザの可視フィールドをそれらの
     初期の値に設定する間に、内部のデータ構造を保存します。複数のトランザク
     ションのために、g_new_bio(), g_alloc_bio(), g_clone_bio() または
     g_duplicate_bio() から取得される bio を再利用するとき、g_reset_bio() は、
     bzero() の代わりにトランザクションの間で呼び出されなければなりません。他
     の手段によって作成された bio 構造のために厳密に必要ではありませんが、
     g_reset_bio() は、トランザクションの間に、それを初期設定するために使用さ
     れるべきです。

戻り値
     g_new_bio() と g_clone_bio() 関数は割り付けられた bio へのポインタを返す
     か、またはエラーが起こったなら、NULL を返します。

使用例
     ``NULL-変換'' の実装は I/O 要求はクローンされ、少しの変更なしでスケジュー
     ルが減ることを意味します。構造体 example_softc のフィールド ex_consumer
     が操作したいと望んでいるプロバイダにアタッチされたコンシューマを含んでい
     ると仮定しましょう。

           void
           example_start(struct bio *bp)
           {
                   struct example_softc *sc;
                   struct bio *cbp;

                   printf("Request received: ");
                   g_print_bio(bp);
                   printf("\n");

                   sc = bp->bio_to->geom->softc;
                   if (sc == NULL) {
                           g_io_deliver(bp, ENXIO);
                           return;
                   }

                   /* 我々の bio 要求をクローンにする. */
                   cbp = g_clone_bio(bp);
                   if (cbp == NULL) {
                           g_io_deliver(bp, ENOMEM);
                           return;
                   }
                   cbp->bio_done = g_std_done;     /* 標準の 'done' 関数. */

                   /* OK, そのスケジュールを降ろします. */
                   /*
                    * コンシューマは我々の geom に 1 つのみあるなら, 同様に
                    * LIST_FIRST(&bp->bio_to->geom->consumer) から
                    * 取得することができます.
                    */
                   g_io_request(cbp, sc->ex_consumer);
           }

関連項目
     geom(4), DECLARE_GEOM_CLASS(9), g_access(9), g_attach(9), g_consumer(9),
     g_data(9), g_event(9), g_geom(9), g_provider(9), g_provider_by_name(9),
     g_wither_geom(9)

作者
     このマニュアルページは、Pawel Jakub Dawidek <pjd@FreeBSD.org> によって書
     かれました。

FreeBSD 11.2                      Mar 7, 2018                     FreeBSD 11.2

Table of Contents

FreeBSD マニュアル検索