Linuxカーネルドキュメント (公式)
Linuxカーネルの公式のドキュメントである。
Quick searchで検索するか、Contentsから項目を探す。
例えば、CANインターフェースについては、
Subsystems → Network Interfaces → Networking → SocketCAN - Controller Area Network
に書かれている。
過去のLinuxカーネルのバージョンについては下記から。
https://www.kernel.org/doc/html/
その他のドキュメントについては下記から。
https://www.kernel.org/doc/
Doxygenドキュメント (野良)
かなり古いバージョン(3.7)のまま更新されていないが、Doxygenで生成したLinuxカーネルソースのドキュメントが下記で閲覧できる。
https://docs.huihoo.com/doxygen/linux/kernel/3.7/
ヘッダファイルを読む
C言語のヘッダファイルは /usr/include/ にある。
stdio.h は /usr/include/stdio.h にある。
net/if.h は /usr/include/net/if.h にある。
しかし、別の場所にある場合もある。
例えば、Ubuntu20.04 (x64版) では、
sys/types.h は /usr/include/x86_64-linux-gnu/sys/types.h にある。
ヘッダファイルがどこにあるかは locate コマンドで確認できる。
(Ubuntu等であれば、locate は apt でインストールできる。)
$ locate sys/types.h /usr/include/x86_64-linux-gnu/sys/types.h
または、findコマンドで探す。
$ find /usr/include -name types.h