スポンサーリンク

CONFIG(8) FreeBSD システム管理者マニュアル CONFIG(8)

名称

config − システムを構築するために必要なファイルの作成

書式

config [−gp] [−d destdir] SYSTEM_NAME

解説

これは古いバージョンの config ユーティリティです。このプログラムは、古い オートコンフィギュレーションスキームを理解します。このスキームは HP300, i386, DECstation やその派生プラットフォームにて使用されます。新しいバー ジョンの config は SPARC プラットフォームで使用されます。あなたが使用して いるアーキテクチャに適合したバージョンの config のみがあなたのマシンにイ ンストールされているでしょう。

config ユーティリティは、システムの構成を記述した設定ファイル SYSTEM_NAME にもとづいてシステムを構築するために必要なファイルを作成します。別のファ イルが、 config に対し、システム生成に必要なファイルと、構成依存ファイル セットにより追加されるファイルとを指示します。構成依存ファイルセットは、 固有マシン用代替ファイルを指定します (以降に示す 関連ファイルを参照)。

オプションとオペランドしては以下のものがあります:

       −d destdir

デフォルトの出力ディレクトリの代わりに、 destdir に出力しま す。 config は与えられたディレクトリに SYSTEM_NAME を追加し ないことに注意してください。

−g
システムのデバッグのための設定をします。

−p
プロファイリングを行うシステムを構築します。プロファイルを行 うものは例えば kgmon(8)gprof(1) などです。 −p オプション を 2 度以上指定すると、 config はより詳細なプロファイリング を行うシステムを構築します。

SYSTEM_NAME
SYSTEM_NAME
はシステム設定ファイルの名前であり、システム設定 ファイルにはデバイスの仕様、構築するシステムのオプション、そ の他のシステムパラメータの記述をします。

config ユーティリティはシステムソースの conf サブディレクトリで起動します (通常 /sys/ARCH/conf) 。ただし ARCH には FreeBSD がサポートしているアーキ テクチャの一つが入ります。 config ユーティリティは必要により ../compile/SYSTEM_NAME か、または −d オプションで指定されたディレクトリを 作成し、そこにすべての出力ファイルを置きます。 config の出力は多くのファ イルです; i386 の場合は次のようなファイルになります: ioconf.c はシステム に接続された I/O デバイスの記述です; Makefilemake(1) がシステム構築に 使用するファイルです; ヘッダファイルはシステムに組み込まれる多くのデバイ スに関する定義です。

config の実行後は、 ‘‘make depend’’ を Makefile が作成されたディレクトリ で実行する必要があります。 config ユーティリティは正常終了すると、これを 促すメッセージ表示を行います。

config が、これとは異なるエラーメッセージ表示を行った場合には、設定ファイ ルの記述の誤りを修正し、再度 config を実行する必要があります。コンフィ ギュレーションでエラーとなったシステムをコンパイルしようとしても、おそら く失敗するでしょう。

設定ファイル中に options INCLUDE_CONFIG_FILE を指定した場合、該当ファイル 全体が作成されるカーネルに埋め込まれます。これは、 strings(1) によって該 当ファイルをカーネルから引き出す事が出来ることを意味します: 構成情報を抽 出するには以下のコマンドを使用してください:

strings -n 3 kernel | sed -n ’s/^___//p’

デバッグカーネル

‘‘デバッグ’’ カーネルをコンパイルすることはシステムにひどく負荷を掛けるた め、伝統的な BSD カーネルはシンボルを除いてコンパイルされてきました。デ バッグカーネルは全てのソースファイルの完全なシンボルを持っているため、経 験を積んだカーネルプログラマが問題の原因を解析できるようになります。 4.4BSD−Lite 以前からあったデバッガは通常のカーネルからはあまり情報を見つ けられませんでした; gdb(1) は通常のカーネルからはほとんど情報を得ることは できず、意義のある解析を行なうには、デバッグカーネルが必要です。

歴史と時間、スペースの問題で、 FreeBSD はデフォルトではデバッグカーネルを 構築しません。デバッグカーネルは構築に 30% 近く長く掛かり、デバッグ用でな いカーネルでは約 6 MB で済むところを、構築用ディレクトリに約 30 MB のディ スク容量を必要とします。デバッグカーネルはデバッグ用でないカーネルが約 2MB であるのに対して、約 11 MB のサイズになります。このスペースはルート ファイルシステムと動作時のメモリの両方に効いてきます。デバッグカーネルを 作るには −g オプションを使います。このオプションを用いると、 config は カーネル構築ディレクトリに 2 つのファイルを構築します:

 kernel.debug が完全なデバッグカーネルです。

kernel はカーネルのデバッグシンボルを削除したコピーです。このカーネル は通常のデバッグ用でないカーネルと同じ物です。

現在はデバッグカーネルをインストールしてブートする意義はあまりありませ ん。なぜならシンボルを利用できるツールはオンラインでは動かないためです。 それゆえ、デバッグカーネルをインストールするには 2 つのオプションがありま す。

‘‘make install’’ kernel をルートファイルシステムにインストールしま す。

‘‘make install.debug’’ kernel.debug をルートファイルシステムにインス トールします。

関連ファイル

       /sys/conf/files

システム生成に必要な共通のファイルのリスト
/sys/conf/Makefile.ARCH
ARCH
用の一般的な makefile
/sys/conf/files.ARCH
ARCH
特有のファイルのリスト
/sys/ARCH/compile/SYSTEM_NAME
ARCH
上の SYSTEM_NAME システム固有のデフォ ルトカーネル構築ディレクトリ

関連項目

config(5)

セクション 4 にある、デバイスのマニュアルの 書式の部分。

       Building 4.3 BSD UNIX System with Config.

バグ

エラーメッセージにおいて報告される行番号は 1 行ずれます。

歴史

config ユーティリティは 4.1BSD から登場しました。

FreeBSD 10.0 July 4, 2001 FreeBSD 10.0

スポンサーリンク