タグ

ブックマーク / mkosaki.blog46.fc2.com (2)

  • 革命の日々! tmpfs は本当に容量が動的なのか

    動的です。おわり ああ、石投げないで。 はてなの伊藤直也さんのblogでそういうエントリを見つけたので。 記事のネタが欲しかったんだよう。 で、伊藤さんが書いているremountしたらスワップ発生ってのを考えていたんだが、まったく思いつかんのよ。原因が。 カーネルソースもみなおしたけどremountってfs管理構造体のmax_sizeメンバとかに再代入してるだけで、ぜんぜんメモリ確保してないし。 さらに言えば、tmpfsはファイルシステム上に100Mのファイルがあるときに50Mのサイズでリマウントしようとした場合、シュリンクの努力はなにもせずにエラーリターンするという特徴があるため、 サイズを減らす方向のremountが成功したのなら、サイズを増やしたぶんのファイルシステムスペースは使っていなかった可能性が高いのである。 うーむむ、現時点ではたまたま別の要因がうごいたんじゃない説がイチオシ

    naska
    naska 2006/02/19
    tmpfsシリーズ。
  • 革命の日々! 続: tmpfs は本当に容量が動的なのか

    ありがたいことに404 Blog Not Found様がレスポンスを返してきてくれていて、うれしかったので調子にのってさらに補足追加。 しかし、これだとどんどん成長するファイルに関しては、realloc()しまくりでそれはそれで大変そうな気がしないでもないです。例えば、 dd if=/dev/zero of=/mnt/tmp/foo.tmp bs=1m count=256 cat /dev/null > /mnt/tmp/foo.tmp とした場合、foo.tmpのsizeは0になりますが、foo.tmpのために割り当てられた256MBはそのままですよね、rm /mnt/tmp/foo.tmp するまでは。 これは、たぶんtmpfsをまだ誤解いしてるような気がする。 えと、まずmalloc/freeのfreeしても実はメモリを開放せずにライブラリが抱え込んで次のmallocに備えるんだよー

    naska
    naska 2006/02/19
    tmpfsシリーズ。
  • 1