netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2003-04-19 古い日記からの変換データ ▲
2004-04-19 古い日記からの変換データ ▲
2005-04-19 ▲
_ [AspectJ] annotationを使ってみる ▲
記事執筆用に初めてannotationを使ってみた. annotation って実は "@hoge" とかってソースでいきなり使っていいのかと思っていたけど,実は定義が必要だったらしい(annotation typeと呼ぶらしい).public @interface logged { }といった適当な java ファイルを作ってコンパイルして,classpathに配置しておく(参照さえできればいいので一緒にコンパイルしてもOK).
execution(@logged * *.*(..))
でロギングを実行するようにしておくと,ログを取りたいときにポイントカットを毎回作らず,ログを取りたいメソッドの頭に "@logged" を付加するだけでよくなる.
デバッグ用小道具なアスペクトを手元にそろえておくと,実は作業がすごく楽になるのかも.
2006-04-19 ▲
_ [お知らせ][VolumeDeskbar] Volume Deskbar 1.0.8 リリース ▲
テスト環境が手元になかったのでリリースが遅れてしまいましたが,ホイールのクリックでのミュート切り替えができるようになりました.
_ LRU と Belady's Anomaly ▲
廃棄物処分屋さんによる見積もりがあるので,今日は自宅待機中.
以前レター論文で発表した,「実行履歴を機械的に分割する」ネタでキャッシュの中身入れ替えアルゴリズムを使っていたときに,Belady's anomaly(Belady's anomaly についての解説 )が起きてたらどうしよう,という話になったと思うのだけど,実装時に LRU 選んだから問題は発生しないということに今さら気づいた.キャッシュのミスが連続するピーク位置は移動するかもしれないけど,ミスの回数は増えない.当時ちゃんと考えたのかもしれないけど,よく覚えてないので,いちおうこの辺にメモしておく.
Belady's anomaly っていつ発表されたんだろう,と思って調べてみたら,Citeseer でそれらしき引用文を発見.L. Belady, R. Nelson, and G. Shedler. An anomaly in the space-time characteristics of certain programs running in paging machines. Communications of the ACM, 12(6):349--353, June 1969. だそうで,さすがに PDF も何もありません.
ページングのほうでは,Page Fault Frequency (PFF) 置き換えアルゴリズムなんていうものもあって,ページフォルト率が閾値 p より上がってくるとページ枠を増やし,q より低下するとページ枠を減らすというものらしい.授業でちゃんと教わった気がするんだけど記憶にあまり残ってなかったので,やっぱりメモしておく.
2008-04-19 ▲
_ [近況][VolumeDeskbar] 月刊I/O 5月号をいただきました ▲
VolumeDeskbar が付属CD-ROMに収録されたので見本誌として5月号をいただきました.自分が知ってる雑誌に掲載されると,やはり嬉しいものです.
VolumeDeskbar は64ビット版対応を考えたら,やっぱり Visual Studio でコードを書き直したほうがいいのかという気がしてきたので,再び実験中です.サンプルの Deskband の実装すら64ビット版構成でコンパイルが通せてない(ヘッダの途中でエラーが出てしまう)ので,若干挫折気味.