GlusterFS でも利用されている FUSE を使って、Hello World を試して見た。 今回は libfuse を使って、仮想ファイルシステム上のファイルを cat すると Hello World ! が出力されるまで。
「Linux プログラミングインタフェース」再び。
輪読やりながら「こんな機能使うのか?」って、みんな文句言いながら読んでいた章。ここで触っとかないと、今後「ACL とか知らねぇ。」ってなりそうなので、まとめておく。
最近かなり流行っている「Linux プログラミングインタフェース」を読んでたら、lseek(2) の解説で Sparse File (スパースファイル) の話が出てきたので、実装が気になって調べてみた。
前回カーネルモジュールを作った際に、MODULE_XXXX
というマクロでモジュール内に情報を埋め込んだが、これがどういう風に埋め込まれているのか調べてみた。環境は今回も CentOS7 (3.10.0-123.4.4.el7.x86_64)。
Linux のカーネルモジュールで Hello World してみる。insmod、rmmod した時に dmesg にログを吐くだけの単純なもの。試した環境は、CentOS7 (3.10.0-123.4.4.el7.x86_64)。
仕事で kernel のソースが見る機会が度々ありそうなので、MAC上でソースをいつでも追えるように準備しておく。 準備といっても大したものではなく、
- kernel ソースのダウンロード
- tag の作成
- vim の設定
ぐらい。tag については、GNU GLOBAL などもあるが、とりあえず ctags で。