日本語 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.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
MD(4) FreeBSD カーネルインタフェースマニュアル MD(4) 名称 md -- メモリディスク 書式 このドライバをカーネルにコンパイルするためには、次の行を利用者のカーネル 設定ファイルに置きます: device md もう一つの方法として、ブート時にモジュールとしてドライバをロードするため には、次の行を loader.conf(5) に置きます: geom_md_load="YES" 解説 md ドライバは、4 種類のメモリに裏付けされた仮想ディスクのサポートを行いま す: malloc malloc(9) を使用することで外部記憶装置を割り付けます。malloc 裏 付けがあるすべての md デバイスがバッケットクォータ毎の malloc を 共有しなければならないことを意味する、1 つの malloc-バッケットの みが使用されます。このクォータの正確なサイズは、特にシステムの RAM の量で異なります。正確な値は、vmstat(8) で決定することができ ます。 preload タイプ `md_image' で loader(8) によってロードされたモジュール は、外部記憶装置として使用されます。後方互換性のためにタイプ `mfs_root' も認識されます。loader.conf(5) のモジュールロードディ レクティブの記述を参照し、モジュール名がイメージファイルまたは module_path のファイルの名前への絶対パスであることに注意してくだ さい。 カーネルがオプション MD_ROOT で作成されるなら、最初に見つけられ たプレロードされたイメージは、ルートファイルシステムになります。 vnode 通常のファイルは、外部記憶装置として使用されます。実際の物理的な メディア上の面倒な回り道なしで ISO イメージのマウントを許しま す。 swap 外部記憶装置は、バッファメモリから割り付けられます。システムが厳 しいメモリ状況であるとき、ページは、スワップに押し出され、そうで なければ、それらは、動作しているメモリに滞在します。一般的に、 swap 裏内を使用することは、malloc 裏内の上で望ましいことです。 詳しくは、mdconfig(8) を参照してください。 使用例 ram ディススクまたは MD ファイルシステムでカーネルを作成するために、利用 者のカーネル設定には、次のオプションを必要とします: options MD_ROOT # MD は、潜在的に root # デバイスです options MD_ROOT_READONLY # root が書き込み可能なマウントを # 許可しません options MD_ROOT_SIZE=8192 # 8MB ram ディスク makeoptions MFS_IMAGE=/h/foo/ARM-MD options ROOTDEVNAME=\"ufs:md0\" /h/foo/ARM-MD のイメージは、各ブートの初期のイメージとしてロードされま す。使用するイメージを作成するには、mdconfig(8) マニュアルページにある、 ファイル裏打ちディスクを作成する方法に従ってください。また、他のツール は、NanoBSD のようなイメージを作成します。 ARM カーネルオプション armv6 と armv7 アーキテクチャにおいて、約 55 MiB より大きな MD_ROOT イ メージは、カーネルメモリの使用量と関連したいくつかの調整オプションを使用 してカスタムカーネルを構築することを必要とするかもしれません。 options LOCORE_MAP_MB=<num> これは、早期の初期化のステージの間にカーネルのためにどのくらいの メモリがマップされるかを設定します。値は、ルートイメージを含ん で、少なくともカーネルと同じくらいの大きさ + すべてのプリロードさ れたモジュールの大きさでなければなりません。それが物理的なメモリ の量を越えていない限り、この値を大きすぎるように設定することに不 利な面はありません。デフォルトは、64 MiB です。 options NKPT2PG=<num> これは、カーネルの初期化の間にあらかじめ割り付けるカーネルの L2 ページテーブルページの数を設定します。各 L2 ページは、カーネル空 間の 4 MiB をマップすることができます。値は、ルートイメージを含ん で、カーネルのマップするのに十分に大きさ + すべてのプリロードされ たモジュールでなければなりません。デフォルト値は、128 MiB にマッ プするために十分である、32 です。 options VM_KMEM_SIZE_SCALE=<num> これは、kmem_arena マップに専念するために、カーネル仮想アドレス (KVA) 空間の量を設定します。スケール値は、仮想ページへの物理的な 比率です。3 のデフォルト値は、システムの各 3 ページの物理的な RAM ごとに 1 ページの KVA を割り付けます。 ルートイメージを含んで、カーネルとモジュールは、KVA も消費しま す。大きなルートイメージとデフォルトのスケーリングの組み合わせ は、カーネルスタック、IO バッファと kmem_arena の一部ではない他の リソースを割り付けるために、十分な残りのアドレス空間がない、そん なに多くの KVA をあらかじめ割り付けます。過剰に割り付けられた kmem_arena 空間は、"cannot allocate kernel stack" (カーネルスタッ クを割り付けることができません) メッセージでユーザランドのプロセ スを開始するすることに明示的に失敗しそうです。 スケール値を非常に大きく設定することは、kmem_arena が小さすぎるの で、メモリを割り付けをカーネルが失敗する結果となり、失敗は、明示 するために重要な実行時間を必要とするかもしれません。経験的に、5 の値は、物理的な 2 GiB の RAM の 2 GiB でシステムの 200 MiB の ルートイメージに対してうまく動作します。 関連項目 gpart(8), loader(8), mdconfig(8), mdmfs(8), newfs(8), vmstat(8) 歴史 md ドライバは、PicoBSD と FreeBSD インストールプロセスで以前に使用された MFS 機能をきれいに置き換えるものとして FreeBSD 4.0 ではじめて登場しまし た。 md ドライバは、FreeBSD 5.0 で vn(4) ドライバを敵対的乗っ取りを行いまし た。 作者 md ドライバは、Poul-Henning Kamp <phk@FreeBSD.org> によって書かれました。 FreeBSD 13.2 January 8, 2020 FreeBSD 13.2