2005年01月18日(Tue) swap outしまくり火曜日 [長年日記]
● [momonga] メモリじゅーよー
kdebindingsができまへぬ。
topするとkswapd0とcc1plusが首位と次点をいったりきたりしてるんです。cc1plusのCPU使用率は0.3%、メモリ使用率は74.2%。実メモリ256MBは少なすぎか…。
(追記)Linux のメモリー管理より、スワップを観察するには、vmstatが良さそう。
(追記)reniceしたらちょっと進み方が速くなったような(その分他のプロセスが遅くなったような)気がしないでもない…。
(追記)できたぁ! real:81444.09 utime:4105.80 stime:486.09…P4 1.7GHz 256MBで22時間27分!
● [memo] セキュアなプログラマー: 競合状態を防ぐ
どなたかの日記より、IBM developerWorks > Linux。ロックファイルの競合状態などについて、下記のような注意点がわかりやすく書いてあります。。
- /tmpや/var/tmpはできるだけ使わない。
- open(2)をO_CREAT | O_EXCLで使ってファイルを作ってからfdopen(3)する …mkstemp(3)はこれをやっている。
- ファイルを作って開いたらすぐにunlink(2)する。自分で使っているファイルディスクプリタがcloseされるまでは、そのファイルは存在する。
- シグナルハンドラーの中では余計なことはしない。
特に3番目の項目は気づかなかった。ファイル名を無くすことで攻撃をしにくくできるんだね。
プログラムを作るたびに読みなおしたい記事です。すばらしい。
最近のツッコまれどころ