私たちのLinuxカーネルは2.6.31で、busyboxが組み込まれた組み込みMIPSプロセッサーで実行されています。
初期化スクリプト(rcS)はmdevを次のように開始します:
echo "/sbin/stbhotplug" > /proc/sys/kernel/hotplug
mdev -s
Linuxのユーティリティmdevが何をしているのか誰にも教えてもらえますか?
Stbhotplugはイーサネットインターフェイスを処理するスクリプトであるため、自動ホットプラグを行うように見えます。
また、与えられたrootfsにはコンソールデバイスしかありません。つまり、/dev/console
は/dev
の唯一のファイルです。
ただし、システムの実行中は、/dev
ディレクトリにデバイスファイルがいっぱいになります(/dev/mtd
など)。
私が尋ねる理由は、/dev/ubi_ctrl
が見つからない、または/dev/ubi1
が見つからないというエラーが時々発生するためです。
Linuxはどのように、またはいつこれらのデバイスを作成しますか?
ありがとう。
これが mdevプライマーへのリンク です。
mdevは、組み込みデバイスで使用するためのudevの軽量な代替品です。どちらも/dev
でのデバイスファイルの作成と、特定のイベントが発生したときのアクションの開始を処理します。
mdev
は基本的に、事前設定されたデバイスファイルのセットに対してmknod
を呼び出します。
選択肢がある場合は、代わりに使用します。
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
特別なdevtmpfsファイルシステムを/dev
に自動的にマウントし、モジュールがinsmod
に独自のデバイスファイルを自動的に作成できるようにします。次に例を示します。 https://stackoverflow.com/questions/ 5970595/how-to-create-a-device-node-from-the-init-module-code-of-a-linux-kernel-module/45531867#45531867
これはBuildrootとほとんどのディストリビューションが現在デフォルトで行っていることです。