ToDo:
そういえばこのサイト考えた人は頭おかしいと思った。
しかしこいうの見ると kernel って愛されてるなーと思いますね。
linux kernel ってのは
などの壁があると思うんだけど、 なんかやはりこれこそがコンピュータを動かしてるものである、 的なアレによって人々に愛されてるのかなぁ。
あと地味にコード読みやすいしモジュールとか割とちゃんと切れてる (たぶん…)のもいいポイントなのかね。
(03:40)
G1 ちゃんに最近の android 入るらしいということなので、 同僚さんに渡したところ root 取って あやしげなリカバリーソフトみたいなものが 動いてるだけで起動しないみたいな状況になった。
役に立たんなーということで適当に色々やったら CyanogenMod というディストリビューションで froyo が入った。
http://wiki.cyanogenmod.com/index.php?title=Dream:Installing_CyanogenMod_5%2B
に書いてある通りで、
って感じで順にやっていけば良いようだった。 入れる方法は adb で転送してリカバリーソフト的なやつで 展開して…ってのを繰り返せば良かった。
どうも無線 LAN が不安定な以外は良いように見える。 マルチアカウントもあるし。 CPU 的なのは速くなったような気がするんだけど、 メモリ的なとこは遅くなったような気がする。 まあ G1 とか元々たいがい遅いので気にならない。
無線だけはうざいので 2.22.23.02 ってのを試すといいんだろうか…
(03:33)
http://twitter.com/kinaba/status/16912649623183360
なるほどそういえばそういうのもありました。追加しておきました。
http://shinh.skr.jp/h/?ClassNaming
(09:16)
SC2 で FFA を3人でやってるらしいんだけど、なんかマウスカチカチやってるんじゃなくて世界に入り込んでるような感じでやっている。なんか鶏を何匹か作ってるのを見て対戦相手が「対空できない子作ってるから muta 作ろう」とか言ってるのが聞こえる。そうかしょうがないなあと思って muta を作ろうと、 spire の種を買って埋めようと考える(夢でないゲーム中に spire の種なんてものはなくて生産ユニットが変形して spire っていう建物になるし鶏のユニットとかない)。 spire の種をバレにくい位置に建てようとそこらを全力疾走して、そこらにあったマンホールを開けて何故か水にぬれた土が見えてるのでそこに種を入れる。その土の上にいた生物に種を食べられてしまう。しょうがないから hydra 作るか…と思ったら起きた。感想としては SC2 やりすぎ。起きて思ったことは hydra さんとかほとんど作ったこと無いな…と
同僚が WebKit の JS の挙動がおかしいとか言っている。なんとかとかいうのがおかしいらしい。なんとかというのは聞き取れない。デモを見てみる。どうもキャラクタが往復しないといけないのに、ランダムな方向に進んでしまっているらしい。たしかにおかしそうと思う。デモのコードを見て、なんとかと言ってたのは currentRot というフィールドの話だったぽいと気付く。はて JS に currentRot なんてあったっけ…と思ったら起きた。
(08:01)
timeline
todo
重要なデータは特に無いはずだから backup から基本全部取れるはず… まあ後で HDD ひっこぬいてデータは抜いておこうと思う
(09:24)
いろいろとやりたいが
(18:20)
gcc -m32 -fPIC
12: 8d 83 00 00 00 00 lea 0x0(%ebx),%eax 14: R_386_GOTOFF .LC0 18: 89 04 24 mov %eax,(%esp) 1b: e8 fc ff ff ff call 1c <gcc+0x1c> 1c: R_386_PLT32 puts
gcc -m32
6: c7 04 24 00 00 00 00 movl $0x0,(%esp) 9: R_386_32 .rodata.str1.1 d: e8 fc ff ff ff call e <gcc+0xe> e: R_386_PC32 puts
gcc -fPIC
4: 48 8d 3d 00 00 00 00 lea 0x0(%rip),%rdi # b <gcc+0xb> 7: R_X86_64_PC32 .LC0+0xfffffffffffffffc b: e8 00 00 00 00 callq 10 <gcc+0x10> c: R_X86_64_PLT32 puts+0xfffffffffffffffc
ここで addend は両方とも -4
gcc
4: bf 00 00 00 00 mov $0x0,%edi 5: R_X86_64_32 .rodata.str1.1 9: e8 00 00 00 00 callq e <gcc+0xe> a: R_X86_64_PC32 puts+0xfffffffffffffffc
addend は後者だけ -4
tcc
b: 48 8d 05 fc ff ff ff lea -0x4(%rip),%rax # e <gcc+0xe> e: R_X86_64_PC32 L.22 12: 48 89 c7 mov %rax,%rdi 15: b8 00 00 00 00 mov $0x0,%eax 1a: e8 fc ff ff ff callq 1b <gcc+0x1b> 1b: R_X86_64_PC32 puts
さて!
とか書いてるうちに気付いたが、 PLT 作った場合に rel->r_addend を足してないってだけの話だこれわ
(16:14)
あたりを修正。 副産物として raw_write.h とかいうのができた
WebKit roll は今日はやたら平和
shinh.org はなんもしてない
27c3 とかいうのでゴルフ場使うよって話でいくつか対応
あと twitter/mircbot が止まってるのは twitter API が変わったとかなんとか
chrome extension は engoogle とかは user data を適当に廃棄したらインストールできるようになった。
chrome key config は任意 JS 書けないってことで、 shortcut manager にしようと思ったのだけど、 しかし chromekey が動いた時点でやる気が失せた
chromeswitchproxy は chrome のコードを見た結果、 gconf 経由で設定すれば gconftool-2 コマンドで 適当に動的に変えれる気がしたので、 それのラッパ書いてお茶を濁せば良いのではないかと思った。
(20:21)
電車の中で暇だったのでだいぶ前に書いてた ld-mach-o を見てた。 クラッシュしてるところはどうも strcmp の中らしい。
gdb の reverse-stepi とかあのへんはじめて使ったけど、 さっさとクラッシュしてるようなケースだと便利だなぁ… と気付いた。 実益ないとバカにしてた record だけど、 まぁなんか使いかたあるかもなぁとか思いはじめてきた。
なかなかクラッシュしてくれないプログラムを考えると、 「クラッシュするちょっと前」を探してそこから record してくれると嬉しい。 しかしこれはどう考えても簡単じゃない。
たぶんタイマーみたいなのを仕込んで、 時々止めてみて rip を記録して、 次回は最後に止まったところで止めて record を仕込んで…とか考える。 ただその止まるようなところはどうせ何度も通るようなパスなんですねー。
はてさて
あと raw_write が TCC で動かないのがムカついたので インラインアセンブラをいじりはじめる。 raw_write は動いた。 r8 から先が全く対応されてないのでなんとかしたい、気がする。
(00:01)
ファイル保存可能問題がふたたび。
どうも /var/lib/php5 と /var/cache/common-lisp-controller が writable だったようだ。
これらはなんか writable であるべきってことで writable ぽいんだけど、 とりあえず hello world くらいなら php も clisp も 755 で動いてやがるので、とりあえずこれでいいかと放置。
問題あればおしえてください
(11:58)
前 | 2010年 12月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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 | 31 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ egtra [MSでも、.NET Frameworkのガイドラインとなるとまた異なり、2文字以下なら大文字となっています。 ht..]