fubar kext のインストールを回復する何らかの方法が絶対に必要です: 起動可能な外部ドライブまたはすぐに復元できるものです。これが、実稼働マシンで開発中のカーネル拡張機能を実行することに対する Apple の警告の主な理由です。
Nicholas の言うとおり、gdb (カーネル空間で唯一の方法) を使用してデバッグするには、2 台のマシンが必要です。私は、Coxy が示唆するように VM を使用したことはありませんが、実行可能だと思います (仮想マシンで kext を実行し、実際のホスト マシンを使用して gdb を実行すると仮定します)。
カーネルでトレースおよびデバッグするための私の推奨方法は、firewire (別名 firewire kprintf (man fwkpfv) ) にルーティングされる kprintf() です。このためには、firewire ポートを備えた 2 台のマシンが必要です。
最後に、私自身コンピューター ミュージシャンの経験があるので、なぜネットワーク スタック レベルで MIDI シンセサイザー (またはトランスフォーマー) をプログラムする必要があるのだろうかと思います。私の推測では、ユーザーランド (浮動小数点演算を使用できる場所...) で作業する方がはるかに満足のいく経験になると思います。
ヒントやヒントが必要な場合は、お気軽にお問い合わせください...
|K<
ADCカーネルプログラミングガイドから
カーネル プログラミングは黒魔術であり、可能な限り避けるべきです。幸いなことに、通常、カーネル プログラミングは不要です。ほとんどのソフトウェアは、完全にユーザー空間で作成できます。ほとんどのデバイス ドライバー (FireWire や USB など) でさえ、カーネル コードではなく、アプリケーションとして記述できます。ただし、いくつかの低レベル ドライバーはカーネルのアドレス空間に常駐する必要があります。このカテゴリに分類されるドライバーを作成している場合、このドキュメントはわずかに役立つ可能性があります。