VirtIOデバイスをPCIから起動するデバイスドライバラボ

Device Drivers lab exercise – COSC562

COSC562のデバイスドライバ実験。PCIeのECAMからVirtIOデバイスを発見し、MSI-Xを有効化して割り込みを設定。VirtIOのベンダー固有ケーパビリティを辿り、共通コンフィグでキューをネゴシエートする。Rustで型安全にECAMをラップし、デバイスをカーネルのデバイスレジストリに登録する。

MSI-Xは起動時には無効になっており、有効にするには、このデバイスのコマンドレジスタで割り込みを無効にし、メッセージコントロールレジスタのビット15をセットしてMSI-Xを有効にする必要があります。
  1. vivzkestrel

    またまた愚問です

    - ちょっとC++を知っていて、カーネルやドライバについてはまったくの素人な自分にとって

    - ドライバがどう作られるか、低レベルプログラミングがどう行われるか、そして何より、数多くの前提の背後にある「なぜ」を説明してくれる、おすすめの一流ガイドを教えてください

  2. brcmthrowaway

    なぜこれがここにある?

この日のほかの記事

2026-09-13