2016年4月27日 (水曜日)

09:55:48 # Life Shell builtin. シェルスクリプトでのワイルドカードの展開はコマンドの実行のときにしか行われないので [ と [[ で挙動が違う?ぽい。そうだっけな。[ も builtinだった気がしたのだけどFork/execをしないという意味なのかな。

	  [[ -e hoge* ]]  # hoge* というファイルが存在するか確認
	  [ -e hoge* ]  # hoge* を展開したファイルが一つ存在するか確認。
	

18:19:15 # Life FUSEってどれくらいおそいのかな。 とりあえず単純なベンチマークで試してみた。COWFSで。使ったのはGCEのN。 100スレッドが100回ファイルをcreat/write/close/open(O_WRONLY)/write/closeするベンチマーク(parallel_writer)をとりあえず普通にやると0.3s, cowfs経由で動かすと0.8s. 二倍か。

18:29:49 # Life ハードリンクをリネーム。なぜかファイルが消えてないのでデバッグしていたら、どうやら同じi-nodeの場合はrenameでファイルが消えないらしい。 renameat2 ファイルが最初にあってrenameat3 ファイルをハードリンクにしたら renameat2 を renameat3 にrenameatしたら通常renameat2ファイルが消えるのだけど消えない。

	  linkat(AT_FDCWD, "renameat2", AT_FDCWD, "renameat3", 0));
	  renameat(AT_FDCWD, "renameat2", AT_FDCWD, "renameat3");
	
Junichi Uekawa