
私はイーサネットドライバを書いています。ただし、ドライバをテストするには、カーネルにプローブコールバックルーチンを呼び出す必要があります。
プローブを呼び出すには、適切なボードファイル(このバージョンにはデバイスツリーがない)に登録する必要があるようです。問題は、ボードファイルを変更するとカーネル全体をビルドする必要がありますが、仮想マシンで2時間(!)かかることです。私は以前ははるかに小さいカーネル/ファイルシステムで作業したことがあり、カーネルの構築にはこれほど時間がかかりませんでした。
これをより効率的にする方法はありますか?たとえば、ボード上のデバイスの内部ドライバをエミュレートできますか?仮想マシンでカーネルを構築するのに約2時間かかります。言葉になりますか?
カーネルのアップグレードやホストコンピュータの変更など、どんなアイデアでも役に立ちます。
ありがとうございます
答え1
ドライバをモジュールとしてビルドし、モジュールを強制的にアンロードできるようにカーネルを設定する必要があります。
したがって、ドライバを変更すると、カーネルはドライバだけを再コンパイルします(そして新しいカーネルをインストールする必要はなく、カーネルソースからモジュールをロードするだけです)。