タグ

ブックマーク / harasou.github.io (3)

  • Linux kernel を読むための準備 | harasou.github.io

    仕事で kernel のソースが見る機会が度々ありそうなので、MAC上でソースをいつでも追えるように準備しておく。 準備といっても大したものではなく、 kernel ソースのダウンロード tag の作成 vim の設定 ぐらい。tag については、GNU GLOBAL などもあるが、とりあえず ctags で。 kernel source の取得 github ではなく tar ball からの取得。複数のリリースを取得するにはこちらの方が簡単そうだったので。 1 mkdir -p ~/src/kernel curl https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.2.4.tar.xz | tar zx -C ~/src/kernel/ tag の作成 linux kernel の Makefile には、tag を作成するターゲ

  • Sparse File (スパースファイル) の仕組み | harasou.github.io

    最近かなり流行っている「Linux プログラミングインタフェース」を読んでたら、lseek(2) の解説で Sparse File (スパースファイル) の話が出てきたので、実装が気になって調べてみた。 4 章 ファイル I/O:統一されたインタフェース 4.7 ファイルオフセットの変更: lseek() ファイル末尾を越えた位置へシークするとどうなるでしょうか? そしてその位置で I/O を実行すると? … (略) 意外 に思われるかもしれませんが、書き込みは可能なのです。 refs: https://www.oreilly.co.jp/books/9784873115856/ Sparse File とは 簡単に言うと、内部に NULL のかたまり(ファイルホール)を含むファイルのこと。こんなやつ。 1 2 # ls -shl sparse_file 4.0 K -rw-r-

    Sparse File (スパースファイル) の仕組み | harasou.github.io
  • Linux ACL の基礎 | harasou.github.io

    Linux プログラミングインタフェース」再び。 輪読やりながら「こんな機能使うのか?」って、みんな文句言いながら読んでいた章。ここで触っとかないと、今後「ACL とか知らねぇ。」ってなりそうなので、まとめておく。 17章 ACL ACL はユーザもしくはグループ単位でのパーミションを設定可能にするもので、ユーザ、グループ数を制限しません。Linux ではバージョン 2.6 で ACL を導入しました。 refs: https://www.oreilly.co.jp/books/9784873115856/ ACL(access control list) とは 簡単に言うとファイルやディレクトリのパーミッションに +αのアクセス権 を設定できる機能。 ACL を設定すると下記例のように、通常のパーミッション的には root しか読めないファイルに、vagran

    Linux ACL の基礎 | harasou.github.io
  • 1