論文を頑張ってる人々と一緒に居たら、何故か自分だけ無意味に徹夜してしまいました。しかもリファレンスモニタはとりあえず動いているものの、どこかに問題があるようでサスペンドするとシェルがハングアップしたり configureが無限ループに陥ったり、変な動きのままです。
塚田氏とともにNTTデータにエントリーしました。でも塚田氏は論文が忙しくて、ESの提出に間に合いませんでした。NTTデータはESと筆記でガンガン落とすと聞いたことがあるので、望み薄い企業です。
ポートフォワーディングして家のSambaに繋いで(2006年2月8日参照)いるので、家のファイルが見れて嬉しいのですが、家のディレクトリに向かってVS.NETで保存すると数十秒固まります。非常にイライラしますし、不便です。しかし家ではなんともないので、おそらく何か不都合なことが起きているのでしょう。
そこでsshfsで家のディレクトリをマウントして、Sambaのポートフォワーディングをやめればマシになのではないかと考えました。
善は急げで早速fuseとsshfsをapt-getしたら、ライブラリのバージョンが古いらしく動きませんでした。結局自前でコンパイルしてインストールしました。それで sshfs自体は上手くいったものの、保存時に固まる問題は直らずじまいです。ポートフォワーディングの問題じゃないのかあ…こりゃわかんねえな。
家のサーバをkernel 2.6にアップグレードしたところ、研究で作っているリファレンスモニタが全然動かなくなりました。誰だ、こんな作りにした奴!って、オレだよ、オレオレ。
ドコモに送るプログラムの手直しをしました。急いで送ろうと思ったら、性急に必要ではないと言われたので、来週あたりに渡すことにします。
ドコモの筆記を受けてから連絡が来ないので、筆記の合否通知はいつまでなのかドコモに聞いてみましたが、完璧にシカトされました。落ちたなこりゃ。
学校推薦は松下電器に使う事にしました。見学は16日だそうです。
大下さんから、茶団子をいただきました。お茶も持ってきてくれたので2人でお茶を啜りつつ、おいしくいただきました。さすがに全ては食べ切れなかったのでまた明日。
すごい雨が降ってると思ったら、大下さんからつくばセンターまで迎えに来てくれませんか、とのメールが来たので迎えに行った。帰り道、車の中で今日は雨が強いよねとか話してたら、東大通を走ってる間に雨が止んだ。な、なんだってぇー…!
我が家に届いた火災保険証券を読んでいたら、住宅の構造って欄に「タイカコウゾウジユウタク」という文字が踊っています。耐火構造住宅…?このアパートが?嘘だろ!?火事になったときに本当に保険が降りるの(限度額がたったの140万だけど)でしょうか。
洗車しに行ったら、システムが変わったとかでプリペイドカードが使えなくなっていました。余ってた6200円分はセルフ洗車にお使いくださいと言われてもねえ。正直に「セルフは使ったことないですし、使う予定もありません」って言ったら、同額の洗車券に取り替えてくれました。あーあ、ゴネてくる面倒な客だと思われたかな。
ゴネると言えば、横須賀で見たババアがすごかった。京急バス(前払い式)の運転手に対して、すごい剣幕で怒鳴ってるんで、聞き耳立てて(立てなくても聞こえるんですけど)みると…
運ちゃんが
「札しかなくて小銭で払えないならバスカード買ってください」
って言ったのに対し、ババアが
「私は今回一回だけ乗るだけで、今後一生涯このバスには乗らないから絶っっ対に買いたくない」
とマジギレ。千円札や小銭すら用意していない方が悪いんじゃないの?しかも今から乗るのにそんな言い方はないだろ、と思うような言い方で延々と怒鳴ってる。
後ろがつかえてるし、バスの運転手もこれ以上相手にしたくないと思ったのか、次の人と何か話した後、機械をいじってババアをパスさせました。たった180円のバス料金にあそこまでマジギレする人は初めて見ましたよ。
乗ったら乗ったでバスの中にも関わらず携帯で大声で会話するなど、迷惑千万なババアでした。奴が二度と京急に乗らないことを願います。
発表終了しました。懸念してたstripのことに関して突っ込まれました。しかし特に辛らつな批判などはなかったので、発表がつまらなかったか、内容が通じてなかったかのどっちかでしょう。
帰りに携帯サブレを買って、YRP野比駅でドコモダケストラップのガシャポンをやって帰りました。最近やってるドコモダケって NTTっぽくない変なノリのCM だと思ってたんですが、電通が仕掛け人だったんですね。
携帯サブレ、箱
外見はこんなかんじでした。非常にやる気のない文字で「携帯サブレー」と書いてあります。写真だとわかりづらいですが、背景の写真が変に低解像度です。一体どこを撮ったのかもわかりません。
携帯サブレ、中身
箱の中には携帯をかたどった袋とクッキーが入っています。YRPというのはドコモを始め多くの企業研究所があるYokosuka Research Parkのことです。筑波のように研究所しかない田舎です。
携帯サブレ、サブレ
しかしながら中は何の変哲もない四角いクッキーです。若干、YRPという印が見えますが、何か期待していたなら残念でしたね。
明日の発表会に向けて、共同研究をしている方々にスライドを見てもらって、指摘をいただき直しました。明日の朝また練習です。
明日は午後一で発表会だそうです。いよいよ横須賀とおさらばです。
ARM上でのスタックトレースができたっぽいです。でもフレームポインタを辿るだけのx86とは違って、シンボル情報を使って関数の先頭を見るなどしているため、stripされたバイナリだとトレースできません。なんとかならんかなあ。
秋葉原でミーティングがありました。前日、徹夜で報告書を書いたために眠いです。
帰りにヨドバシでELECOMのイヤホン(MS-AL94シリーズ)を買いました。マイクがセットになっている優れものなのに、プラグ部分の立て付けが非常に悪いです。プラグがマイク端子に刺さりませんよ?力づくで刺したら、VersaProの中の何かが削れたので即引っこ抜きました。
エレコムといえば、前買ったLaneed(エレコム製スイッチングハブのブランド名)も、3番ポートだけ壊れて焦ったし、WEBカメラも壊れて録画画面が真緑になったし。安物ってそんなもんですかねー。
ちなみにイヤホンと一緒に買った Logitechの激安マウスは変な動作もせず非常に快適で、非常に対照的でした。
Armadilloのaptitudeが死んでしまう問題は、エラーでコケるパッケージをdpkg --force-all -i hogehogeって無理やりインストールしたら直りました。しかもaptitude upgradeしたらそのパッケージが削除されました。あーん?こんなんで良いのかいな、オイ。
昨日、参照の話が出てきたのでそれに関連した話をば。C++ の参照って微妙にわかりづらいと思います。
例えばint func_a(int &arg) {arg++;}; なんて関数があると、呼び出すときはint i; func_a(i); と書きます。見た目は値渡しで呼んでそうなのに、実は値が変えられてしまう気持ち悪い現象が起きます。
どうもC++ はCの拡張版であるという色眼鏡がかかってしまって、Cの全て値渡し呼び出しというルールとぶつかって参照がややこしく感じます。実際に使おうと思っても関数定義を見るまでは、参照渡しで変更される可能性があるのか、単なる値渡しなのかが呼び出し側からぱっと見わからないから、面倒なんですね…。
では、どうしているかというと、参照で渡すときはconst参照しか使いません。もし関数側に変更する意思があるなら、ポインタを受け取る(ポインタ渡しは & が付くのでわかる)ようにします。C++ なのにポインタとはかなりCライクな書き方ですが、参照渡しなのにうっかりCの値渡しだと思って原因不明のバグに悩むよりはマシかなと思います。
プログラムの話。何かを検索するような関数で、検索条件に一致するものが見つからなかったら例外を投げるように書いていたところ、これがえらく遅いことが発覚しました。
で、塚原氏と話していて例外とは何たるかに気づきました。例外はこれ以上の続行が不可能なエラーが発生したか、稀にしか起こらない異常事態を知らせる時に使うものであって、検索で対象が見つからないのは正常事態ですから、例外を投げるのはおかしい訳です。しかし例外を投げるように書いてしまったプログラムが沢山あるので直すのも面倒です。かなり憂鬱です。
そういえばJavaのget関数などは見つからなかったときにnullを返してくるのですが、C++ の参照にはNULLは入らない(キャストすれば入るかもしれないけど絶対後でクラッシュの誘因になる)よなあ。C++ だとポインタしかないですか。そうですか。
昼まで寝ていたら「掃除しても良いですか?」ってホテルの人から電話が来ましたので、そそくさと退散して、横須賀の街を散策。横須賀は外人とその辺に居そうなおばちゃん(日本人?)が英語で喋ってたりしておりますよ。明日は横浜に行ってみようと思います。
リファレンスモニタが監視対象のレジスタを取得するときにPTRACE_PEEKUSERで読んでいます。これは1回に4バイトしか読めず、何度も呼ぶことになるから遅いのです。その昔、榮樂氏にPTRACE_GETREGS(一回の呼び出しで済む)使わないの?って聞かれたりもしました。
そのときは説明できませんでしたけど、わざと使っていなかったはずなんですよ。なんでだか思い出せないので、試しにGETREGSで読んでみたら seamonkeyを監視するときにえらい勢いで失敗します。うわ、これだよ!でも何でだろうね?
調べるの面倒くさいんで、GETREGSが失敗したらフォールバックでPEEKUSERを使ってごまかしました。従来よりちょっと速くなったみたいだし良いよな。
< | 2006 | > | ||||
<< | < | 04 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | - | - | - | 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | - | - | - | - | - | - |
合計:
本日: