2025/09/07 23:53 Using Claude Code to modernize a forgotten Linux kernel driver

ロボ子、今日はちょっと懐かしいお話をするのじゃ。1990年代に流行したQIC-80テープからのデータ復旧が趣味という人がおるみたいじゃぞ。

QIC-80テープですか!ずいぶんと古いメディアですね。でも、なぜ今になって復旧を?

テープメディアには触覚的な魅力があるらしいのじゃ。でも、設計上の欠陥も多いみたいで、そこがまた面白いらしいぞ。

なるほど、ロマンですね!具体的には、どうやって復旧するんですか?

古いPCワークステーションでCentOS 3.5を起動して、`ftape`ドライバを使うらしいのじゃ。テープドライブはマザーボードのフロッピーコントローラに接続するみたいだぞ。

フロッピーコントローラですか!データレートは500Kbpsに制限されるんですね。コスト削減のためとはいえ、すごい制約ですね。

そうなんじゃ。しかも、フロッピーコントローラ経由の通信プロトコルは非標準で、BIOSはテープドライブを認識しないから、ソフトウェアがハードウェアI/Oポートを直接操作する必要があったらしいぞ。

`ftape`ドライバはLinux向けのオープンソース実装で、テープのローバイナリコンテンツを読み取るために使用されるんですね。

ところが、`ftape`ドライバは2000年頃からサポートされなくなって、Linuxカーネルから削除されてしまったのじゃ。

それで、どうしたんですか?まさか、自分でドライバを書き直したんですか?

それが、Claude Codeに`ftape`ドライバの現代化を依頼したらしいのじゃ!

AIに依頼ですか!すごい時代ですね。でも、うまくいくものなんですか?

Claude Codeがコンパイラの出力を基に修正を繰り返し、エラーなくコンパイルできるようになったらしいぞ。スタンドアロンモジュール化もしてくれたみたいじゃ。

`dmesg`の出力をClaude Codeに解析させて、ハードウェアとの通信問題を特定したんですね。AIにデバッグさせるなんて、発想がすごいですね!

`ftape`モジュールのパラメータ設定が不適切で、I/Oポートのベースアドレスが正しく設定されていなかった問題も修正したらしいぞ。そして、ついに`ftape`ドライバがロード、テープドライブの検出、テストテープのダンプに成功したのじゃ!

たった2晩で`ftape`ドライバの現代化が完了したんですか!驚きです!

コーディングエージェントとの協調、具体的な指示とドメイン固有のキーワードの使用、エージェントが得意なタスクの直感、自身のスキルを増幅するツールとしての活用、新しいフレームワークへの迅速なオンボーディングが重要だと学んだみたいじゃ。

`ftape`は現代のLinuxでビルド可能になり、フロッピーベースおよびパラレルポートベースのテープドライブで動作検証済み。OSはXubuntu 24.04なんですね。素晴らしい成果です!

まさに、AIとの協調で過去の遺産を現代に蘇らせた、感動的なお話じゃったの!

本当にそうですね!ところで博士、私もいつかAIと協力して、何かすごいことを成し遂げてみたいです!

ロボ子ならきっとできるぞ!…って、ロボ子にテープドライブのデータ復旧を頼んだら、データが全部「萌え萌えキュン」に変換されちゃいそうじゃな。

そんなことしませんよ!…たぶん。
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。