[an error occurred while processing this directive]

2007年5月分

[an error occurred while processing this directive]

最新の日記へ

前月 翌月

2007/5/1(火)23:59頃

あ゛ぁぁ、消化し切れてない…。
●アクセス解析
いつものようにアクセス解析まとめページで閲覧可能。
約定期blogで3月のロボットアクセス数が増えている以外は特に書くことはないかな。
それより、サーチエンジンのURLを解析ツールに登録しているときに見つけたサイト(⇒laplas - Pretra?iva? Krstarice、?になってる部分は非英語アルファベット)を見て思わず「ちょwww」。
他の写真とは一線を画す雰囲気を漂わせているサ○シ、もといなおや(私)とラプラス(変換)の一騎打ち。
該当の記事はこれ→ラプラス
一応ヒットしなくなった時のために上記サイトのキャプチャ画像を置いておく。

●なんでも解析
月初め恒例その1。

・モバイル通信量
W44T 29990パケット(EZweb 26319、PCSV 3671)通話0秒(0円)
W-ZERO3 271164パケット 通話0秒(0円) PRIN0秒(0円)
なんかW-ZERO3かなり使ってる。VNCとかSSHで接続しまくったからか?
・電力
2007年4月(3/19〜4/17)の消費電力(家全体) 781kWh(前月比103.7%、前年同月比92.4%)
エアコン・照明以外(PC、TV、HDDレコーダー等) 374kWh(715時間(4/1 6:38〜5/1 1:25)、平均523.08W、前月比101.6%)
エアコン 0.9kWh(722時間、平均1.25W、前月比3.2%)@エコワット
     1.48kWh(718.0時間)@エアコン内蔵

当たり前だがエアコン(暖房)は全くといっていいほど使っていない。
わずかな使用分も暖房ではなく送風だ(強制的にマイナスイオンがかかるので余計な電気を食いそうだが)。
しかし、ルータが熱暴走するなど確実に気温は上昇しているので、エアコンの使用再開(今度は冷房)も時間の問題だな。
ところで、なぜか1月から3月にかけて減少した消費電力が4月で微妙に増えるんだろうか…?

●「Miria」再起動ログ4月分
月初め恒例その2。

起動時刻        MTBF    理由 
2007/04/09 22:15:38  628:08:29  クラッシュぽい、画面は点滅(これはクラッシュ前から続いていた)
2007/04/09 22:27:31        復帰、一部ファイル消えてた(誤操作か?)

かなり安定していて、落ちたのは1回だけだった。
しかし、その1回が一部のファイルが消滅するというかなり焦る事態になった。
そして、3つ後の記事で書いてるクラッシュでも同じ現象が…。

●アレシボじゃむりぽorz
最近地球に似た惑星(Gliese 581c)が発見されたというニュースを聞いたのだが、それについてSETI@home本家にも問い合わせが殺到してるらしい。
しかし、残念ながらアレシボの電波望遠鏡で見れる範囲を超えてる(located just beyond the visible sky we can see at Arecibo Observatory)ので何も出来ないんだとか。

●cmd.exeの文字に色をつける
SSHで「Miria」や大学などに接続したときに、lsなどの一部のコマンドで文字に色がつくのだが、これをcmd.exe上のコンソールアプリ(HSPやVC++で自作したもの)でもできないものかと思った。
しかし、以前に少し調べた時と同じく、どこを見ても「cmd.exeじゃエスケープシーケンス解釈しないから無理。command.comにANSIドライバ組み込め」としか書いてない。
やはり無理なのか…とあきらめかけたが、⇒新雪見酒日記(2006-02-07)で「(前略)エスケープシーケンスを解釈してコンソールの色を変更するフィルタを作るか(後略)」と書かれているのを見て「フィルタが作れるってことは、そういう関数があるに違いない」と思い、いろいろな語句でぐぐりまくる。
で、結局「cmd.exe 色 シーケンス」でぐぐって⇒Admin-man Net YBBS過去ログ ★★★ C言語質問箱 ★★★ 02を発見、一番下に書いてあったMSのサイト(⇒Writing Characters or Colors to Consecutive Cells、実際は上記のBBSログに書かれてるURLは移転していた(左のリンクは移転後のURL))でついに目的のAPIが判明。
文字を書く(描く?)のと属性(要するに色)を設定するのがそれぞれ指定された文字列(または属性配列)の分だけ行うものと、単一の文字または属性を指定されたセル数だけ行うものがあり、合計4つのAPIがある。
詳しい引数などはMSDNを調べてもらう(⇒Console Functions、あるいは手持ちのMSDNで検索)として、関数名と概要だけかいておくと
WriteConsoleOutputCharacter 指定された文字列の分、文字を書く
WriteConsoleOutputAttribute 指定された属性配列の分、属性を設定する
FillConsoleOutputCharacter 指定された文字を指定された長さだけ書く
FillConsoleOutputAttribute 指定された属性を指定された長さだけ設定する
となっている。
これらの情報を参考にしてテストプログラムを組んで実行した結果が以下のものである。

Console Colors黒だけは背景に溶け込んで見えなくなるので背景を白にした。

使える色は黒(0,0,0)、暗い赤(128,0,0)、暗い緑(0,128,0)、暗い青(0,0,128)、暗いシアン(0,128,128)、暗いマゼンタ(128,0,128)、暗いイエロー(128,128,0)、明るい灰色(192,192,192)、暗い灰色(128,128,128)、赤(255,0,0)、緑(0,255,0)、青(0,0,255)、シアン(0,255,255)、マゼンタ(255,0,255),イエロー(255,255,0)、白(255,255,255)の16色。
それぞれRED、GREEN、BLUEとINTENSITY(彩度)を組み合わせて指定するが、普通のRGBを出すためにはINTENSITYを指定する必要があり(例えばREDだけだと暗い赤になる)、灰色については暗いほうはINTENSITY単独で指定、明るいほうはINTENSITYなしでRED、GREEN、BLUEの全てを指定で出せる。
…まあ、こんなのはMSDNとか見ればすぐ分かるんだけどね(ぉ)。
ところで、あらかじめセルに属性を指定していても、stdoutに対してfprintfした場合などは適用されないようである(fprintfしてから属性を設定した場合は有効)。その辺はちょっと注意だな。
で、cmd.exeの文字に色がついたところで何をするかといわれれば…何もないな(ぉ)。ただ技術的に可能か検証しただけ。

●「Miria」落ちたorz
安定してると思ってたのにー!!!
クラッシュ後、「Miria」のディスプレイをつけると、4/9のクラッシュ時のように画面が点滅。
しかも、復帰後にまたもやホームディレクトリ(rootではなく一般ユーザの)直下にあるファイルがほとんど(エスケープシーケンスの検証用に直前に作った2ファイル(Cソースとバイナリ)を除いて)消えていた(以前と同じくディレクトリ以下は無事)。
今度は画面が乱れた状態でキーボードを打ってないので、rmコマンドを発行したとも考えられない。
まさか、OOM KillerならぬOOD(Out of disk) Deleterがあるのか?と思ってdfで容量を見るが、まだまだ余裕。
安定し始めると20日以上稼動する一方で、突然(内部的には異常が起こっているのかもしれないが)このような不可解な挙動をするというのも不可解だ。
一体なぜファイルが消えるのだろうか…。しかも決まってホームディレクトリ直下のファイルだけが消える。
もしや、やはりHDDに問題があるのか?あまり症状がひどくなるようであれば新しいHDDに換装するか。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/2(水)23:59頃

今日中に日記終わるかなぁ…。
終わらなかった。特急一枚(ぉ)。
●HSP3新機能
HSP3(⇒Hot Soup Processor オフィシャルホームページ、ここで私が言っているのは出たばかりの3.1β9)にいつの間にかHSPCVとかAHTとかの新機能が追加されている。
AHTはさておき(ぉ)、HSPCVは画像処理の機能強化プラグインらしい。
画像マッチング(ある画像Aと最も似ている部分を別の画像Bから探す)とか、顔検出とか、Webカメラのキャプチャといった面白そうな、あるいは実用的かもしれない機能が実装されている。
ただ、ちょっと試したところでは顔検出がどうもうまくいかない。画像サイズがまずいのだろうか?それとも顔検出用のXMLファイルが合わないのか?
特に顔検出マッチしたいわけでもないのでこれはギブアップ。
そもそも、顔認識なんて大学の研究室でやるぐらいのテーマなので、そんなに簡単に高性能な顔検出プログラムが出来ることはないと思うのだが。
それはさておき、カメラキャプチャのほうはは無事に動いたので、「Naomi」で動かしている温度計撮影プログラムをこれで書くことでポップアップうzeee!!が解消できないか試してみようかな。
といいつつ、面倒(ぉ)なのでNGアプリリスト(ここに載っているアプリが起動してたら温度計撮影を行わない)にメディアプレイヤー系を追加してしのいでいる。

●宛先=差出人spamメールうzeee!!
最近1日1〜4通程度来る「宛先=差出人spamメール」。
どういうことかというと、私のメールアドレスを仮にnaoya@foobar.orzとすると、ヘッダのFromもToも(Reply-Toがあればそれも)naoya@foobar.orzになっているspamメールが来るわけだ。
spamフィルタを使う場合、友人や取引先などの重要なアドレスはspamチェックを行わないようにホワイトリストに入れることが多いと思う。
ましてや自分のアドレスなら自分しか使わないはずなので、真っ先にホワイトリストに追加されるアドレスになるはずだ。
しかし、そこをspammerにまんまと突かれてしまった。
だからといって、ホワイトリストから外せば、自分が書いたメールが誤ってspam判定される可能性が出てしまう。
対処法としては、何らかのユニークな署名を含めるようにしておいて、それが入っていればホワイトリスト扱いにするという手が考えられる。
あるいは、自分宛てにメールを送る時は、複数のアカウントを用意しておき(例えばnaoya1@〜とnaoya2@〜)、それぞれアカウント自身には送信しない(naoya1@〜にメールを送る時は必ずnaoya2@〜を使う)ことによって、「宛先と差出人が同じならば必ずspam」とみなすことが可能になる。
でも、どのような対策をとるにしても手間が増えるんだよなぁ。件数の少ないうちは単純に無視して削除しておくか。

●「Miria」クラッシュ
また不安定化か?
しかし、今度は5/1のように一部ファイルが消えたり画面が点滅状態になったりせず、それ以前に起こっていたように画面(topを実行している)がぐちゃぐちゃに崩れて固まっただけだった。
暑くなってきたから熱暴走だろうか?

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/3(木)23:59頃

あれ?ネタがない…?
たぶんシレンとかマリオとかやってたんじゃないかなぁ。あと日記更新と。
ってことで5/3の日記は記事なしってことで(ぉ)。
たまにはこういうこともあるさ。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/4(金)23:59頃

まだ日記が終わらねぇ…。
現在5/6 6:24で編集開始。残りわずかだ!
●SETI@home停止長いなー
5/1の本家(⇒SETI@Home)ニュースを見て、マスター科学DBがクラッシュしたのは知っていた(労働際のMay Dayが救難のMaydayになってしまったというような意味のことが書いてある)が、どうせまたすぐ復旧するだろうと思っていた。
しかし、想像以上にダメージがでかいらしく、ここしばらく起こってなかった大規模なクラッシュ(といってもWUの生成ができないだけで、アップロード・ダウンロードサーバやスケジューラは動いているので結果を送り返すことはできる)になってしまっている。
やはり少ない予算でやりくりしているのでサーバが老朽化しているのだろうか。
月曜以降に復旧するらしい(Sunが新マシン持ってくる)という情報は5/4の日付で出ているが、気づいたのは5/5なので5/5の記事に書いている。

●W-ZERO3で暇つぶしプログラミングその1
内容がちょっとごにょごにょなので簡単に。
4/29にPocketPuTTYをバージョンアップした時に「W-ZERO3でJavaやネイティブで動くBASICクローンでも探そうかと思ったが(略)」と書いたが、やはりBASICを動かしてみたくなった。
しかし、携帯電話(EZアプリ(Java))用は結構あった(といっても2、3個程度だが)のに、PocketPCとなると全然見つからない。
で、かなり探しまくってやっとM88/wm5 - PC-8801mkIISRエミュレータ for Windows Mobile 5.0を発見。
ところが、これはエミュレータなので実機のROMが必要なのである。
普通ならここで「ざんねん!! わたしの ぼうけんは これで おわってしまった!!(←ちなみにこれの元ネタになったゲームをやったことは一度もない)」ってなところだが、なぜか「Naomi」にM88_215というフォルダがあり、その中にROM一式(動作に必要な最低限)が…。
おそらく以前エミュに興味を持って調べた時にどこかからダウンロードしたらしい。
その頃は違法コピーなどが普通にアングラではないサイトに置かれてたからなぁ。
それはさておき、そのROMを使って何とか起動できたものの、Disk Basicがないので、せっかく作ったプログラムが保存できないことが判明。
PC用M88はディスクドライバを拡張してあるのでHDDに保存可能なのだが、Pocket PC用は拡張機能が実装されてないらしい。
いくつかあったDisk BASICで作ったと思われるディスクイメージ(HSPを作っているONION SOFTWAREの旧作?)を弄ってみたが、ロードこそ可能なもののセーブは不能。
ということで、BASICでプログラムが組めるようになったが保存はできないという、時間がかかったわりにはがっかりな結果に終わった。

●98のFDD死亡?
上の記事で書いてるエミュでいろいろやってる途中、「初代」(PC-9801FS)と「Canboo」(PC-9821Ce2)で久しぶりにMS-DOS版BASIC?を動かしてみようとしたのだが、「Canboo」はともかく、「初代」もFDDが使えなくなっていた(「Camboo」はかなり前からFDDが壊れていた)。
アクセスランプは点くのだが、全く読み込まないし、I/O Errorのようなエラーも出ない。
ああ、これでついにPC-98用プログラムの実行環境がなくなってしまったのか(エミュ探せば別だが)。
できることなら復活させてやりたいが、もうジャンク屋でもPC-98系パーツ(動作可能なもの)は少ないだろうなぁ…。
しかし、「初代」のFDDはまだ生きているような気がするんだよなぁ。以前「Canboo」に移植しようとして外して再度取り付けたときに何か間違ったのかもしれない。今度時間があったら確認してみるか(といいつつ時間があっても確認しないことが多いけど(ぉ))。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/5(土)23:59頃

連休も明日で終わり…って、毎日連休状態だから関係ないか(ぉ)。
でも、そろそろ休み気分も終わりにしてレポートを仕上げないと…((((((;゜Д゜))))))。
●W-ZERO3で暇つぶしプログラミングその2
その1でいまいちな結果に終わってしまったので、あきらめきれずに再度BASICを探す。
しかし、NS Basicなどの商用ツールしか見つからない。そこで、「basic wince フリー」でぐぐる。
そして、ついにWinCE用のフリー言語が載っているページ(⇒Windows CE 用の言語)を発見。
とりあえずDialect、SWI-Prolog、GNU Common Lisp(GCL)を入れた。
最初、Dialectを「Basicの発展型言語」と書いてあるのを「Basicの上位互換」と勘違いしてLINE文とか打ち込んでエラー出した(ぉ)。
PrologとLispは授業でやったのである程度習得してるし、ちょうど暇つぶしにちょうどよさそうな感じなので。
最初GCL入れて起動するとエラーが発生したが、無視してPrologを入れようとすると、Celibというソフトウェア作者が作ったライブラリを入れてなかったことに気づく。
Celib入れた後に再度Lispを起動すると無事起動。よく見るとInstallationに書いてある。
さらに、フォントサイズが大きすぎたので、ForceHiresでVGA化してしのいだが、これもInstallationを見ると環境変数セットしろと書いてあることに気づく。
今回も残念ながらBASIC(N88 BASIC完全上位互換)はなかったが、この辺でひとまず終了としよう。
やはりPocketPC(Windows CE、Windows Mobie)ほどになると、携帯電話アプリのような暇つぶし系簡易言語ってないのかなぁ…。
Brainf*ck程度なら自分でも作れそうなのだが…。

●「Sephie」WU枯渇
SETI@homeのマスター科学DBが止まっているため、WUが生成されない状態が続いているが、ついに「Sephie」で処理待ちWUが0になった。
他のマシンでも「Fen」が14、「Naomi」が12、「Miria」が9(いずれも5/5 8:49時点の処理待ちWU(処理中のWUを除く))しかないので、なくなるのは時間の問題だ。
やっぱり他のプロジェクトもやったほうがいいのかなぁ。
でも、やりはじめると順位が気になるだろうし、でもSETI@home復旧したらそっちはやらなくなるし…。
とりあえずWUが来るまでの間、CPUクロックを1.8GHz→800MHz、CPU電圧を1.3V→1.0Vに下げておくことにした。
サーバマシンとはいえ、そんなに負荷かかってないし大丈夫だろう。何か問題あるようなら戻すことにしよう。
ところで、本家ニュースを見ると、Sun Microsystemsが新しいサーバを月曜日に持ってきてくれるらしい。
かつてSETI@home Classicで常時1位(最後あたりは落ちてたが)だったSunだが、今ではTotal Creditベースで115位、RACベースで192位(いずれも2007/5/5 9:31 JSTにチェックした結果)と随分下がっている(たぶん高性能で安価なPCが大量に出回ったからだろう。最適化クライアントの効果もあるし)。
それでも、SETI@homeプロジェクトに欠かせないスポンサーであることに変わりはないらしい(本家のスポンサーページ(⇒Sponsors)でも、惑星協会(The Planetary Society)と並んでメジャースポンサーになっている。営利企業でメジャースポンサーなのはSunだけ)。
その後、「Naomi」と「Miria」もWU枯渇。
「Naomi」は「Sephie」と同じくクロックを下げ、「Miria」は5/6のクラッシュまでそのまま起動(cpufreqとか入れてないので)。
「Fen」は5/6に冷却ファン止めたこともあって、強制スピードダウンしまくったせいで5/7 4:15時点でまだWUが残っている。
あと、「Sephie」が不調になったので再起動した。クロックダウンが原因かは不明。


●日記関係いろいろ
※この記事で出てくるブックマークってのはお気に入りのことではなく、Aタグのnameまたはid属性のことで、正しくはアンカー名とかfragment IDとかいうらしい。

■ツール改良
この日記は手動で書いてるので、blogのようにコミットすれば自動的にブックマークやRSSが作られるわけではない。
そこで、面倒なブックマーク付けとRSS用文字列抽出をHSPで作ったツールで補助しているのだが、基本的に毎日更新することを前提に作っているため、今回のような大停滞状態では使うことが出来ない。
そこで、hrタグや冒頭の日付の解釈機能や日付ごとに改行する機能などを入れ、複数日更新でも使えるようにした。
もっとも、複数日更新するようなことが頻繁にあっては困るが…。

■リンクマーク
いわゆるリンクの前にある「→」や「⇒」のこと。
ここ症候群や同一語句で違うリンク先というのを回避するため、「○○はここを参照」とする代わりに「○○はここ(⇒Fake URL)を参照」とするのが目的。
「→」は自サイト内用(target指定なし)、「⇒」は外部サイト用(target="_blank")。
ユニーク(唯一無二、面白いって意味じゃない)にするため、マーク後のリンク文字列は基本的にtitleタグの中身をそのままコピーしているので不適切だったり長すぎたりする場合もありうる。
これはtitle属性を指定すればいいらしいことをこの記事を書いてて始めて知った(ぉ)。属性名がtitleだし、titleタグの中身はこっちに書いてリンクアンカーは重複しない程度に簡潔化するのがいいのかも。
titleタグだけで単一化できない場合にはいろいろ付け足している場合もあるし、何もしてない場合もある。
同一titleタグで違うページとか違うブックマークにリンクしてる場合は「->」でtitleタグ内の文字列とブックマーク文字列などを結合。
このように大体固まりつつあるが、まだ厳密な運用ルールは確定してないので試行状態である(そのためわざと告知せずに使ってきた)。
そのため、リンクマークがないものも結構ある。
ちなみに、このリンクマークのアイデアはMicrosoftのサイトで外部サイトにリンクする時に「MS⇒」のような記号(実際には画像)が使われていたことにヒントを得た(しかし、Microsoftのはリンク文字列の後に付いている)。
補足:リンクの指針
私はAnother HTML-lintの警告(⇒Another HTML-lint : Explanationの208と209)で見つけたのだが、原文は⇒HTML Techniques for Web Content Accessibility Guidelines 1.0 -> 6 Links
あまり気にしすぎるのも…と思うが、やはり気になる。
しかし、その一方でもっと重大な警告を無視することもしばしば(ぉ)。

●ルータ熱暴走
また…。
電気代削減のために私はなんとか窓開け+扇風機で耐えている(一度エアコンかけ始めると惰性でかけてしまうので)のだが、ルータのほうは耐えられないらしい。
しかも、ちょうど4/14のルータ熱暴走記事の最終コミット作業(記事の確認と日付部分のブックマーク&リンク)をしている途中だった。
しかし、今回もサーバチェッカーがエラーを報告していたのに、また過負荷かと思って(ちょうどクロックを落としていた(2つ上の記事参照)ので)放置しかけてしまった。
これではサーバチェッカーの意味がないので、ちょっと改良して「sephiebrain.jpで接続できなかった時にローカルIPで接続試行し、成功すればルータ熱暴走とみなして通常の接続失敗時と違うエラーを出す」機能を実装しておいた。
補足:一応コネロス情報
Connection Lost Info
connection start: 2007/04/14 12:27:16
connection lost: 2007/5/5 15:5:57
connection time: 30395min(21day 2:38:41)
1ヶ月も経ってねぇ…orz。

●約定期blogのTB誤蹴
詳細は→約定期blog: 正規TB蹴ってた(ぉ)。で。
今(5/7 5:18)確認したら1件来ていた…spamTBがorz。

●日記停滞解消ならず
あと少しというところで体力と気力が尽きた…無念。
この記事は5/7に、もともとあった「日記停滞解消!(予定)」と置き換えた。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/6(日)23:59頃

う゛あ゛ぁぁぁぁ…下不下不っっ。
●激樽゛
どうやら風邪かなにか食らったらしく、猛烈な樽゛さ(もとい怠さ)。
しかも日記更新と深夜の番組視聴で徹夜なのが樽゛さをさらに増強。
ほとんど1日中寝まくってた。

●「Miria」クラッシュ
ちょwww不安定wwww…orz。
WUもないし、寝ようと思ってたので(クラッシュ発生は7:35:32、気づいたのは8:30頃)冷却も兼ねて電源を落としておいた。
ちなみに通常クラッシュ(ファイル消失なし)だった。

●久々の沈黙
どうせならできるだけ安眠できるようにということで、WU枯渇した「Naomi」をスタンバイに。
さらに「Fen」もCrystalCPUIDを使ってCPUクロックを落としてファンを止めた
これで、回っているファンは「Fen」の下にある冷却装置と「Sephie」だけになり、私の部屋に久しぶりの沈黙(厳密には沈黙じゃないが、普段と比較すると沈黙といって差し支えないほど静か)が訪れた。
しかし、目覚めは最悪だった(ぉ)。よほど疲れていたのだろう。
あるいは、静かになりすぎたせいで逆に深く眠れなかったとか…それはないよな。
※標準(NEC製)のEISTツールを切るのを忘れていたため、いつの間にかフルクロックに戻ってしまい、CPU温度が50度〜90度の間を激しく移行していた。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/7(月)5:35頃

ついに連休終了。
それはあまり関係ないのだが、またゼミ発表と技術者倫理レポートが未着手…。
●Google検索履歴
以前から存在は知ってたがあまり使ってなかった。
しかし、5/5のW-ZERO3で暇つぶしプログラミングその2を書くときに、何で検索してたっけ?と思ってgooメモリ・リトリーバで調べようとしたのだが、「Naomi」で検索していたために記録が残ってない。
IEの履歴を使って調べようとするが、すでに「先週」にまとめられていたため、捜索は困難になっていた。
そこで、ふとGoogleの検索履歴が使えないかと思ってみてみると、あっさり発見。
この検索履歴はGoogleにログインした状態で検索すれば、どのマシンで検索していても記録が残るし、何か(Googleツールバーとか)をインストールする必要もない(でも、全マシンにGoogleツールバー入れてるけどな)。
まあ、人によっては個人情報がGoogleに溜まるのがいやと思うかもしれないが、私は便利なのでこの機能はアリだと思うな。
特に今回のように、日記書くときにどうやって検索したかよく調べるので非常にありがたい。
gooメモリ・リトリーバと違って何GiBも食わないし(それどころかローカル領域は1バイトも消費しないはず)。

●月初めバックアップ
あ゛、まだやってない…。
とりあえず先に日記コミットするか。

●日記停滞解消!
4/4から続いた停滞がついに解消。
途中、シレンやマリオ、動画(AmebaVisionとかYouTubeとか)などで逃げまくった(ぉ)ため、随分かかってしまった。
もっとも、停滞のおかげで未来の記事へリンクするというありえない現象も何箇所かあるのだが(普通なら過去の記事が間違っていることが分かったり、古くなってしまったり、追加の関連情報を得たりした時でもなかなか修正・補足ができない)、本来期待すべきでない効果である。
実は5/5深夜〜5/6超早朝(0〜1時ごろ)にコミットする予定だったが、猛烈な樽゛さに襲われて今(5/7 5:38)まで伸びてしまった。
5/7分だけ後でコミットしてもいいのだが、出来るだけ早くReadMe!や日記才人にコミットしたいのと、バックアップ前でちょうどきりがいいので分割コミットすることにした。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/7(月)23:59頃

月初めバックアップをするはずだったのだが…。
●「Fen」のLinux弄り〜無線LANは茨の道〜
「Naoko」のLinux弄り -> 無線LANで書いたように、「Fen」もAtherosチップなので同じように無線LANのWPA化が出来ると思い、バックアップついでにさくっとやってみることにした。
しかし、それがまさかこんなことになろうとは…。
以下、メモからコピー&リンク張り。

↓ここからメモ

madwifiで/lib/modules/2.6.0/build/.configがないといわれた。
カーネルソース(/usr/src/linux)内にも.configがなかったのでconfigsからサンプルをコピー。
インストール時に古いデバイスを消すかといわれたのでr(remove)。
そしてwpa_supplicantインストール。
書き忘れそうになったが、wpa_supplicant入れるときにdynamic_eap_methodsがないのでmake installがエラーになる。
とりあえずtouch dynamic_eap_methodsでしのいだ。

しかし、そもそもデバイス認識してないっぽい。
Fedora Core 5でmadwifiな無線LAN(覚書) Gyaoのぶろぐ/ウェブリブログを参考にlspciでデバイスを確認。間違いなくAtherosだ。
しかし、modprobe -a ath_pciでエラー。
古いドライバが残っているのかと思って手動で消して入れなおすが×。
たまたまdmesgをやってみると、モジュールのバージョンが違うのが原因と判明。
サンプルの.configを持ってきたせいで、実際のカーネルと設定が違っていたらしい。
とりあえずエラーメッセージから「CPUが686」「SMPカーネル(シングルコアなのに何故?)」でなければならないことがわかったのでその部分だけ変更してmadwifiをmake&install。

しかし、modprobe -a ath_pciで固まったり(dmesgするとクラッシュしてる)、modprobe.confを書き換えると起動中フリーズしたり(レスキューモードでmodprobe元に戻して復旧)とどうも×。

しかたがないのでカーネルコンパイル。
2.6.21.1をDLし、make config…あまりに項目数が多すぎて断念。
ってことで2.6.0-24のサンプルをコピー&make oldconfig
これもかなり項目が多かったので最後は適当にEnter連打。
一応Wireless関係が問題ないことを確認。
ついでにマウス解像度とかってのを1400*1050にしておいた。

そしてmake bzImageとmake modulesを平行して行う。
…が、またmake bzImageでエラー。

BFD: Warning: Writing section `.bss' to huge (ie negative) file offset 0xc02b3000.
objcopy: arch/i386/boot/compressed/vmlinux.bin: File truncated

BFD Warning .bss hugeでぐぐって
Kernel compilation errors - Technology Questions: Desktops, Notebooks, Tablet PCs, UMPCs, MID, and Mobile PCs
を発見、どうもbinutilsのバージョンが古いとうまくいかないらしい。
binutils --version…あれ、ファイルがない。
binutilsってのはパッケージ名なので個々の名前は違うらしい。
rpm -q binutilsで見ると2.14.90.0.4-3なので、もしかするとbinutilsをバージョンアップするといけるかも。

で、BINGO!無事コンパイルが通る。
しかし、最後のカーネルインストールで進まない。
並列インストールしたのが悪いのかと思い、.configをバックアップ→make distclean→.config戻す→make bzImage→make modules→make modules_install→make installするが同じ。
arch/i386/boot/install.shにecho入れて調べるとカスタムスクリプト(installkernel)実行するところでとまってる。
さらに調べる。
/sbin/installkernelの最後、/sbin/new-kernel-pkg実行でとまってる。
/sbin/new-kernel-pkgを書き換えてverbose="1"すると、mkinitrdでとまっている。
/sbin/mkinitrdを書き換えてverbose=1やecho入れると/sbin/nashでとまっている。
/sbin/nashは…バイナリだorz。
nashにパスを渡して手動でやってみるが、何も表示されず止まったまま。
そこで「Miria」で試しにmkinitrdをやってみると、nashでfindlodevを実行すると/dev/loop0とかが帰ってくるらしい。
そこで、強制的にloop*を片っ端から入れて実行するか?と思ったとき、さっき実行したnashが終了できないことに気づく。
Ctrl-Cもkillも効かない。
おかしいと思ってps -Afをすると、大量のmodprobeやmkinitrdが!
これはやばい…ってことで再起動。
再起動後、make installするとあっさり通った(ぉ)。

その後、modprobe -a ath_pciするとath0とwifi0(ath0が無線、wifi0はループバックか?)が出現し、wpa_supplicantやネットワークの設定を行うと無事接続できた。

が…今度はPlanexのGigabit Ethernetカードが認識されねぇ。
もしかしてホットプラグ関係offにしてしまったのか?

それとは関係ないがwirelesstools(⇒Wireless Tools for Linux)バージョンアップ。でもほかのが新しすぎるとの警告は出たままだ。
今まではWE16対応→WE20対応に。wpa_supplicantあたりはWE22でコンパイルしてあるようだ。

で、カードが認識されない件だが、murasaki(⇒Murasaki (another HotPlug))バージョンアップしてみる
しかし、やはりだめ。
その後、起動時メッセージをCtrl+Alt+F2でコンソールを出して確かめると、そもそもPCカードスロットが認識されていないことが判明(cardmgr: no sockets found!とか出る)。
どうやらカーネルオプションでそのあたりを切ってしまったっぽい?

やっぱりBINGO。
yenta-compatible〜とかのあたりを全部切ってたのが原因だった。

今度はmurasaki.pci暴走。
PukiWiki for raccy - kernel2.6.xにしてみるを参考にinit.pciをoffに。
パーミッションが444なので一時的に744などに変更して編集。

ところが今度はmodprobe -a ath_pciしてもath0が出てこない。
どうやらカーネルをコンパイルしなおしたのが原因らしい。
ってことで再度madwifi、wpa_supplicantをコンパイル&インストール。
今度こそ無線LANもGiga Etherも両方開通した。

…バックアップするはずだったのにこれでほぼ1日つぶれたorz。
しかも、よく考えたら大きくてしかもファンが壊れてる「Fen」を持ち運ぶことなんてほとんどないはずだから、無線開通させた意味はほとんどない…ぴしっ…ぱりーん。

↑ここまでメモ

ちなみにこのメモは「Sephie」で書いていた。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/8(火)23:59頃

泥沼は続く…。
そしてレポと発表はまだ未着手……。
●「Naomi」バックアップトラブル
7日にできなかった月初めのフルバックアップを行ったのだが、最初の「Naomi」でつまづいた。
RAID解除してから使えるようになったNorton Ghost(仮想パーティションモード)でバックアップしかけて、やっぱりSystem Selector 2のパーティションマネージャでバックアップしようと思い、ghrebootをかけると反応がない。
しばらくして「このディスクにはアクティブなパーティションがない。どうする?」というメッセージが。
選択肢は「先頭のパーティションをアクティブ」「仮想パーティションを削除」「DOSにもどる(キャンセル)」の3つ。
とりあえず仮想パーティションさえ消せばSystem Selecorでなんとかなるだろうと思い、2番目を選択。
その後、System Selector 2でバックアップを取り、普通にWindows XPを起動しようとしたが、起動しない。
ブートセクタが破損したのかと思い、Linuxのレスキューディスクで確認しようとするが、そもそもHDD自体を認識しない現象が多発(電源OFFからのコールドスタートでも発生するが、電源ユニットをOFFにして入れなおすと直る)。
これはHDD自体がいかれたかと思い、HGST DFT(⇒Support - Downloads and Utilities -> Drive Fitness Test)でスキャンするが異常なし。
もしかして、単純にMFTが吹っ飛んだだけなのでは?と思い、XPのインストールディスクで回復コンソールを立ち上げ、fixmbr。
すると、起動メニュー(以前Vista RC1を入れたときにVista化したもの)が出たものの、ntldrがないか壊れているといわれて起動しない。
バックアップディスクのほうを「Sephie」で見るとntldrはあるので、どうやら壊れたっぽい?
そこで、だめもとでfixbootを行った(以前fixbootで20GのSCSI HDD吹っ飛ばしたことがあるのでトラウマ)ところ、無事起動するようになった(ただし、Vistaのブートメニューは消え去った。もっとも、すでにVista RC1は消してあるので問題ない)。
しかし、MBRが壊れただけでBIOSレベルの認識も不安定になるのか…。

●バックアップ
前述の「Naomi」で起きたHDDトラブル(最終的に無傷で復旧)以外は問題なく完了。
「Naoko」はほとんどデータを置いていないのでバックアップは行わず、「Fen」と「Sephie」はNorton Ghostを使ってPartition to Partitionコピーを行った。
しかし、いつも思うのだが、複数のパーティションを同時にコピーできたらいいのになぁ。
それならDisk to Diskを行えばいいと思うかもしれないが、それだとコピー先のHDDのセクタ数がコピー元より多くなければならず(仮にコピー元のディスクを100%使用してなくても)、コピー先のHDDのパーティションは全てクリアされてしまう(当然かもしれないが、仮にコピー元が80GB、コピー先が160GBだった場合、コピー先の80GB地点以降から始まるパーティションはそのままにしてほしいのである)。
仕方がないので、手動でPartition to Partitionを複数回行っている。
ところで、今のバックアップ計画だと、人為ミスや論理的・物理的クラッシュ(ノイズや寿命によるもの)は防げるかもしれないが、火事や地震ではデータが消失してしまう可能性がある。
もっとも、そういった天災は滅多に起こらないことではあるのだが、可能性は0とはいえない。
特に、南海地震が発生したらただじゃすまないかもしれない。
ということで、できることならば遠隔地にTBクラスのストレージがほしいのだが、やはり料金がなぁ…。
ただ、そこまでして守るべきデータがあるのかといわれると微妙だけどね。
とりあえず今は一部の重要なデータ(パスワードなど)をSSHでmcrn.jpに転送している。
これで我が家に最悪の事態が起きても大丈夫…じゃないけどすこしはましかな。
もっとも、レンタル鯖でのリモート保存はパーミッションとかミスると情報流出する危険性が高いので注意が必要だ。
さくら鯖のようにHTTP鯖公開領域とそうでない領域が分かれていて、かつSSHが使えるようなサーバだからやってることだが、自分のアクセスできる最上位ディレクトリがHTTP公開領域のルートだったり、アクセス手段がFTPやtelnetなどの非セキュア接続しかない場合はやめておいたほうがいい気がする。
…と書いてて、気になったのでパーミッション調べてみると、ディレクトリはdrwx------(700)だったがファイルが一部-rw-r--r--(644)だったので全部-rw-------(600)にしておいた。
ディレクトリが700なのでパスが分からない限りアクセスできないが、同じさくら鯖の誰かがファイル名総当りで読み出せてしまうかもしれないからね。

●部屋の片付け
またごちゃごちゃと汚くなってきたのでさくっと片付け。
といっても、PC机周辺以外は以前片付けてからそんなに悪化してなかったので短時間で終了。
次に本格的に整理整頓するのは夏休みかな。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/9(水)23:59頃

人はなぜ過ちを繰り返すのか…。
●部屋の片付け続き+掃除
微妙に残ってた分を片付けて掃除機をかける。
あと、コンセント周りの埃を手動ブロア(もとはカメラのレンズ掃除用)で吹き飛ばす。
埃がたまったままだとトラッキングで火災が起きる可能性があるからね。
火災といえば、タコ足配線でも起きるらしいが、あれは使用してる機器の消費電力が許容量を超えてるからなのでは?
私の部屋ではワットチェッカーで電力(有効電力Wと皮相電力VAの両方)を計測してるので超えればすぐ分かる(アラームが鳴る)。
ただ、気になるのは中学校の技術の時間に作ったOAタップが未だに現役であるということだ。
毎日約6〜7A(ワットチェッカーで計測した皮相電力は600〜700VA程度で、そのほとんどがPC用であるそのタップに流れている)の電流を流し続けてすでに7年以上(もっとも、当時から今ほどの電力を使っていたわけではないが)経っているのだが、消耗しないのだろうか…。

●SETI@home鯖落ち続く
復活しないなー。
「Fen」に1度だけ2WUが割り当てられた(2007/5/9 7:34頃)が、その後はNo work from projectかScheduler request failedばかり。

●レポ&発表
まだ…できてませんorz。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/10(木)23:59頃

久しぶりの外出で足(股)が痛い…よっぽど弱ってるんだなぁ。
●SETI@home鯖落ちまだ続く
ニュースとフォーラムを見ると、サーバが届くのが遅れていて、11日になるらしい。
さらに、週末をはさむので復旧は14日になるんだとか。
こうなったら「Miria」落としておくか。
起動耐久テスト兼ねて立ち上げてるんだが、他のマシンと違って特に何かしてるわけじゃないからなぁ。
ってことで電源スイッチぽちっとな…じゃなくてpoweroff。
「Naomi」や「Fen」も必要な時以外は落としている。WU供給復活までしばし省エネモードだな。
当然だが「Sephie」は落としてない。

●駅前
留学…ではない。
JR和歌山駅周辺の小ネタをまとめて。

■電光掲示板の後
この日記でも何度か紹介した電光掲示板が消えてから1年以上が経つ(→電光掲示板が消えていた)が、その場所に看板が建てられていた。

新しい看板今度は電光掲示板ではなく、普通の看板。

これで電光掲示板が復活する可能性は少なくとも今後数年ぐらいは0になったな…。
もちろん、10年、20年先にはどうなってるか分からないが。

■マクドナルド横のビル
今年1月に工事中(駅前ビル工事、→工事)だったビルが完成(というか工事終了)していた。

ビル工事完了右下1/4に見えているのがそのビル。角を削ったように見えるが…。

最近マクドナルドに行かなくなったため、いつ完成したのかのかは不明。
また、同様の理由で途中経過を見てないので、どこまで壊して建て直したのかも不明。

■VIVOの新しい案内看板
以前はコインロッカーがあったところに案内パネルが出来ていた。

VIVOの案内板これで目的の店がどこにあるか分かりやすい…が、私は本屋しか行かないのでどうでもいい(ぉ)

他にも、階段側面のガラスに文字が入るなど、微妙に改装されている。

●大学
最近、週に1回しか行かなくなってるが、体力維持のためにもう少し行ったほうがいいだろうか…。
ちなみに、今のところ大学が唯一の外出先になっている(ぉ)。

■風力でも発電
以前紹介したハイブリッド発電装置(→大学 -> 風力発電)に発電メーターがあることを書いた(大学ネタ -> ハイブリッド発電のメーター)が、その時は風が吹いていたにもかかわらず風力発電の発電量は0W表示だった。
その時は風力は測定できないのかな?とも思ったのだが、どうやら相当な風力がないと発電できないらしいことが判明。
残念ながら写真はない(発電量が0ではないタイミングを狙うのが難しかった)が、強風が吹いた後にメーターが一気に100W以上に跳ね上がるのを確認した。
もしかしてある一定以上の回転数がないと発電できないのか?
そういえばパネルには「定格出力 400W」って書いてあったな。ひょっとして0W or 400W?

■ゼミと技術者倫理
10日になった時点では白紙だったが、電車の中で「Naoko」を使って進めたのと、ゼミ開始時間が予定より30分ほど遅くなった(ゼミメイト(というのだろうか?)が就職活動で遅れたので)おかげでなんとかそれなりに仕上げた。
しかし、それでもゼミ発表のほうは本来の1/2程度しかできなかったので、無理矢理2部仕立てにした。
次の発表は2週間後だが、今度はもう同じ手は使えないぞ…。
技術者倫理のほうは相変わらず難しい話だ。倫理とは普遍と自律だ…とか。
しかし、毎回思うが、最近ニュースを騒がしているような不祥事(最近だとエキスポランドのジェットコースター事故)起こしてるところは技術者倫理教育やってんだろうか?

●W-ZERO3とプロセスモニタ
W-ZERO3でGSPocketMagic++を使っているのだが、pRSSreader(⇒pRSSreader - Free RSS Reader for PocketPC)と同時に使っていると、どちらが原因かは不明だが、GSPocketMagic++のメニューが出なくなることが頻繁に起こる。
しかし、メニューが出ないだけで、タップ&ホールドや×ボタン拡張は生きているので、フリーズしているわけではないらしい。
そのため、タップ&ホールド動作(スタートメニュー側と×ボタン側で別になっている)にGSPocketMagic++終了を割り当てられれば再起動してなんとかなると思うのだが、そんな機能はないし、残念ながらソース公開が停止されていてこちらでは改造できない。
そこで、他のタスク管理ツールをインストールし、それを使って強制終了させればいいのでは?と考えた。
しかし、Windows Mobile(Windows CE、PocketPC)用のタスク管理ツールは、表示されているウィンドウ(WM_VISIBLEがセットされている?Windows XPのタスクマネージャにおける「アプリケーション」タブの内容に相当)しか扱うことができない。
GSPocketMagic++は普通のウィンドウを持たないため、それらのツールでは対応できないのである。
要するに、Windows XPのタスクマネージャの「プロセス」タブやtaskkillのように、プロセスを直接殺すことができるツールがあればいいということになる。
で、「"Windows Mobile" タスクマネージャ」でぐぐって⇒タスクマネージャー (WM5嵌り中)経由でMobile TaskManager(⇒Windows Mobile Software by Silvio Iaccarino)発見。
プロセス単位での列挙、情報表示、強制終了はもちろん、可視ウィンドウ(タスク)の切り替え・終了や、CPU使用率/メモリ残量の表示までできるという、まさに私が求めていた、いやそれ以上のツールだった。
ところで、このツールを使ってプロセスを見ると、filesys.exeやdevice.exe、gwes.exeがかなりのメモリを食っているのが分かる。
しかし、これらはカーネルのツールなので終了することは出来ない。
どうやら、Windows Mobile 5.0ではカーネルの機能を普通のexeとして実行しているらしい(6.0からはカーネル空間に置くようだ)。
ところが、ブラウザなどを立ち上げていない状態でもシステム関係以外にメモリを食っているものが1つだけある。
それはW-ZERO3用高速化サービスツール(VentCE.exe、Venturi Client)で、なんと約2400KiB(ある時点では2462KiBだった)も食っている。
高速化サービスにはもうひとつVspin.exe(竜巻マークを出す)があるのだが、こちらは100KiBほどしか食ってない。
最近やたらNetFrontでメモリ不足が出るようになったと思ったらこいつの仕業だったのか…。
どうしよう、アンインストールしようかなぁ…。
と思っていたが、5/12のパススルー接続トラブルを解決する過程でventsvcctrlというツールを発見。
これで重いページのときはventsvcctrlでVentCEを終了させればOK(普通にMobile TaskManagerからVentCEを強制終了させると復活してくるので無理)。
でも、重いページほど高速化が効いて欲しいものなんだけどなぁ。
まあ、VentCEを止めていても高速化サービスONにしていればある程度高速化が効くんだけどね。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/11(金)23:45頃

木曜日大学→金曜日ダウンが定番に…いや、定番になったらあかんて。
●Zzz...
反動で半日以上寝てた。
だめだ、もっと体力回復させないと…。

●SETI@home鯖生きてる?
2007/5/11 14:55:16 JSTごろに「Sephie」に1WUだけ割り当てられた。
どうやらちびちびとWUを生成してるらしい。
ただ、要求の多さに比べると全く足りていないため、ほとんどNo work from projectかScheduler request failed: couldn't connect to server(BOINC Manager 5.4.9でのメッセージ。前者はWUがないからで、後者はそれが原因で各地のクライアントがDDoS並に接続しているかららしい)で、1日に1個もらえるかどうかといった状態だ。
と、これを書いていて2007/5/12 23:08:59 JSTごろに「Sephie」に1WU割り当てられているのを発見。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/12(土)23:19頃

ネタは欲しいがトラブルはいらん!!
●W-ZERO3でパススルー接続できねぇぇ!!
…という事態になった。
普通、W-ZERO3とPC(母艦)をActiveSyncで接続すると、W-ZERO3から母艦のインターネット接続が利用できる。
そのため、ActiveSyncで接続された状態では、Pocket IEでGoogleなどに接続してもW-SIMでダイヤルアップすることはない。
しかし、なぜかActiveSyncで接続している状態なのに毎回ダイヤルアップしてしまい、キャンセルすると接続できないという状態になった。
そして、それを解決するために半日をつぶす泥沼に陥ることに(事態に気づいたのが13時頃だと思う)…。
最初はパススルーなんて語を知らず、高速化サービスツールを入れたせいだと思い込んでいたので、「高速化サービス ActiveSync」でぐぐる。
そして、高速化サービスをON/OFFするventsvcctrl(⇒W-ZERO3.org Uploaderのup0270.zip、消えてたら残念無念再来年)などを入れて試すが×。
弄っているうちに「サーバーが割り当てたIPアドレスを取得できませんでした。後でもう一度試してみるか、ネットワークの設定でIPアドレスを入力してください。」と出るようになってしまった。
どうやら「設定→接続→ネットワーク カード→アダプタをタップして〜→Remote-NDIS ホスト」を弄るとアウトらしい※。
仕方がないのでフォーマット(蓋開け→リセットボタン→蓋戻し→Fn+F+電源ボタン、設定や本体に入れたファイルが全て初期化される)し、4/29のバックアップに書き戻す。
PrologやLispなど、それ以降に入れたプログラムを入れ、高速化サービスツールをアンインストールしたり、ActiveSyncを4.1→4.2にバージョンアップしたり、「ActiveSync パススルー」でぐぐったりしていろいろやるが解決せず。
問題の切り分けをするため、順を追ってひとつずつ確かめていくことにした。
注:以下の手順はバックアップ書き戻し前にも行っているものもある。

・全く接続できていないのか?
どうやら、接続自体はできているらしい。
その証拠に、PocketPuTTY、24term、PortForwarderなどはパススルー接続できる。
.NET VNC Viewerも、ダイヤルアップしてしまうが、キャンセルするとパススルー(正確にはパススルー接続しているPortForwarderのトンネリングポート上)で接続できる。
逆に、だめなのはPocket IE、Opera、NetFront。つまりブラウザ系は全滅。
ダイヤルアップをキャンセルするとエラーが出て接続できない。

・HTTPポートがだめなのか?
高速化サービスの関係で、ポート80に特殊な処理をかけているのが原因でつながらないのかも…と考えた。
しかし、24termやPocketPuTTYでmcrn.jpやwww.google.co.jpのポート80に接続してみると普通に通る。

・高速化サービスのせいか?&PC or W-ZERO3のどちらに原因?
高速化サービスが悪いのかと思い、ventsvcctrlで止めるだけではなく、思い切ってアンインストール。しかし×。
バックアップした後、再度フォーマットしてためすとパススルーに成功。これでW-ZERO3自体の問題であることが判明。
その後、高速化サービスだけ入れてみたが、パススルーに成功。つまり高速化サービスは無実。

ここまできて「万策尽きたか…」とあきらめかけたが、もしや接続関係の設定が違ってるのでは?と思い、「設定→接続→接続→詳細設定→ネットワークの選択」と「設定→接続→ネットワーク カード→ネットワーク カードの接続先」を確認したところ、前者の「プライベート ネットワークに自動的に〜」と、後者の設定が共に「社内ネットワーク設定」(正確には前者のほうは「既定の社内ネットワーク設定」)になっていた。
そして、バックアップに書き戻して確認すると、前者が「センタ名称設定」、後者が「インターネット設定」になっていたので、両方とも「社内ネットワーク」にしたところ、あっさりとパススルー成功。
が、こんどはEasyDialでダイヤルアップできねぇ…。
これは、オンラインサインアップ(「設定→システム→オンラインサインアップ(実際は半角カナ)」)をやり直すことで解決。
この状態でバックアップをとって終了。時間は22:48…orz。
最近「Fen」の無線といい、「Naomi」のバックアップといい、何かとトラブル多いなぁ…。
※追記(2007/5/21):テスト用の文字列(あがががががががが((((((;゜Д゜))))))あがが)のままになってたので修正。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/13(日)23:35頃

5時ごろから昼まで寝てた…。
●「Miria」超不安定化
13日だけで7回クラッシュ。
詳しい時間は6/1の更新でログを貼るが、短い時は起動後1分〜5分でクラッシュ。
何故かは分からないが、安定から一転してとんでもなく不安定になってしまった。
もしかしてSETI@homeのWUが枯渇して電源切ってあったのがまずかったのか?
確かにENIAC時代は電源入れっぱなしのほうが真空管寿命長かったとかいわれてるが、まさか今のPCではそんなことないだろう(むしろ常時稼動のほうが消耗速いという話もある)※。
また20日超えの安定稼動に戻ってくれないかなぁ…
補足:稼動状況とコンピュータの寿命
本題じゃないのでスルー(ぉ)。じゃあ補足書くなよ。
気になる人は適当に検索して調べてくれ。
私の場合、今回のような特殊な状況でなければSETI@homeのために全マシン常時稼動確定なので関係ないけどな。
ただ、経験上言えることは、回転もの(HDD、ファン)は連続稼動させるとへたるのが早い。
大抵常時稼動させるような場合は稼動停止が致命的なので、スペアパーツを用意しておきたいところだ。

●SETI@home復帰…またダウン?
Berkeleyのスタッフが休日出勤?してくれたおかげで予定より早くサーバが動き始めたらしい。
13日の超早朝〜早朝あたりから各マシンにWUが配布され始めた。
トップページのニュースにも復帰を報じる内容が書かれている。
しかし、夕方頃に見るとWUの配布が止まっている。
Technical News(Takin' Care of Business and Workin' Overtime (May 11 2007) -> Message 566432)を見ると、現地時間5/12 23:30(日本時間5/13 15:30)ごろからネットワークトラフィックが激減していることが分かる。
ちなみに、普段のネットワークトラフィックはこんな感じ(⇒Graphs for gigabitethernet2_3 -> Monthly packets、5/13時点で右の2週ほどがサーバダウンの影響を受けている)。
ステータスページを見る限りはサーバ群は生きていると表示されているし、BOINC Managerのログを見てもschedulerには繋がっているので、uploader/downloader関係のネットワークの問題だろうか?
それともステータスページの情報が間違っていて、実はuploader/downloaderが落ちているのだろうか?
いずれにしろ、完全復活にはもうしばらく時間がかかりそうである…。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/14(月)23:59頃

サイト手入れ三昧な一日だったな。といっても一日中やってたわけではないが。
●LAST_MODIFIED1時間ずれ問題解決
トップページにSSIで更新時刻を表示するようにしていたが、なぜか1時間進むという現象が発生していた。
面倒なので放置していたが、やはり気になるのでなんとかならないか調べてみた。
「SSI LAST_MODIFIED 1時間」でぐぐって⇒[03/06/10 21:35] LAST_MODIFIEDとflastmodの時刻が1時間ずれる発見。
システム環境変数にTZを作ってJST-9をセットしたところ直った。
しかし、上記ページにはXPだとずれてないように書かれている。ではなぜ「Sephie」だとずれてるんだろうか?
まあ、解決したからいいか…。

●カウンタ類のローカルつぶし
アクセス解析とアクセスカウンタをローカルからアクセスしたときにカウントしないように改良。
さらに、ReadMe!アイコン表示CGIにもローカルチェックを仕込んで、ローカルからアクセスした時には偽のアイコン(ReadMe!鯖ではなく自鯖に置いてあるのでカウントされない)を表示するようにした。
これはあまり外部には関係ない。
私が自宅から「http://sephiebrain.jp/〜」でアクセスした時にカウンタが回らなくなるというだけである。
実は最近、約定期日記全文検索を頻繁に使っていて、その際に普通にリンクを辿ると自爆(サイト管理者自身が自分のサイトにアクセスしてカウンタを回してしまうこと、あるいはそれによってキリ番を踏んでしまうこと)してしまうので、htmlファイルをFrontPageやTeraPadで開くという面倒なことをやっていた。
この改良によって今後はそんなことをしなくてもよくなった…のだが、全ての自爆を防げるようになったわけではない。
当然だが大学からアクセスした時はカウンタが回ってしまうわけだ。
これを防ぐにはCookieを使ったログインシステム(ログインするとカウンタが回らなくなる)でも導入するしかなさそうだ。
あぁ、自爆が問題にならないほど多くのアクセスがあればなぁ…。

●約定期blogのspamTB対策
詳細は約定期blog: spamTB対策強化+リファラチェックテストで。
一部は5/15に割り込んでるけどこっち(約定期日記側)の記事は14日だけに投げておく(どうせほとんど中身ないし)。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/15(火)23:59頃

今度はSETI@home三昧?
●SETI@home復活っぽい
5/15 0:30 JST頃からネットワークトラフィック(⇒Graphs for gigabitethernet2_3 -> Monthly packets)が40〜50Mbit/sに跳ね上がった。
これはWU(Result)※のupload/downloadが動き始めたということだ。
まだアクセスが殺到しているようで繋がりにくいが、すぐに解消されるだろう。
これでしばらくは安定してるかなぁ。
※補足:WUとResult
WU(WorkUnit)というのは、電波望遠鏡の記録データから切り出した解析対象のデータ。
Resultといのは、仕事を管理するための単位で、1WUあたり初期状態で4(今は3)つ作られる。
サーバステータスページの表記などから見るに、流れとしては
記録テープ(科学DBにある?)からデータを切り出してWU生成→1つのWUを元にResultを数個生成して送り出し待ち→クライアントにResultを送る→ほぼ同時にWUも送る→クライアントからResult返る→Resultが決められた数だけ返ってきたWUについて検証→合格なら科学DBに同化→不要になったWUを削除→しばらく(数日?)してからResultも削除
という感じだと思われる。
今回はまず最初にマスター科学DBが落ちたのでWUが生成できなくなり、その結果Resultも生成不能、クライアントがアクセスしても「No work from project」状態になった。
次にマスター科学DBが復帰したが、すぐにネットワークかupload/download鯖が不調になり、Resultは手に入る(ダウンロードキューに載る)ものの実際のWUがダウンロードできずに解析不能になったというわけだ。
しかし、仕事単位のことをResultと呼ぶのはややこしいなぁ。WU解析した結果ならResultでもいいだろうけど、解析前から仕事単位のことをResultと呼んでるし。
いっそJobとかTaskとかにすれば分かりやすいのだろうが、そうすろと解析後の結果を呼ぶには合わなくなるし、解析前と解析後で呼び方を変えるとよけいにややこしくなるかもしれない。
まあ、一種の専門用語だと思えば別にResultでも問題ないか。

●SETI@homeよもやま
他にネタがないのでSETI@home関係の小ネタを。

■星が消えた
アカウントページやユーザリストで、寄付した証である緑色の星が消えていた。
意図的に消すことは出来るのだが、そんな設定をした覚えはない。
しかし、アカウントページの一番下の「Donations to SETI@home」を見ると、寄付を匿名にする設定がyesになっていることに気づく。
もしかしてサーバクラッシュが原因でデータがおかしくなったのかと思い、設定を非匿名→匿名→非匿名と切り替えてみたが変わらず。
で、設定ページをよく見ると「直近1年(原文はin the last year)に10ドル以上(そもそも10ドル以下は寄付できない)寄付すると、星印が名前の次に付く」といったことが書かれているではないか。
1年…あ゛、寄付したの2006/5/11 16:53:11 UTCだ!
ということで、最後の寄付から時間が経過しすぎたのが星が消えた原因だった。
どうしようか悩んだが、25ドル(今の相場だと約3000円)寄付して星を復活させることにした。
収入がない(厳密には月13000円の小遣いがあるが、ネット(Bフレッツ+OCN)とW-ZERO3の月額料金に消える)状態なので少々痛い額だが、次のバイトが入ったら(一応見込みはある)余裕で相殺可能だろう。

■バージョンアップ…中止
現在SETI@homeは最適化バージョン(⇒Seti@Home optimized science apps and information)を使っているが、BOINCクライアントは古い5.4.9のままである。
今回鯖落ちでTechnical Newsを見ていたら、「5.9ではタスクリストの進捗度にプログレスバー(かつてのBOINCクライアントにはあった)が復活している」という書き込みを見たので、「Sephie」のマネージャを5.9.10に上げてみることにした。
しかし、ベータ版だからか、あるいは改造版クライアントを使っているからか、エラーが大量に出て、持っていたWUとResultが全て消えてしまった(なぜかその時ダウンロード中だった4個ほどは残った)。
ということでバージョンアップは中止して、「Naomi」からファイルをコピーして5.4.9に戻す。
何が悪かったのかは不明だが、やはり安定して動いてるものを下手にバージョンアップするもんじゃないな。
次にバージョンアップを試すのは、多分本家から指示される時になるだろう。
ちなみに、boinc.exeを5.4.9にして、boincmgr.exeだけ5.9.10にする(実際には他に5.9.10のDLLファイルが一部必要だが)と、一応動くものの、メッセージがおかしくなる(適切でない単語になったり、日本語モードなのに英語が表示されたりする)。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/16(水)23:59頃

明日はゼミはないけど技術者倫理はある。で、毎度のごとく課題未着手(7:34時点)
これコミットしてる5/17 4:51でもまだ未着手(ぉ)。
●約定期blogでReadMe!大量自爆発覚
5/14に自爆防止の対策を行った(→カウンタ類のローカルつぶし)が、ReadMe!のアクセス数を見ていて、約定期blogのReadMe!アイコンは対策してないことに気づく。
同じ日に行ったspamTB対策(→約定期blogのspamTB対策)によって、テスト用に使ったエントリから10回も呼び出されてしまっていた。
そこで、約定期日記と同じようにSSI(ローカル対策済み)で呼び出すようにしておいた。
さらに、バイナリエディタで全文検索をかけ、直接アイコンを呼び出しているところがないか調べたところ、約定期日記で2箇所ほど見つかった。
おそらく以前に別の置換ツールを使って修正した際に、微妙な違い(スペース1個とか)で漏れたのだろう。
しかし、これで今まで以上にReadMe!のアクセス数が減ってしまうだろうなぁ。
まあ、自爆でカウントが増えてもうれしくないけどね。

●寝まくった
9〜10時ごろから20時ごろまで寝てた(ぉ)。
ここ2、3日は珍しく体動かしたり、いつものように徹夜したりしてたから疲れたんだろう。
しかし、疲れは蓄積されるのに、睡眠は蓄積されないんだよなぁ。
モバイル機器の外部電源みたいに睡眠も貯めておけたらなぁ…。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/17(木)23:59頃

またレポ出来てない状態で大学に行くことに。
こぼれネタワード(久しぶり):livedoorそっくりのロゴ(でも色は青)でlifedoorという消費者金融の広告を発見。
●大学
毎週木曜日は大学ネタ。
この日はゼミは休み。

■JABEEおk
学科のJABEE認定が通ったらしい。
さらに、JABEE時間不足問題も、体育(実技、講義)を含めることでクリアできたとのこと。
これで、あとは技術者倫理と卒業研究の単位を無事取得すればJABEEコースクリアで技術士補になれる(厳密には申請が必要)。
でも、その後の技術士は相当難しい二次試験があるし、その受験自体に実務経験が4年必要らしいので簡単にはなれないだろう。
というか、調べてみると(⇒技術士 - Wikipedia)超難関なわりに微妙な資格かもしれない…。

■技術者倫理本ミス多いかも
技術者倫理の教科書は、放送大学(放送大学教育振興会)が発行している「技術者倫理」(ISBN978-4-595-23737-9、市販バージョンは3570円)なのだが、第1刷が2004/3/20発行で、現在(というか私達が使っているもの)は第3冊で2007/2/20発行と、作られてから結構期間が経過しているのに、全く見直されていないのか些細なミスが多い。
例えばミニケースの部分で「Aさんの判断は正しだろうか。」(「い」が抜けている)とか、第6章のタイトルは「技術者としていかに行動すべきか(3)」なのに、ページ数などが書かれている端の部分(何というのかは知らない)は「技術者としていかに行動すべきか(1)」になっているとかである。
一度も改定されていないのは放送内容のほうが変化していないので本の内容も変えなくてもいいと思っているからかもしれないが、それでもちょっとしたミスぐらい増刷の時に直せないものなんだろうか?
まあ、今のところ発見しているミスは本当に些細なことなので、別に間違っていても講義に全く支障はないから別にいいんだけどね。
補足:
ちなみにこの本は大学が購入して借りてるだけなので、講義が全て終わったら返却することになっている。
あと、本のミスについては触れたくない思い出があるのだが、それは自鯖100周年ぐらいに明かすことにしよう(絶対生きてない=明かす気ゼロ?)。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/18(金)23:59頃

SETI@homeたながらないクポー!!
TBspamうzeeeeeeeクポー!!!
…って約定期blogでも書いた。
叫んでもどうにもならないけど、叫ばずにはいられない。
●約定期日記コメントspam
2007/1/1の更新にコメントspamが来ていた(今はもう消してある)。
しかもウイルス仕込んでるっぽいやばげなやつ(自作テキストブラウザで確認)。
URLぐぐったらあちこちで見つかる。
ついにこっちにも来るようになったか…。
ちなみに内容は「ラグナロクオンラインのギルド解散するから以下のURLで話し合おう」といった意味のものだった。
もしかしてW-ZERO3やrobots.txtの「RO(ro)」に反応したのだろうか?
実際にはラグナロクオンラインの意味でのroも1つだけ入ってるんだけどね。

あと、これとは別に、GoogleなどのクローラーがコメントCGI(comwrite.cgi)にアクセスして空ファイルが大量に生成されていたので、再発を防ぐためにrobots.txtにcomwrite.cgiを追加。
なぜ今までやってなかったのか不思議だ。
まあ、やってなくても0バイトのファイルができるだけだし、悪質なロボットには効かないんだけどね。

●「Miria」クラッシュ
SETI@homeクライアントのバージョン上げてみようといろいろやってたときにクラッシュ。
残りWUが1個しかなかった(後述するようにまた鯖が不調でWUが配布されていない)のでそのまま電源OFFに。
実際は鯖不調じゃなかった。詳細は19日の日記で。
しかし…月初めにまとめるから個別のクラッシュは書かないようにしたはずなのに結局書いちゃってるな。

●SETI@homeまたダウンぽい?
uploader/downloaderは繋がりにくいながらも生きているようだが、schedulerがバグってる?
たまに繋がっても「HTTP internal server error」か、「server returned nothing (no headers, no data)」のどちらかである。
さらに、まれに「No work from project」になることもあり、配布待ちResultは大量にあるのに何故?と思ってPCごとのResultページを見ると、大量のWUが配布されたことになっていた。
一体これはどういうことだ?と思って、Technical Newsやトラフィックグラフを調べるが、特に異常はない。
5/19 PST(Berkeleyの時間)のうちに解決されるかなぁ。
…というのが5/18終了時点までの話(これ書いてるのが5/19 2:57)。事態は急展開を迎える。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/19(土)23:59頃

SETI@homeたながったクポー!!
でもspamうzeeeeeeは解消しないクポー!!!
これは約定期blogにエントリ上げてないクポー!!!!!(でも追記はした)
そして今日も徹夜(18夜→19朝)クp(ry
●SETI@home空Result問題
5/18の記事で書いたように、SETI@homeで大量の空Result(Resultリストには載っているのに実際にダウンロードされていないし、キューにも存在しない)が発生してしまった。
しかし、公式発表はないし、トラフィックグラフを見ても順調にアップロード/ダウンロードされているらしい。
5/1から続いていたクラッシュの影響がまだ直っていないのかと思って、タスクの取得を禁止してしばらく待とうと考えた。
でも、もう少し調べてみようと思い、怪しいメッセージである「server returned nothing〜」を全フォーラムを対象に検索したところ、気になる情報が。
なんでもplatform mechanism(app_info.xmlを使うことで最適化クライアントや非対応プラットフォーム用クライアントなどを動かすことができる仕組み)を使っているとWU(Result)を取得できないというのだ。
どうも最近サーバ側のプログラムを新しくしたのが原因らしい。
もはや最適化クライアントを使うことは出来ないのか!?と思ったが、解決方法(暫定的だが)を発見した。
以下に、その手順を日本語で私流に書き直してみた。
※私はバージョン5.4.9のBOINC Managerを使っているので、ボタン名などが違うかもしれない。
※〜(.exe)となっているのは、Windows版は拡張子が付くが、Linux版は付かないため。

1.BOINCを終了させる
最初に、トラブルを避けるため、転送中のResultや応答待ちのリクエストがないことを確認しておこう。
その次に、停止させる前にタスクの取得禁止(「プロジェクト」タブ→「操作」→「タスクの取得禁止」ボタン)と一時停止(「タスクの取得禁止」ボタンの上にある「一時停止」ボタン)をセットしておく。一時停止はしなくてもいいかもしれない。私はしていない(ぉ)。
それが完了したら、いよいよBOINCを止める。
Windowsサービスの場合は「net stop BOINC」とすればOK。
そうでない場合はすべてのBOINC Managerを終了(タスクトレイにBアイコンがない状態)させればOKだと思う。
あるいはtaskkill(Windows)やkill、pkill、killall(Linux)でBOINC本体(boinc(.exe))を殺してもいいかもしれないが、少々危険かもしれない(間違ってもSETI@homeクライアントをkillしないように。せっかくのResultがエラーになる可能性がある)。
念のため、タスクマネージャ(Windows)やpsコマンド(Linux)でboinc(.exe)とSETI@homeクライアント(KWSN版(バージョン2.2B)の場合はKWSN_2.2B-SSE2-PM_Ben-Joe.exeのような名前になる。ちなみにこれは「Fen」で動かしているPentium M用のもの)がないか確認しておこう。
BOINC Manager(boincmgr(.exe))は起動していても問題ない。
私はBOINC Managerを起動したまま、Windows機は「net stop BOINC」で、Linux機(「Miria」)は「killall boinc」で終了させている。

2.app_info.xmlを無効化する

BOINCインストールディレクトリ以下のprojects/setiathome.berkeley.edu/app_info.xmlをリネームする。
バックアップを取ってから削除しても、デスクトップなどに移動してもかまわないが、後の作業を簡単にするためにリネームしておくのがいいと思う。
例えばapp_info.xml.escapenとか。

3.BOINCを再開
Windowsサービスの場合は「net stop BOINC」、そうでない場合はBOINC Managerを起動するか、直接BOINC本体(boinc(.exe))を起動。。
このとき、1.でBOINC Managerを終了させなかった場合(サービスの場合や、BOINCクライアントを直接殺した場合)、「入力したパスワードに誤りがあります。もう一度試してください」と出るが、これは再接続時にパスワードなしで接続してしまうかららしい。
このメッセージが出た場合、BOINC Managerを再起動するか、上部メニューの「高度な操作(D)」→「コンピュータの選択...」で、ホスト名にlocalhostと入力すれば、自動的にパスワードが入力されるので、その状態でOKボタンを押せばいい。
もし、サービスが起動しなかったり、コンソールに「Another instance (略)」などと表示された場合は、強制的にBOINC本体を殺したのが原因なので、BOINCインストールディレクトリ以下のlockfileを消して再挑戦しよう。
このときに注意すべき点は、BOINC Managerのログ画面(あるいはコンソール)に「Found app_info.xml; using anonymous platform」と表示されていないことを確かめることである。
これが表示されていた場合、app_info.xmlの無効化がうまくいっていないので、再度1.からやりなおす。

4.WU(Result)と、なければ公式クライアントを取得
タスクの取得禁止と一時停止を解除し、更新ボタンを押す。
もしかすると、解除した時点で自動的に接続するかもしれない。その場合は更新ボタンを押さなくてもいいだろう。
ここで、今までに一度も公式クライアントを使っていない、あるいは消した場合、まずそれらのダウンロードが行われる。
そして、WUが割り当てられる。
もし、過負荷で接続に失敗したらしばらくまってから再度挑戦する。

5.再度1.を行う
要するに全ての転送やリクエストがないことを確認し、タスク取得禁止をセットした後BOINCを終了。

6.app_info.xmlを元に戻す
リネーム、移動、削除したapp_info.xmlを元通りにする。

7.再度3を行う
今度は「Found app_info.xml〜」が表示されていることを確認する。
念のため、タスクマネージャやps、topなどで非公式(最適化)クライアントが起動していることを確認しておこう。

・公式クライアントの取り扱い
5.が終了すれば消してもいいのだが、次に同じ手順をやる時にまたダウンロードすることになるので、残しておいたほうがいいだろう。
消すのはこの問題が解消してからでも遅くはない。

・簡易手順
タスク取得禁止→BOINC終了→app_info.xml無効化→BOINC起動→タスク取得許可→更新(WU取得)→WUなどの転送が終わるまで待つ→タスク取得禁止→BOINC終了→app_info.xml戻す→BOINC起動

・オリジナルとの違い
オリジナルは
app_info.xml無効化→BOINC再起動→更新(WU取得)→app_info.xml戻す→WUなどの転送が終わるまで待つ→BOINC再起動
となっている。

この方法を試したところ、全マシンで無事にWUを取得することができた。
しかも、その後何度かやったが特に問題は発生していない。
ただ、解決方法が書かれたスレッドには、問題が発生したとの書き込みもあるので、試す場合は自己責任で。
特に、Linuxの場合はパーミッションが不適切だとエラーが連発してあっという間に数十のWU(Result)がデジタルの藻屑と化してしまうので注意だ。
(2007/5/29)もうこの記事は単なる記録でしかなくなった。今後再びapp_info.xmlで問題が起きた場合に適用できるかも不明。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/20(日)23:59頃

19日分からリンク表記を変更(title属性使用)してテスト中…でもまだ暫定なので前文に書いておく。
文脈によっては従来の方式(→、⇒)も併用。
●三輪明神2007
cp 200501.html#290103 .
…ってことで2005年のやつをコピーしてテンプレに。
どの部分が残ってるか見比べてみる


三輪明神(大神神社)

福矢(破魔矢?)やお守りの購入などに三輪明神まで行ってきた。
今年はいろいろあった?のでかなり遅くなってしまった。
妹は私用で同行せず、両親と私だけで行くことになった。

■着くまで
携帯電話のGPSナビ(ナビウォークなので自動だぜがっはっは(ぉ))を少し使って難なく到着。
今度は大神神社で検索して地図も確かめた。
もはやナビを使うまでもないぐらいだったけどね。
それでも1箇所だけスルーしかけた。

■着いたら
なぜか人が多くて夜店も少しあった。
とりあえず水を手にかけて清め、賽銭投げて祈る。
売店でお守りや矢を買う。また金運にしようかと一瞬思ったが、それだとあまりにがめつい気がしたので昇運お守りにしておく。
御神籤もやった。結果は末吉。凶(2006年)よりましか。
それと、結婚式が行われていた。
六曜は先勝なので午前中にやったのだろうか?(私達が着いたのは13時ごろ)
もっとも、神道でも仏教でも六曜は関係ないらしい(⇒六曜 - Wikipedia)。
また、名物のなでうさぎ(なでると願いが叶うといわれている金属製の兎の像)が建物(事務所?)の中に移動されていた。
もしかして頻発した金属窃盗事件と関係ある?

■帰り
夜店でたこやき(8個か10個ぐらい入ったのを2つ)を購入。
帰りの車の中でほぼ私一人で平らげてしまった。
さらに、夕食のおかずをケンタッキーで購入。
残念ながらたまごタルトは売り切れ。今度大学の帰りにでも買おうかな。
しかし、かなり食いすぎてる気が…。

■その他
2005年にも書いたが、「大神神社」と書いて「おおみわじんじゃ」と読む…が、ついつい「おおがみじんじゃ」と読みそうになる。
そもそも変換(MS-IME 2003?)は「おおがみ」じゃないと出ない。
その他の情報はWikipedia公式サイトを参照。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/21(月)23:59頃

時間なさげなので後半軽く…。
●SETI@homeのcredit算出方法
5/20の三輪明神の記事を書いてるときに、2005/1/5に書いたBOINCの記事が目に留まった。
そういえばあのときはベンチマークスコア上げればclaimed credit上がったよなぁ〜…とか思い出しつつ、今はどうやって算出しているのか気になった。
以前に公式発表かなにかを読んで、実際の浮動小数演算回数を基にしているというのは分かっていたのだが、詳細な計算式までは知らなかった。
そこでBOINCとSETI@home Enhancedのソースを読んで調べてみた。
以下の部分ソースの色分けはサーバSETI@homeクライアント

昔(参考):
srip->claimed_credit = srip->cpu_time * reply.host.credit_per_cpu_sec;

double cobblestone_factor = 100;
host.credit_per_cpu_sec = (fabs(host.p_fpops)/1e9 + fabs(host.p_iops)/1e9) * cobblestone_factor / (2 * SECONDS_PER_DAY);


※host.p_fpopsとhost.p_iopsはそれぞれBOINCクライアントでのWhetstoneとDhrystoneの結果だが、詳細は省略。

今:
・共通
if (rp->fpops_cumulative || rp->intops_cumulative) {
  slip->claimed_credit = fpops_to_credit(rp->fpops_cumulative, rp->intops_cumulative);
} else if (

double fpops_to_credit(double fpops, double intops) {
double fpc = (fpops/1e9)*COBBLESTONE_FACTOR/SECONDS_PER_DAY;
double intc = (intops/1e9)*COBBLESTONE_FACTOR/SECONDS_PER_DAY;
return std::max(fpc, intc);
}

・公式版(CVS 2007/5/14)
boinc_fpops_cumulative((SETUP_FLOPS+analysis_state.FLOP_counter)*LOAD_STORE_ADJUSTMENT);
#define LOAD_STORE_ADJUSTMENT 3.81
#define SETUP_FLOPS (1.42e+10/LOAD_STORE_ADJUSTMENT)

・最適化版(KWSN(lunatics.at) 2.2B)
boinc_fpops_cumulative(analysis_state.FLOP_counter * LOAD_STORE_ADJUSTMENT);
#define LOAD_STORE_ADJUSTMENT 3.35


※analysis_state.FLOP_counterはところどころで加算されている、浮動小数演算カウンタ。
※boinc_fpops_cumulativeは、BOINCクライアント側のboinc_ops_cumulativeを呼び出していて、fpopsに値をセットしている。

ということで、1行にまとめると
claimed credit = ((浮動小数演算カウンタ*LOAD_STORE_ADJUSTMENT)/1e9)*COBBLESTONE_FACTOR/SECONDS_PER_DAY;
さらに、既知の定数を置き換えてまとめると
claimed credit = ((浮動小数演算カウンタ*LOAD_STORE_ADJUSTMENT)/864000000000;
ということになる(浮動小数演算カウンタの部分は公式版と最適化版で違い、公式版は何らかの理由で底上げしている。しかし、底上げ分はcredit換算でわずか71/4320ほどしかない)。
これを見ると、もはやチートでもしない限り、同じWU、同じ構成のマシンであればほぼ同じclaimed creditになってしまうことが分かる。
しかし、公正を期すためには、それが本来あるべき姿であるといえる。
それでもチートをしてくるような輩には、サーバ側でブラックリスト化するなどの対策が必要になってしまうだろう。
ただ、ネトゲのRMTなどと違い、金にもならないcreditを不正行為をしてまで稼ぐことに意味があるとは思えないが…。
もちろん私はチート反対の立場ですよ。え?旧方式のときにBOINCクライアントのプライオリティ上げてたじゃないかって?
あ、あれはPC本来の能力を出しただけであって、決してチートではない!…はず。
(実際に止められるだけのサービスやプロセスを止めてやれば、優先度を上げなくてもベンチマークスコアは上がると思われる(未検証))
補足:LOAD_STORE_ADJUSTMENTの決定
ソースを見ると「Adjustement to flops counter to make FLOPS include floating point loads and stores.」と書かれている。
つまり、浮動小数演算カウンタ(flops counter)はロードやストアの影響を考えずに単純にfmulとかfdivなどの数だけをカウントしていて、それにロードやストアの影響を加えた真の浮動小数演算命令数(FLOPS、この場合はFLoating point OPerationSだろうか。普通はFLOPSといえばFLoating point Operations Per Secondだと思うのだが)を算出するために、1命令(C言語の?)あたりのロード・ストアの比率としてLOAD_STORE_ADJUSTMENTを乗じているらしい。
そして、この値の算出については、公式はどうやっているか不明だが、最適化版などの非公式なものはおそらく公式版の結果と同じになるように調整しているんじゃないかなぁ。
ところで、公式が3.81に対して、KWSN版最適化クライアントは3.35と小さいということは、それだけ少ないロード・ストアで同じ計算量をこなせるということになる。
しかし、約13.7%増しか…微妙だなぁ。
かつては公式版はMMXやSSEなどを全く使っていなかった(と思う)ので非常に遅かったが、今は使っているらしく、ソースコードリストにもそれらしいファイルがある。
もはやnumber cruncher(クレジット稼ぎ人)以外の人は最適化版を使うメリットはあまりないのかもしれない。
しかも、今ちょうどplatform mechanismの障害が起こっていて、最適化版を含むapp_info.xmlを使う版でのWU(Result)取得ができなくなってるし。
まあ、それでも私は最適化版を使い続けるけどね。だって私もnumber cruncherだし。

●Excelで可変範囲
例えば、A列に数十件データが入っていて、下から30件だけの平均を取りたいといったことはよくある。
しかし、手動で関数書き換えるのは面倒だしミスがあるかもしれない。
以前にアクセス解析用XLSファイル作った時にはVBA使ったが、そんなことしなくても標準関数だけで可変範囲を扱えるらしい。
INDIRECTとかOFFSETとかINDEXとかいろいろ使える。
さらにグラフも名前定義(Ctrl+F3)すれば可変にできる(グラフの範囲に直接OFFSETなどの関数を入れても勝手に数値範囲に書き換えられてしまう)。
と、これだけだとあまりに不親切なので参考リンクでも貼っておく。
答えてねっと: Excelでデータを追加した際、最終データ20個分の合計と平均を出したい
エクセル技道場−グラフ: 可変範囲のグラフ

●ルータ熱暴走
まただよ…。
「Miria」クラッシュログに続いてルータ熱暴走ログも月初めに掲載するか?
ちなみに「Miria」のクラッシュも頻発し続けている。
どうも電圧が高めらしいのだが、それが原因なのだろうか?
今度暇があったら「Naomi」と電源トレードして動かしてみるか。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/22(火)23:59頃

約定期blogの大停滞も解消し、ゼミの発表も完成、放送大学の課題もかなり進んだ…だったらいいのになぁ(ぉ)。
●予定と現実
冒頭文に書いてるのはちょっと夢見すぎってか調子に乗りすぎだとしても、少しぐらい手をつけたかったのだが、全く着手できず。
では、一体何をやってたのか振り返ってみると…
午前中:昨日からやってた光熱水費や通信費の記録、メールチェック、巡回
午後:昼飯食べてちょっと昼寝のつもりが20時ごろまで寝る
夕食後:ニュース、動画、SETI@homeのWU取得(app_info.xml問題のため現在は手動)。
…だめじゃん。
やはり昼寝しすぎが痛いな。体力減少+昼夜逆転をなんとかしないと昼寝問題の解決は難しそうだ。
ってことで早く寝たい(現在5/23 0:36)からこれで終了(ぉ)。Zzz。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/23(水)23:59頃

今週はいつもとは違うぞ!ゼミ発表も8割できたし、明日も大学あるし…orz。
●Windowsのタイムゾーン
なんか日本にもサマータイム入れるとか一部で言われてるらしいので、導入されたらPCのタイムゾーンを強制的にUTC+9時間にしてやろうと考えている私(ぉ)。
そこで、タイムゾーン情報について調べてみた。以下レポート。
※他人が読むことを想定してなかったので見づらい(ぉ)。URLだけリンクにしておいた。
※似非HTML(似非XML?)で<source_url>ってのは引用元、<cite>は引用部分。
※調べた資料にはLinuxなど他のシステムでのDSTやタイムゾーンの扱いも書いてあったが、今回は省略。

<source_url>http://www.dr-pc.jp/64.htm</source_url>
<cite>
キーの場所:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\TimeZones(タイムゾーン98/Me)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\TimeZones(タイムゾーン2000/XP)
</cite>
<source_url>http://www.divakk.co.jp/blog/aoyagi/archive/2006/07/24/7302.aspx</source_url>
<cite>
ちなみに、タイムゾーンの情報はレジストリの HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones に入っているようです。ここの TZI というのはバイナリですが、中身は 


struct {
LONG Bias;
LONG StandardBias;
LONG DaylightBias;
SYSTEMTIME StandardDate;
SYSTEMTIME DaylightDate;
};

</cite>

Bias: UTCとの時間差(分)
StandardBias: 標準時間においてBiasに加算する時間差(分)
DaylightBias: 夏時間においてBiasに加算する時間差(分)
StandardDate: 夏時間から標準時間に変わる日時
DaylightDate: 標準時間から夏時間に変わる日時

Biasは、UTC = local time + biasという式に合うようになっている。
そのため、GMT(UTC)+N時間の地域はBiasが-(N*60)になる。
〜Dateは月、曜日、何週目か(1〜5)を指定する。

東京のTZIは

Bias: 0xFFFFFDE4(-540、つまり-9時間)
StandardBias: 0
DaylightBias: 0xFFFFFFC4(-60、つまり-1時間)
StandardDate: 0
DaylightDate: 0

また、グリニッジ標準時(GMT)は2つあるが、ロンドンのほうはDSTあり、カサブランカのほうはDSTなし。

↓純粋なUTCのタイムゾーン

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\GMT Pure UTC Time]
"Display"="(GMT) 純UTC"
"Dlt"="そんなものはない!"
"Std"="UTC"
"MapID"="0,1"
"Index"=dword:00000055
"TZI"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00


↑これをベースにして、最初の4バイト(Bias)だけE4,FD,FF,FF(0xFFFFFDE4、-540)にすればDST強制排除したTokyoタイムゾーンが作れる。
日本にDST導入されてしまった場合はこれで対抗しよう(ぉ)。

もっとも、実際にDST(サマータイム、Daylight Saving Time)が導入されたらそれに背いて活動するってのも難しいだろうけどね。
サーバーログあたりはUTCで記録しておいたほうがいいかも(で、表示アプリ側でUTC+9時間なりUTC+8時間(日本にDSTが導入された場合の予想時差)なりしてやる)。
私の個人的な意見としては、サマータイムなんかより(特に公文書での)西暦と24時間制の普及のほうをもっと進めてもらいたいが。
補足:これって政治的?
私はあまり思わないんだよなぁ。コンピュータで扱うの難しそうだからやだなぁってのが本音。

●早くも夏バテ!?
いや、私じゃなくて機器類が。
ルータは熱暴走するし、「Miria」は一気に不安定化するし…。
「Miria」のほうは電源かM/Bあたりがおかしい可能性があるのでもう少し調べてみる必要がありそうだ。
しかし、機器類のために冷房かけると人間(私)の夏バテも早まるからなぁ…。

●約定期blog言及URLチェック導入
詳細は約定期blogのほうで。
ところで、一部で「リファラチェック」と書いてるが、それって本来はリファラURLがOKかどうか調べるもののことだよなぁ。
あと、「言及リンクチェック」ってのも微妙に違う気がする。Aタグ調べてるわけじゃないし。
ってことで今後は「言及URLチェック」で統一するか。

●60点
といっても大学のテストとは関係ない。
23日は一応予定してたゼミ発表をこなせた(完成までいかなかったが)し、体力づくりも少しやった。
一方で、長時間昼寝こそしなかったが、動画閲覧などで時間を食ってしまい、約定期blogの停滞ネタの解消やサイト全体の整理・更新(自鯖系コンテンツなど)は全く手付かず。
そういえばMOOPSなんてのもあったなぁ…。
とりあえず次のバイト代が入って、Windows Vista Ultimate買ったら手をつけるか>MOOPS V5。
以上のことから評価はぎりぎり可の60点。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/24(木)23:59頃

あと7日…。
●SETI@home関係
5/1のクラッシュ以降慌しい状況が続いている。復帰したかと思えば違う問題が出るし…。

■募金反映
24日の朝に確認したら、2007/5/15 16:23:48 UTCに募金したことになっていた。
システムダウンでどたばたしてたので遅れたっぽい。
まだエアメールは来ないが、前回は1ヶ月ぐらいかかっていたので今回もそれぐらいかかるかな。
ちなみに、前回メールが来た日付を調べようと思って見たら、日付が6/?になっていた(→約定期日記: UCBからエアメール)。
そういえば確かネタにするのを忘れていて、13日分の更新時に気づいて入れたんだったな。

■platform機構復旧
app_info.xml使ってても問題なくWU(Result)取得できるようになった。
ということで19日の記事は早くも役目を終えた(ぉ)。

●ケンタッキー〜光と闇〜
良いことがあれば悪いことがあり、また、その逆もある。

■光 - 海老カツ復活(ただしツイスター)
2004年秋に登場し、その旨さに感動した海老カツサンド。
しかし、2005年春に終了。
その次の復活は2006年1月まで待たねばならず、それも2006年春に終了。
そんな海老カツが、三度ケンタッキーに登場した。
そう、ついに海老カツサンドがまた食べられる…ん?

海老カツツイスターサンドじゃなくて今度はツイスターなのか。ツイスター系でチキン(カーネルクリスピー)じゃないのは私が知る限りこれが最初だな。

でも…旨かったー!!!!!!!
ただ、また今回も期間限定。ぐぐったら発売期間は5/24〜6/13と判明。
ってことは、あと5/31と6/7の2回しか食べられないのか。せめて6/14まであればなぁ…。
海老カツのためだけに出かけようかな?(ぉ)

■闇 - たまごタルト販売終了
最初にJR和歌山駅前のケンタッキーで見かけた時は品切れ。
次に三輪明神に行った帰りに彩の台のケンタッキーで買おうと思ったが品切れ。
そして24日に買おうと思ったら販売終了。
結局食べられなかった…orz。
次に復活したらぜひ食べてみたいものだ。

●大学
毎週恒例のゼミ発表+技術者倫理。

■また水減ってた
4/26に池の水が増えていると書いた(→約定期日記: 大学ネタ[池の水増えてる?])が、また水が空になっていた。
どうやら水量維持はしてないらしい。
25日の記事で書いてるが、雨だったようだ。

■卒研はスケジューリングか?
ここ3回ほどのネタはスケジューリングで発表している。
もともとは春休みの課題でエレベータをやったのがきっかけ。
しかし、卒業研究のテーマをこれにするかまだ決めかねている。
あまり遅くなると大変だしなぁ…。

■技術者倫理
普遍化テストとか黄金律テストとか、ある行為が倫理的か判定する方法などについて。
黄金律ってのは「自分がされて嫌なことは他人にするべからず」といったものなのだが、キリスト教だけ(少なくとも放送講義で挙げられていた中では)「自分がやって欲しいと思うことを、他の人にもしてあげなさい」となっている。
しかし、それって社会全体がほぼ同じ文化、価値観を持っていないと成立しないのでは?
もしやサブカルチャー(いわゆるオタク、マニア、フェチetc...)は無視ですか?
(どういうことかというと、少数派の人たちが、自分達がして欲しいと思っていることを他人にすると嫌がられる可能性がある。逆に、「嫌なことはするな」の方だと、「他人(多数派)にとってはされてうれしいが、自分(少数派)はされるのが嫌な行為」をしないことによって、プラスは生じないがマイナスも回避できる)
表で書いてみると分かりやすいかも。

  儒教?版黄金律 キリスト教版黄金律
自分がして欲しくないことを他人にする 禁止 未定義
自分がして欲しいことを他人にする 未定義 推奨

この未定義ってのが曲者なんだよなぁ。特に禁止も推奨もしないから、事象ごとに条件を考慮して決めろってことなのだろうか。
また、推奨といっても無条件というわけではなく、相手によって対応を変えろということなのかもしれない。
注意:
このサブ記事の内容は、放送大学の講義「技術者倫理」と、その講義で用いる同名の教材における情報の一部のみを基に書かれている。
そのため、各宗教の真意などは汲み取っておらず、かなり偏った書き方になっていると思われる。
だが、特定宗教を批判したり絶賛したりする意図はない(あるように見えてもそれは気のせい)。
とりあえず、このサブ記事について、私がこの記事にかけた重み(=超軽い)を理解しないコメントが付いたら消しますよと予告しておく。
え?コメント自体全然付いてないじゃないかって?そ、それは…orz。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/25(金)23:59頃

2日連続大学は辛い…って、どれだけ体力減ってんだよorz
●本発注
xxxHOLiC(11)、びんちょうタン(1)、らき☆すた(1)。
今までネットで本といえばAmazonが多かったが、今回楽天ブックスを初めて使った。
infoseekで稼いだポイントが使えるし、他の楽天店舗でゲットしたポイントも使えるので、今後は楽天ブックス使おうかな。
送料無料にするために、xxxHOLiC11巻をいつも買ってる書店(宮井平安堂JR和歌山駅店)で買わずにいた。
実は、書店にらき☆すた1巻がなかったのでネットでまとめて買おうと思ったのだが、もしあったらびんちょうタン1巻はもっと先になってたかも…。

●大学
オープンラボがあるので来たのだが…。

■水の増減は雨っぽい
4/26の記事(→約定期日記: 大学ネタ[池の水増えてる?])では雨にしては多すぎと書いていたが、この日ちょうど雨が降っていたので池を見たところ、かなりの水が溜まっていた。
やはりあの水は雨だったのか…。
でも、排水口が詰まっているのか、開けていないのか、一度溜まったらなかなか減らないようだ。

■ハイブリッド発電の新しい使い道
ハイブリッド発電のコンセントにクリエの電飾看板が接続されていた。

ハイブリッド発電の使い道1この看板とクリエは250m以上離れている。デモ用に持ってきたのかな。
エコエネルギーを使っていることを「関西電力 と ちゃう 感じしません?」と主張している。

ところで、これに電力を使ってしまっても、夜間のライトアップは大丈夫なんだろうか?

■オープンラボ
オープンラボというのは、研究室を1年生に公開し、研究内容などを説明するイベントである。
基礎教養セミナー(だったかな)の一環として行われ、90分の授業時間内に3箇所巡ることができるようだ。
で、私ともう一人(ゼミ生は4人いるのだが、1人は2007年度になってから全く姿を見せないし、もう一人は就職活動で忙しいのか今回は来なかった)で説明資料(といってもライフゲームもどきとか、エレベータシミュレータとかのプログラムだけ)を用意し、一応準備は出来ていたのだが…人来ねぇorz
結局最後に隣の研究室(部屋は同じ)に来た数人を半ば強引にゲット。
で、人が来たら来たであまりうまく説明できないorzorz。
来年(院1年)はもっとましな資料用意しておくか。そしてもっと人が来るといいなぁ。
しかし、現在のゼミ生で来年も残ってるのは私だけ(のはず)なんだよなぁ。

●古い広告
帰宅時に久しぶりに4両編成の南海電鉄車両に乗ったところ、4/1以前からあったと思われる中吊り広告がまだあるのを発見。
外すのを忘れたのだろうか?それとも広告効果があるからそのまま残してるんだろうか?
一応写真撮ったのだが、あまり画質が良くないので没ってことで。

●ルータ熱暴走
またか。
こうなったら熱暴走時にtelnetで自動再起動かけるように仕込んでおくか?
でも、熱暴走するぐらい熱くなった状態で再起動してもすぐまた熱暴走しそうだなぁ。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/26(土)23:59頃

おっと、更新やや停滞…。
●SmartHDD Proバージョンアップ
SMART対応HDDの情報を読み取って故障判断するソフトの1つであるSmartHDDがバージョンアップ(1.2.2.7)しているのをDMで知ったのでアップデートした。
大きな変化といえば、一部の属性が故障判断から外れたことだ。
例えば1.2.2.4ではパワーオン時間やGMRヘッド振幅(この2つは時間経過とほぼ比例して下がっていくようだ)などが故障判断に含まれていたが、それらは故障と関係ないと判明したのか、1.2.2.7では外された。
そのせいで「Fen」のHDD(HITACHI DK23FA-80)故障日が2161年10月24日というとんでもない日付に。
ドラえもん誕生(2112年9月3日)より未来じゃねーか。
あと、「Naomi」のHDDはスループットパフォーマンスの最大値が160になったり100になったりするらしく、故障予測がバグる(他が全く劣化していないのに、160→100の急激な低下のせいで故障が2007年9月などと出る)ので、ini書き換えで最大を100にしておいた。
この値が何を表しているのか(パーセント?MiB/s?)不明だが、徐々に劣化するならまだしも、一気に60も減ったり増えたりするのは明らかにおかしい。
もしかすると、何らかの理由で内部的に低速なモードにセットされ、その時に値が記録されたのだろうか?
まあ、いくらSMARTが正しく取得・記録できていても、故障する時は前触れもなく故障することがある(「Sephie」のHDDもそうだったな)ので、突然死の回避というより突然死の確率減少(0にはならない)と考えておいたほうがよさそうだ。

●「Naomi」BSOD

動画見終わってメディアプレイヤーを終了し、温度計撮影プログラムが動作した直後に青窓。

「Naomi」BSODusbvm302.sysが原因。「Naomi」でブルースクリーンは久しぶりだな。

usbvm302.sysは「Video streaming and Capture Device Drive」とのことなので、キャプチャ時に何か異変が起きたらしい。
動画再生と動画(記録してるのは静止画だが)撮影がほぼ同時に起こったので、リソースの開放・取得あたりがうまくいかなかったのかも。
でも、今までもメディアプレイヤー再生直後に温度計撮影ってパターンは多かった(そもそもメディアプレイヤー起動中は温度計撮影プログラムが一時停止しているので、終了したとたん撮影するようになっている)けど、BSODになっていなかったのになぁ。
余談:
この記事では上記画像の状態を表す「BSOD」「青窓」「ブルースクリーン」が全部含まれている(ここにも書いたし)。
BSOD(Blue Screen of Death)は英語圏、ブルースクリーン(カナ表記)は日本で使われている。青窓も日本だが件数は少ないようだ。
私は言わないが、青画面ってのもあるようだ。そして青窓より件数は多い…。
青くなるのが窓(window)じゃなくて画面全体(screen)だからか?
というか、そもそも青窓の窓ってwindowではなくWindowsだからでは?例えばMacOSでBSODがあったら「青林檎」…それじゃ緑(GSOD)になっちゃうか。
もっとも、最近のLinuxディストリビューションにはBSODのスクリーンセーバーが入っていることがあり、それにはSad Macのような他OSのクラッシュもまとめて入っているので、BSODはOSによらず致命的クラッシュを意味する語になりつつあるのかも。
ちなみにMicrosoft公式?の呼び方はブルースクリーン(英語でもblue screen)で、それが表示される時に起こるエラーをSTOPエラーと呼んでいるようだ。

●本届いた
早いな。
以前買ってあった分とあわせてびんちょうタン1〜2巻を読破。
らき☆すたはまだ見てない。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/27(日)23:52頃

15:12ごろに26日分までコミットしたが、12時間制限があるのでReadMe!と日記才人への通知だけしなかった。
●本
xxxHOLiC11巻読んだ。
核心に迫ってきてるな。ってことはもうすぐエンディングなのか?
ツバサとのリンクはどうなる?もしや、ツバサももうすぐ終了なのだろうか…。

●さくら三昧
昔レンタルビデオからキャプチャしまくったカードキャプターさくらを見ているのだが、ついつい見すぎてしまう。
今日も10話ぐらい見たんじゃないかなぁ。
そのせいで約定期blogの更新とか技術者倫理の課題(超大型と普通の2つ)が全然進んでないわけだが…。

●らき☆すたOP何位だろう?
今回は買ってないので完全に傍観側。
そもそも、私は1位運動に参加する目的だけでハピマテや1000spa買ったわけではない(多少上位になって欲しいという気持ちはあったが)。
ネギま!(ネギま!?)そのものが好きだったからだ。
なので、ハレ晴レユカイも今回と同じく買っていない。
ただ、その後涼宮ハルヒの憂鬱(ライトノベルではなくコミックのほう)は1〜3巻まで買っているし、らき☆すたも1巻を購入してこれから読み始めるところだ。
もしかすると、もう少しコミックの購入が早ければCDを買っていた可能性もある。
しかし…原作好きなだけで(アニメを見てないのに)アニメのOP・EDのCD購入するってのは変かなぁ?もちろん購入前に試聴はするけど。
ネギま!?についてはアニメもリアルタイムで(しかも、You○ubeなどのブラック環境ではなく、7万近くかけてそろえたBSデジタル視聴環境で)見たけどね。

●setiview改良
自分で使ってるSETI@home BOINC進捗状況ビューア&ロガーである「setiview」をver2.2にバージョンアップ。
以前のバージョン(2.1)からの相違点は、ログをグラフ化したときに、途中で繋ぎ変わってしまわないようにした。
今までは、単純にファイルの上のほうからfraction_doneを読んでいたので、例えば先頭のactive_task(処理中のWU(Result))が完了した時に、それ以降にあったactive_taskの情報がシフトしてくるため、それまで2番目に表示されていた値が1番目に表示される(グラフ上では、100%からいきなり80%などに飛んでいて、Wや、Wを上下逆にしたような形に見える。私は「豚の蹄」と呼んでいた)ようになってしまっていた。
この現象はデュアルコア以上で起こるので、基本的にはシングルコアでは関係ない。
また、大量のWUを取得した直後などに、WUを取得しすぎたせいでearliest-deadline-first schedulingに入ってしまうと、たまに中断中タスクの数が論理CPU数の2倍以上になることがあるが、これもデュアルコアだとログの項目数(グラフの表示スロット)が足りなくなる(現在4固定なので)のだが、これについてもactive_task_stateを読んで、実行中タスクを優先して表示するようにして解決(ただ、この場合はグラフが途中で繋ぎ変わってしまうが、この現象自体あまり起こらないのでとりあえず無視(ぉ))。
これで当面は何とかなりそうだ。次は「Naomi」をクアッドコア化する時あたりに、ログの項目数を4固定から可変に変更するぐらいかな。
しかし、もっと優れたSETI@home BOINC情報表示ツールはたくさんあるので、こんなかなり特殊(補足参照)なツール使う人いないだろうなぁ。いたらコメントでもくれぃ(ぉ)。
補足:setiviewの特殊さ
1.0(非公開)のころはtclock lightで時刻文字列を「西暦yyyy年nn月dd日(ddd)hh:mm:ss」のような長いものにセットし、タスクバーを3行にした状態でしか使えないものだった。
一応現在では位置指定できるようになっているが、座標はスクリーン右下(X解像度、Y解像度)からの距離指定だし、タスクバーに重ねることを想定してるので常時前面になろうとするし(そのため、DirectXを使った全画面のゲームなどと相性が悪い。少なくともそのようなゲームをしている最中にうっかりクリックするなどしてフォーカスが合うとほぼ確実にゲームが止まる)、依然として特殊さは残っている。
追記:2.1→2.2で初期化部分を弄った影響で、中断中結果が0%(内部的に-1.0=-100%)になってしまうバグが発生したため、それを修正して2.21にした。
多分2.2をダウンロードした人はいないだろう(面倒だからhttpdログ見てない)。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/28(月)23:59頃

10時ごろ起きて、いつものメールチェック、SETI@homeとReadMe!の統計、サイト巡回。
そしてさくら三昧とか、闇の力→星の力に呪文が変わったころから連想して「じゅもんがちがいます」ぐぐったりとか(DQやったことないけど)。
で、abouter(送り込まれたフォームデータをそのままHTMLとして返すCGI。かつてのIEにおける「about:〜〜」のエミュレータ)がセキュリティ的にやばそうかもってことに気づく(多分IEもそれが理由で廃止されたのだろう)が、修正するとabouterの存在意義がなくなるのでとりあえず対応は先送り(ぉ)。29日の13:22頃に対策した。
こうして、なんとなくだらだらと1日が過ぎてしまった…orz。
今回は前文とくっつけてるので記事タイトルがないが、強いてつけるならば「だらだら」とか「gdgd」とか、あまりいいものじゃなさそうだなぁ。
補足:abouterのセキュリティホール?
やばそうとだけ書いておいて不安を煽るだけなのも気が引けるので、ソースを書いておく。
*「ふっかつのじゅもんがちがいます。」 任意のリンク先へ飛べる公開リダイレクタを作ってはいけない
abouterはリダイレクタどころか、JavaScriptだろうがVBScriptだろうが、クライアントサイドで実行可能なHTML拡張なら何でも実行できてしまう。
しかし、そういうことをするために作ってあるのでサニタイジング(無害化)することもできない。
さて、どうするか…。
で、結局BASIC認証の必要なエリアに移動させた。
そもそも、abouterは公開目的で作ってなかったし、リンクも約定期blogの1記事から貼ってあった(今はもう外したし、abouter移動させたのでキャッシュに残っていたとしても問題ない)だけだったし。
なかなかサイトの脆弱性を検証するまとまった時間が取れないので、こうやって気づいた時をチャンスだと思って修正していくことにしよう。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/29(火)23:59頃

課題手付かず…。こうなったら…星の力を(略)レリーズ!タイm…
TP:時航法違反で現行犯タイー|||Φ|(|゜|Д|゜|)|Φ|||ーーホ!!します。
私:((((((;゜Д゜))))))…やだなぁ、タイムなんて使おうとしてませんよ。もちろんリバースも。
●abouter対策
詳細は28日の記事に追記で書いてしまったが、もう一度書いておくと、セキュリティ上の理由でabouter(送り込まれたフォームデータをそのままHTMLとして返すCGI。かつてのIEにおける「about:〜〜」のエミュレータ←28日に書いた説明文のコピー)を公開エリアから秘密エリアに移動。
もし、こっそり使ってた人がいたら、他の似たようなツールを探すか、欲しければゲストブックとかに書けば個別にソース教えるから自分の鯖に設置すればいい。
ただし、自己責任でな。

●LaVie RXのジャンク
なんとなくヤフオクで久しぶりにLR700で検索したら、LaVie RX LR700/9E(PC-LR7009E)のジャンクを発見。
ちょうど「Fen」(PC-LR7008E)の1つ後のマイナーチェンジモデルだ。
どうやらコーヒーをこぼしてキーボードとUSBがおかしくなっていて、さらにHDDもクラッシュしているらしい。
で、残り2日ほどで2500円ほどだったので、ためしに5000円で入れてみたところ、ほぼ同時に別の人が10000円以上で入れたらしく、一気に値段が10000円超えに。
確かに、CPUやM/Bは生きている可能性が高く、新品なら当時25万円以上したと思われる(「Fen」でも27万だったし)ハイスペック品なので、やはり数万円ぐらいはいくんだろうなぁ…。
あぁ、ファンだけ生きててあと全部死んでるLaVie RX(LR700/8Eか9E(多分ファンは同じだろう))のジャンク出ないかなぁ。
ファンが生きてれば8000円は出すんだけどな(NECに聞いたところでは、ファン単体で8000円ぐらいだが、単体で販売してないため修理しか入手手段はなく、その場合2万円はかかるらしい)。

●20点
体力づくりをした以外、約定期blogも課題も手付かず。またもやさくら三昧。
自戒の意味をこめて厳しめの採点。
ってか、課題が課題が課題がぁぁぁぁ!!
しかももう5/30 12:30だぁぁぁぁ!!

ってことでさらb

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/30(水)23:59頃

やう゛ぁい…課題進行度0…というのが5/30終了時点での状況。
●1点
時間ないってのに動画(さくら含む)三昧、体力づくりもしてない、挙句の果てに17時ごろから20時ごろまで昼寝。
…あれ?もしかして他にネタない?前文のみにしてもよかったかなぁ。まあいいや。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


2007/5/31(木)23:59頃

なんとか出発までに課題終了…。
●小ネタ
■通学路工事
駅に行く途中の歩道で工事というかメンテナンスが行われていた。
その歩道は溝の上にブロックを敷き詰めてあって、雨水などが下を流れるようになっている(最終的に川に流れ込む)。
しかし、雨が降ると水だけでなく泥も流れ込むので、そのまま放置していると水が溢れるようになってしまう。
そこで、定期的にメンテナンスをしている…といったところだろう。

■子供大量大勢
橋本からJRに乗ったら小学生の子供が1x〜2x人ほどいた。
多分遠足かなにかだったのだろう。

■本屋の待ち行列
VIVO4階にある宮井平安堂のレジ待ち行列の方向が、以前はレジからエレベータ方向に向かって並んでいたのが、レジから階段側に向かって並ぶようになっていた。
うっかり前のまま並ぼうとして戸惑ってしまった。
いつ、そして何故変わったんだろうか?それとも一時的なのか?

●大学
■池に給水
今度は明らかに雨ではなく、意図的に満水にしてあった。
暑くなってきたから涼しくするためだろうか。

■クリエ看板撤去
ハイブリッド発電を使って作動させていたクリエの電飾看板がなくなっていた。
たぶん本来の場所(S棟)に戻したのだろう。
ということは、あの場所にあったのは何かのデモのためか?

■ゼミ
今回は発表ではなく、「社会科学のためのモデル入門」という本についての輪講。
ちょっと読んでみると、なんとなくマーフィーの法則を連想した。
(実際にWikipediaでも、マーフィーの法則は「社会科学の法則」に分類されている)
要するに現実の事象からモデル化し、一般化していく…といった感じか。
まだあまり読んでいないが、結構興味深い内容だ。
余談だが、実際には本じゃなくてそれをコピーした資料でやっている。
あと、今回マーフィーの法則を調べて初めて知ったのだが、マーフィーって人が考えた法則じゃないらしい(それはマーフィーの成功法則のことかも)。
てっきり社会科学者マーフィー博士(←誰だよ)が作ったものだとばかり思っていた(実際には航空エンジニアの名前らしい)。

●LaVie RXのジャンクはスルー
結局2万円以上になってしまったので諦め。最終的に44950円で落札されたらしい。
さすがにファン取りで2万円以上というのはもったいなさ過ぎるし、単体稼動させるにしても予定外の大幅出費になるので、今回は手を引くのが賢明だっただろう。
まあ、当時26万円ほどしただろうし、今でも中古6万円ぐらいするようなので、HDDとキーボード(USBも?)が壊れてる程度だったらこの値段でもおかしくない。
ちなみに、値段調べてる最中で2004年11月ごろに友人から6万円でLR700(たぶん8E)を購入しないかと話を持ちかけられた事例を発見。
まだ発売から半年ぐらいしか経ってないのに6万って…。

[[an error occurred while processing this directive]][[an error occurred while processing this directive]]


最新の日記へ

前月 翌月