この記事はLinux Advent Calendar 2016 9日目の記事です。 遅刻してしまい申し訳ございません。。。 とある事情があって1ヶ月半ほど独自NICのLinux向けのネットワークドライバを開発していた。 今回はARM用のデバイスドライバを開発した。NICはXilinx社のFPGAであるZYBOを用いて開発した。 まだ十分に実用段階というわけではないが、ひとまず独自NIC経由でのpingやiperfが通ったので、後学のために知見を残しておきたい(誰得だ、という感じだが)。 ソースコードはまだ公開されていないが、そう遠くないうちに公開する予定(たぶん)。 はじめに Linuxのデバイスには キャラクタデバイス - バイト単位のデータ通信 (e.g. シリアルポート) ブロックデバイス - ブロック単位のデータ通信 (e.g. ディスク) ネットワークデバイス の3種類がある。ネ
![Linuxネットワークドライバの開発 - Handwriting](https://cdn-ak-scissors.b.st-hatena.com/image/square/d9f13632494bfe4c67ddff7a21b498de8b9c997e/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fl%2Flevelfour%2F20161130%2F20161130213128.jpg)