#author("2021-02-18T01:36:59+00:00","default:admin","admin") #author("2021-02-18T01:38:01+00:00","default:admin","admin") -[[Linuxドライバのはなし:http://www.silex.jp/blog/wireless/2015/08/linux.html]] -静的リンクされたモジュールはカーネルイメージ(vmlinux)の一部になる -動的リンクされるモジュールは拡張子 *.ko のファイルとしてファイルシステムの何処かに置き、必要なときにロードする形態を取る -カーネルのコンフィグレーション時に”Enable loadable module support”を有効にする *環境構築 [#l47cec53] -[[Armadillo640にてmodprobeを使うには?:https://armadillo.atmark-techno.com/forum/armadillo/3948]] **モジュール生成 [#zaaa8ffe] -[[カーネルモジュールの作り方:https://qiita.com/hana_shin/items/a412bc7b1023be807c82]] **実行環境 [#e50b9892] -以下のコマンドを実行 # apt-get install kmod *モジュールの有効化 [#efc98be3] **モジュールの有効化 [#b52284a7] -[[カーネルモジュールのロード、アンロード方法:https://qiita.com/hana_shin/items/e0e423dfd6fa271a6c78]] -動的リンクされるモジュールは拡張子 *.ko のファイルとして、/lib/modules/<KernelVersion> 下に置く -depmod コマンドを実行 *コマンド [#we40ca5d] **lsmod [#u61855ce] -[[【 lsmod 】コマンド――ロード済みのカーネルモジュールを一覧表示する:https://www.atmarkit.co.jp/ait/articles/1812/20/news032.html]] -[[lsmodコマンドについて詳しくまとめました 【Linuxコマンド集】:https://eng-entrance.com/linux-command-lsmod]] ***表示項目 [#e8b7c31d] -Module:モジュール名 -Size:モジュールのサイズ -Used by:依存しているモジュールの数と依存モジュール名 **modprobe [#x8858d61] -[[【 modprobe 】コマンド――カーネルモジュールのロード、アンロードを行う:https://www.atmarkit.co.jp/ait/articles/1812/27/news036.html]] -[[modprobe - システム管理コマンドの説明 - Linux コマンド集 一覧表:https://kazmax.zpp.jp/cmd/m/modprobe.8.html]] -modprobe は、カーネルモジュール(モジュール)の組み込み(ロード)と取り外し(アンロード)を行うコマンド -modprobe は、モジュールの依存関係を確認し、必要なモジュールがあれば同時に組み込むといった処理も行う -モジュールの組み込みには内部的に「insmod」コマンドを用いており、取り外しでは「rmmod」コマンドを使っている