日本語 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
ACPI(4) FreeBSD カーネルインタフェースマニュアル ACPI(4) 名称 acpi -- 高度な設定と電源管理サポート 書式 device acpi options ACPI_DEBUG options DDB 解説 acpi ドライバは、Intel/Microsoft/Compaq/Toshiba ACPI 規格のサポートを行い ます。このサポートは、電源管理 (APM に取って代わる) と他の機能と同様に、 (PnP と PCI BIOS に取って代わる) プラットフォームハードウェア発見を含んで います ACPI コアサポートは、Intel の ACPI CA 参照実装によって提供されま す。 acpi ドライバは、loader(8) によって自動的にロードされ、ACPI が強制的であ るプラットフォームでは、カーネル中に組み込まれるべきでないことに注意して ください。 SYSCTL 変数 acpi ドライバは、ユーザの介入なしで電源管理を提供することを目的としていま す。デフォルト設定が最適でないなら、acpi の振る舞いを変更するか、またはモ ニタするために、次の sysctl を使用することができます。いくつかの変数は、 与えられたハードウェアが (hw.acpi.acline のような) それらの変数をサポート する場合のみ、利用可能であることに注意してください。 debug.acpi.enable_debug_objects options ACPI_DEBUG なしで Debug オブジェクトのダンプを有効にしま す。デフォルトは、0 で、Debug オブジェクトを無視します。 dev.cpu.N.cx_usage それぞれのスリープ状態の総使用のパーセントをリストするデバッグ情 報です。dev.cpu.N.cx_lowest が変更されるとき、値は、リセットされ ます。 dev.cpu.N.cx_lowest CPU のアイドリングのために使用する最も低い Cx 状態です。スケ ジューリングアルゴリズムは、システムロード指示のように C1 とこの 設定の間の状態を選択します。ACPI CPU アイドリング制御を有効にする ためには、machdep.idle_available でリストされるなら、machdep.idle は、acpi に設定されるべきです。 hw.acpi.cpu.cx_supported サポートされた CPU のアイドル状態とマイクロ秒単位の遷移レイテンシ (待ち時間) のリストです。各状態には、タイプ (例えば、C2) がありま す。C1 は、ia32 HLT 命令と同等であり、C2 は、同じセマンティクスで より深いスリープを提供し、C3 は、最も深いスリープを提供しますが、 さらに、無効にされるバスマスタを必要とします。C3 より大きい状態 は、C3 状態と同じセマンティクスでさらなる省電力を提供します。より 深いスリープは、割り込みが発生するとき、より多い省電力を提供しま すが、遷移レイテンシが増加します。 dev.cpu.N.cx_method ファームウェアによる指示の通りに、サポートされた CPU アイドル状態 とそれらの遷移方法をリストします。 hw.acpi.acline AC ライン状態 (1 は、オンラインを意味し、0 は、バッテリパワーを意 味します)。 hw.acpi.disable_on_reboot リブートプロセスの間 ACPI を無効にします。ほとんどのシステムは、 ACPI がまだ有効にされている状態で見事にリブートしますが、あるもの は、最初にレガシ (古い) モードを出ることを必要とします。デフォル トは、0 で、ACPI を有効にした状態から抜けます。 hw.acpi.handle_reboot システムをリブートする ACPI Reset Register 機能を使用します。いく つかの新しいシステムは、このレジスタの使用を必要としますが、ある ものは、レガシリブートをサポートしている状態で動作しているだけで す。 hw.acpi.lid_switch_state ふたのスイッチ (すなわち、ノートブックのスクリーン) が閉じられる ときに入るために、状態 (S1-S5) をサスペンドします。デフォルトは、 ``NONE'' (何もしない) です。 hw.acpi.power_button_state 電源ボタンが押されるときに入るために、状態 (S1-S5) をサスペンドし ます。デフォルトは、S5 (うまく電源オフ) です。 hw.acpi.reset_video レジュームパスの間にリアルモードからビデオアダプタをリセットしま す。いくつかのシステムは、この助けを必要として、他のものは、それ が有効にされるなら、ディスプレイの問題があります。デフォルトは、0 (無効) です。 hw.acpi.s4bios システムが S4BIOS をサポートするかどうかを示します。これは、BIOS がシステムをディスクにサスペンドするすべての機能を取り扱うことが できることを意味します。そうでなければ、OS は、ディスク (S4OS) へ のサスペンドに対して責任があります。ほとんどの現在のシステムは、 S4BIOS をサポートしません。 hw.acpi.sleep_button_state スリープボタンが押されるときに入るために、状態 (S1-S5) をサスペン ドします。通常、これは、キーボード上の特有のファンクションボタン です。デフォルトは、S3 (RAM にサッスペンドする) です。 hw.acpi.sleep_delay システムをサスペンドする準備と実際にサスペンド状態に入ることの間 にこの数の秒数をウェート (待つ) します。デフォルトは、1 秒です。 hw.acpi.supported_sleep_state BIOS によってサポートされた状態 (S1-S5) をサスペンドします。 S1 RAM にクィックサスペンドします。CPU は、低電源状態に入り ますが、ほとんどの周辺機器は、実行したままです。 S2 S1 よりも低電源状態ですが、同じ基本的な特性があります。多 くのシステムで、サポートされていません。 S3 RAM にサスペンドします。ほとんどのデバイスは、電源がオフ され、システムは、メモリリフレッシュを除いて、実行を停止 します。 S4 ディスクにサスペンドします。すべてのデバイスは、電源オフ され、システムは、実行を停止します。再開するとき、システ ムは、まるでコールド (冷たい) 電源オンからのように開始し ます。S4BIOS が利用可能でないなら、FreeBSD によってまだサ ポートされていません。 S5 システムは、手際良くシャットダウンして、電源をオフしま す。 hw.acpi.verbose 様々な ACPI サブシステムから冗長な印刷 (表示) を有効にします。 調整変数 調整変数は、カーネルをブートする前に loader(8) プロンプトで設定するか、ま たは /boot/loader.conf に格納して設定することができます。また、これらの調 整変数の多くには、ブートの後のアクセスのための適合する sysctl(8) エントリ があります。 acpi_dsdt_load カスタム ACPI DSDT のロードを有効にします。 acpi_dsdt_name ローディングが有効であるなら、ロードする DSDT テーブルの名前で す。 debug.acpi.cpu_unordered ACPI プロセッサオブジェクトと CPU に一致する MADT を使用しませ ん。これは、一貫性のあるプロセッサ ID を使用しないバグの多い BIOS があるわずかなシステムで必要です。デフォルトは、0 (無効) です。 debug.acpi.disabled デバッグ目的の ACPI の一部を選択的に無効にします。 debug.acpi.interpreter_slack 厳密さが少ない ACPI 実装を有効にします。デフォルトは、1 で、一般 的な BIOS の誤りを無視します。 debug.acpi.max_threads ブート時に開始されるタスクスレッドの数を指定します。これを 1 に制 限することは、パラレル要求を扱うことができない様々な BIOS の周り の動作に役立つかもしれません。デフォルト値は、3 です。 debug.acpi.quirks あらゆる自動的な特異行動を完全に上書きします。 debug.acpi.resume_beep レジュームで PC スピーカを鳴らします。これは、サスペンド/レジュー ムの問題の診断を手助けできます。デフォルトは、0 (無効) です。 hint.acpi.0.disabled ACPI のすべてを無効にするためには、これに 1 を設定します。使用し ている BIOS がブラックリストに登録されているために ACPI が利用者 のシステムで無効にされたなら、テストのために ACPI を再有効にする ように 0 に設定することができます。 hw.acpi.ec.poll_timeout EC の応答を待つ、ミリ秒単位のディレイです。エラー "AE_NO_HARDWARE_RESPONSE" を得るなら、この数を増加させてみてくだ さい。 hw.acpi.host_mem_start PCI ホストブリッジへの仮定されたメモリ開始アドレスを上書きしま す。 hw.acpi.install_interface, hw.acpi.remove_interface `_OSI' 問い合わせメソッドの返り値を制御するために、(複数の) OS イ ンタフェースをインストールするか、または削除します。OS インタ フェースが hw.acpi.install_interface で指定されるとき、_OSI は、 それがサポートされるインタフェースのリターンについて問い合わせま す。逆に、OS インタフェースが hw.acpi.remove_interface で指定され るとき、_OSI は、それがサポートされないリターンについて問い合わせ ます。コンマで区切られたリストで複数のインタフェースを指定するこ とができ、任意の先導する空白類は、無視されます。例えば、"FreeBSD, Linux" は、2 つのインタフェース "FreeBSD" と "Linux" の有効なリス トです。 hw.acpi.reset_video レジュームパスで VESA リセット BIOS ベクトルの呼び出しを有効にし ます。これは、レジュームの後の LCD ホワイトアウトのような問題を 持っているいくつかのグラフィックカードの問題を解決することができ ます。デフォルトは、0 (無効) です。 hw.acpi.serialize_methods メソッドがパラレルで実行されてもそうでなくても上書きすることを許 します。本当にパラレルメソッド実行を操作できない AML のための "AE_ALREADY_EXISTS" エラーを修正する、連続している振る舞いによっ てこれを有効にします。これがリカーシブメソッドを中断するので、そ れは、デフォルトでオフです、そして、いくつかの IBM がそのような コードを使用します。 hw.acpi.verbose ACPI が行っていることに関する冗長なデバッグ情報をオンにします。 hw.pci.link.%s.%d.irq このリンクとインデックスに使用する割り込みを上書きします。デバイ スが acpi が有効にされている状態で動作していない場合にだけ、この 機能は、慎重に使用されるべきです。"%s" は、リンクの名前です (例え ば、LNKA)。"%d" は、リンクが複数の IRQ をサポートするとき、リソー スインデックスです。ほとんどの PCI リンクには、1 つの IRQ リソー スしかないので、次の形式が使用されるべきです。 hw.pci.link.%s.irq 使用する割り込みを上書きします。デバイスが acpi が有効にされてい る状態で動作していない場合にだけ、この機能は、慎重に使用されるべ きです。"%s" は、リンクの名前です (例えば、LNKA)。 ACPI を無効にする ACPI は、大変違う異なったプラットフォームでサポートされるので、多くのデ バッグと利用可能な調整オプションがあります。 acpi が有効にされている状態で働かないのが知られているマシンの、BIOS のブ ラックリストがあります。現在、ブラックリストは、acpi を無効にすべきかどう かだけを制御するだけです。将来、機能を制御する多くの精度があるようになる でしょう (それのための基盤は、既にあります)。 ブラックリストにあるマシンで (デバッグ目的などのために) acpi を有効にする ためには、カーネル環境変数 hint.acpi.0.disabled に 0 を設定します。これを 試みる前に、BIOS を ACPI と互換性があるより最近のバージョンにアップデート することを検討してください。 acpi ドライバを完全に無効にするためには、カーネル環境変数 hint.acpi.0.disabled に 1 を設定してください。 いくつかの i386 マシンは、全体的にいくつかの操作が失敗するか、すべての ACPI が無効となっています。他の i386 マシンは、ACPI が有効にされている状 態で失敗します。非 i386 プラットフォーム (すなわち、ACPI サポートが強制的 であるプラットフォーム) の ACPI のすべてか一部を無効にすると、システムが 機能しなくなる結果となるかもしれません。 acpi ドライバは、問題の場合に選択的に無効にされるかもしれない、1 組のドラ イバより成ります。サブドライバを無効にするには、カーネル環境変数 debug.acpi.disabled でそれをリストアップします。複数のエントリは、空白で 区切られたリストにすることができます。 無効にすることができる ACPI サブデバイスと機能は、次の通りです: all すべての ACPI の機能とデバイスを無効にします。 acad (デバイス) AC アダプタをサポートします。 bus (機能) サブデバイスをプローブしてアタッチします。無効にすれ ば、全体の ACPI 名前空間をスキャンするのを避けます。 children (機能) 標準の ACPI サブドライバと ACPI 名前空間に列挙された デバイスをアタッチします。これを無効にすることは、ACPI 名前 空間がまだスキャンされることを除いて、``bus'' を無効にする影 響と同様です。 button (デバイス) ACPI のボタンデバイス (通常電源とスリープボタン) をサポートします。 cmbat (デバイス) バッテリデバイスの制御メソッドです。 cpu (デバイス) CPU の省電力と速度設定機能をサポートします。 ec (デバイス) 組み込みプラットフォームコントローラで通信するた めに使われる ACPI 組み込み制御インタフェースをサポートしま す。 isa (デバイス) 通常、PCI バスの子供となる、ACPI 名前空間で定義さ れた ISA バスブリッジをサポートします。 lid (デバイス) 通常システムをスリープ状態とする、ACPI ラップトッ プのふたのスイッチをサポートします。 mwait (機能) Cx スリープ状態に入るために利用可能な x86 ベンダ特有 方法についてファームウェアに問い合わせません。一般的な I/O ベースの入口の方法のみを問い合わせ、使用します。ノブ (knob) は、ファームウェアによって満たされたテーブルの矛盾のまわりで 動作するために提供されます。 quirks (機能) クワーク (特異な行動) に敬意をはらいません。クワーク は、XSDT テーブルの OEM ベンダ名とリビジョン日付に基づいて ACPI 機能を自動的に無効にします。 pci (デバイス) ホストから PCI ブリッジをサポートします。 pci_link (機能) PCI 割り込みルーティングを実行します。 sysresource (デバイス) ACPI が要求するリソースを含む疑似デバイス。 thermal (デバイス) システム冷却と熱管理をサポートします。 timer (デバイス) ACPI 固定周波数タイマを使用するタイムカウンタを実 装します。 video (デバイス) agp(4) デバイスと衝突するかもしれない acpi_video(4) をサポートします。 また、カーネル環境変数 debug.acpi.avoid で避けられる領域のルートのフルパ スをリストすることによって、問題を起こすかもしれない ACPI 名前空間の部分 を避けることが可能です、子供のオブジェクトとすべては、名前空間のバス/子供 スキャンの間に、無視されます。ACPI CA コードは、避けられた領域に関してま だ知っています。 デバッグ出力 デバッグ出力を有効にするためには、acpi は、options ACPI_DEBUG でコンパイ ルされなければなりません。デバッグ出力は、レイヤとレベルを区別します。こ こで、レイヤは、ACPI サブシステムの構成要素であり、レベルは、デバッグ出力 の特定の種類です。 レイヤとレベルの両方は、レイヤは、debug.acpi.layer にレベルは、 debug.acpi.level でリストされる、空白類で切り離されたトークンのリストとし て指定されます、 最初のレイヤのセットは、ACPI-CA コンポーネントのためのもので、2 番目は、 FreeBSD ドライバのためのものです。ACPI-CA レイヤは、それらが参照するファ イルの接頭辞を含んで記述されています。サポートされるレイヤは、次の通りで す: ACPI_UTILITIES ユーティリティ関数 ("ut") ACPI_HARDWARE ハードウェアアクセス ("hw") ACPI_EVENTS イベントと GPE ("ev") ACPI_TABLES テーブルアクセス ("tb") ACPI_NAMESPACE 名前空間評価 ("ns") ACPI_PARSER AML パーサ (構文解析) ("ps") ACPI_DISPATCHER インタプリタ状態の内部表現 ("ds") ACPI_EXECUTER AML メソッドを実行する ("ex") ACPI_RESOURCES リソース構文解析 ("rs") ACPI_CA_DEBUGGER デバッガの実装 ("db", "dm") ACPI_OS_SERVICES ユーザモードサポートルーチン ("os") ACPI_CA_DISASSEMBLER 逆アセンブラの実装 (未使用) ACPI_ALL_COMPONENTS すべての上記の ACPI-CA コンポーネント ACPI_AC_ADAPTER AC アダプタドライバ ACPI_BATTERY コントロールメソッドバッテリドライバ ACPI_BUS ACPI, ISA と PCI バスドライバ ACPI_BUTTON 電源とスリープボタンドライバ ACPI_EC 組み込みコントローラドライバ ACPI_FAN ファンドライバ ACPI_OEM ホットキー、LED などのためのプラットフォーム特有の ドライバ ACPI_POWER 電源リソースドライバ ACPI_PROCESSOR CPU ドライバ ACPI_THERMAL 温度ゾーンドライバ ACPI_TIMER タイマドライバ ACPI_ALL_DRIVERS すべての上記の FreeBSD ACPI ドライバ サポートされるレベルは、次の通りです: ACPI_LV_INIT 初期化進行状況 ACPI_LV_DEBUG_OBJECT オブジェクトへの格納 ACPI_LV_INFO 一般的情報と進行状況 ACPI_LV_REPAIR あらかじめ定義された方法で共通の問題を修理します ACPI_LV_ALL_EXCEPTIONS すべての前記のレベル ACPI_LV_PARSE ACPI_LV_DISPATCH ACPI_LV_EXEC ACPI_LV_NAMES ACPI_LV_OPREGION ACPI_LV_BFIELD ACPI_LV_TABLES ACPI_LV_VALUES ACPI_LV_OBJECTS ACPI_LV_RESOURCES ACPI_LV_USER_REQUESTS ACPI_LV_PACKAGE ACPI_LV_VERBOSITY1 すべての前記のレベル ACPI_LV_ALLOCATIONS ACPI_LV_FUNCTIONS ACPI_LV_OPTIMIZATIONS ACPI_LV_VERBOSITY2 すべての前記のレベル ACPI_LV_ALL "ACPI_LV_VERBOSITY2" と同義語 ACPI_LV_MUTEX ACPI_LV_THREADS ACPI_LV_IO ACPI_LV_INTERRUPTS ACPI_LV_VERBOSITY3 すべての前記のレベル ACPI_LV_AML_DISASSEMBLE ACPI_LV_VERBOSE_INFO ACPI_LV_FULL_TABLES ACPI_LV_EVENTS ACPI_LV_VERBOSE すべての "ACPI_LV_VERBOSITY3" 後のレベル ACPI_LV_INIT_NAMES ACPI_LV_LOAD 適切なレイヤとレベル値の選択は、大量のデバッグ出力を避けるために重要で す。例えば、次の設定は、初期の情報を集める良い方法です。ACPI-CA とエ ラー、警告と進捗状況に関する基本情報を印刷 (表示) する、acpi ドライバの両 方のためのデバッグ出力を有効にします。 debug.acpi.layer="ACPI_ALL_COMPONENTS ACPI_ALL_DRIVERS" debug.acpi.level="ACPI_LV_ALL_EXCEPTIONS" ACPI CA サブシステムによるデバッグ出力は、小文字でモジュール名が前に付け られ、ソース行番号が続きます。FreeBSD のローカルコードからの出力は、同じ 形式で続きますが、モジュール名は、大文字にされます。 利用者の BIOS のバイトコードを上書きする ACPI は、ブート時にメモリイメージとして BIOS ベンダによって提供された AML (ACPI Machine Language (マシン言語)) というバイトコードを解釈します。時 々、AML コードは、マイクロソフト実装によって解析されるときに現れないバグ を含んでいます。FreeBSD は、そのような問題の回避方法、またはデバッグする ために利用者自身の AML コードを上書きする方法を提供します。利用者の DSDT と任意の SSDT テーブルのすべての AML も上書きされることに注意してくださ い。 利用者 AML コードをロードするためには、/boot/loader.conf を編集して、次の 行を入れなければなりません。 acpi_dsdt_load="YES" acpi_dsdt_name="/boot/acpi_dsdt.aml" # この名前は変更できます。 利用者の AML コードを準備するためには、acpidump(8) と iasl(8) ユーティリ ティ、および何らかの ACPI 知識を必要とします。 互換性 ACPI は、i386/ia32 と amd64 で見つけられ、サポートされます。 関連項目 kenv(1), acpi_thermal(4), device.hints(5), loader.conf(5), acpiconf(8), acpidump(8), config(8), iasl(8) Compaq Computer Corporation, Intel Corporation, Microsoft Corporation, Phoenix Technologies Ltd., and Toshiba Corporation, Advanced Configuration and Power Interface Specification, August 25, 2003, http://acpi.info/spec.htm. 作者 ACPI CA サブシステムは、Intel Architecture Labs によって開発されて保守さ れています。 次の人々は、FreeBSD の ACPI サブシステムに顕著な貢献を行いました: Michael Smith, Takanori Watanabe <takawata@jp.FreeBSD.org>, Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org>, Munehiro Matsuda, Nate Lawson, ACPI-jp メーリン グリスト <acpi-jp@jp.FreeBSD.org> と、多くの他の貢献者。 このマニュアルページは、Michael Smith <msmith@FreeBSD.org> によって書かれ ました。 バグ 多くの BIOS バージョンには、システムの不安定性、サスペンド/レジュームの中 断、またはデバイスが IRQ 経路制御 (ルーティング) 問題のための適切に動作す ることから防ぐことを引き起こすかもしれない重大なバグがあります。acpi の問 題が決定的になる前に利用者の BIOS をベンダから利用可能な最新版にアップグ レードしてください。 FreeBSD 11.4 May 9, 2015 FreeBSD 11.4