トップ «前10日分 最新 次10日分» 追記

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

ToDo:


2008-08-16

_ 明日

1時から SRM かー。 久々に参加したいな。

(01:51)

_ valgrind

むずかしいなぁ。 マクロが冗談みたいに多い。 まぁでもマジメに斜め読みすると それなりにわかったり 全然わからんかったりするな。 いや何もわかってないな。

たぶんなんか

  • 起動して tool 起動。こっちの世界が client 。
  • シンボル読みにかかる。バイナリ→共有オブジェクト→tool→vgpreload_core.so→vgpreload_tool.so
  • でヘンなシンボルは redir がなんかいじる。
  • んで guest が simulated CPU 上で動く
  • フックされた malloc に来て、 VALGRIND_DO_CLIENT_REQUEST でたぶん client と通信する
  • したらなんか VG_(needs_client_requests) に刺した hook が client サイドで呼ばれる。

ここで

#define __SPECIAL_INSTRUCTION_PREAMBLE                            \
                     "roll $3,  %%edi ; roll $13, %%edi\n\t"      \
                     "roll $29, %%edi ; roll $19, %%edi\n\t"

これはなんだ!

さすがに 64bit の bit rotate は NOP に過ぎないことはわかるので、 まぁたぶんこの instruction 列を見たら client にビビビっ っていうか simulated CPU における割込みみたいな感じかな。

でめでたく client の世界に戻ってきたとして、 こっちから guest の世界の関数を呼ぶとすぐ死ぬ。 何もせず帰るくらいなら大丈夫なんだけど。 まぁたぶんアドレスがズレてる…とかだと思う。 これがわかれば

Note that you can't use anything from the C library (there are deep reasons for this, trust us).

とかいうナメたアドバイスの意味がわかるのだが。 http://valgrind.org/docs/manual/writing-tools.html#writing-tools.otherinfo

で client の世界から guest の世界のメモリとかは見えてるわけだけど、 データ通信とかはどうやってるねん。 単に client request だけで十分なのか。

意味不明なメモ書いてたら まぁなんとなく整理できてきた…

本当だろうか

(05:00)

_ あと

valgrind を gdb で走らすと tool の開幕でいきなり sigtrap くらうわけだけど、 これはなんだろうなぁ。

launch するまでには ptrace とかやってるんかなぁ。 コードはあるけど strace では出てこない。

つか gcc に渡してるオプションが既におかしいな…

gcc  -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector   -o rmemcheck-amd64-linux -static -Wl,-defsym,valt_load_address=0x38000000 -nodefaultlibs -nostartfiles -u _start -m64 -Wl,-T,../valt_load_address_amd64_linux.lds rmemcheck_amd64_linux-mc_leakcheck.o rmemcheck_amd64_linux-mc_malloc_wrappers.o rmemcheck_amd64_linux-mc_main.o rmemcheck_amd64_linux-mc_translate.o ../coregrind/libcoregrind_amd64_linux.a ../VEX/libvex_amd64_linux.a -lgcc

tool の直接実行は怒られる、と。

> ./memcheck/memcheck-amd64-linux ls
valgrind: You cannot run './memcheck/memcheck-amd64-linux' directly.
valgrind: You should use $prefix/bin/valgrind.

もちょいちゃんと追わんとわからんね。

(05:22)

_

mayah さんとこふっかつしてる。

おめでとうございます。

(16:50)


2008-08-14

_ GBU

lamさんが人狼作ったとかいう

http://gbu.sakura.ne.jp/

前見た時は過去ログなかったんだけど、 今はあったから見てたら、 過去ログがにょきにょき伸びてて、どうなってるのかなと見てみると、 カスみたいなHTML + データ + JS を送って JS でデータを整形してるみたいだった。

たぶん進行中も同じシステムで 静的 HTML じゃなくて、 動的にデータ作る感じかなぁ。

(22:13)


2008-08-13

_ 棒けしゲーム

http://www.nicovideo.jp/watch/sm2842969

これを見てマジメに人力でプレイすることもなく Rubyスクリプトちょっと書いて勝ってみた。

コードはかなり読みにくい感じ。 こいうの Prolog とか得意だと思うんだけど、 ET とかで書くとなんかメリットあるのかなぁとか、 こいう例のサンプルが見られるといいなぁとか思いましたまる

露骨な要求に見えますがその通りなのですが、 お忙しければ全然無くて良いですはいとかそういう

(01:32)

_ いいよいいよー

http://www.icfpcontest.org/results/final/results-by-score-Final-7.html

生きてるってすばらしす。

知ってそうな名前は PFI と kstm.org って感じかな

(12:23)

本日のツッコミ(全2件) [ツッコミを入れる]

_ シンX [棒けしゲーム懐かしいなあ。高校の頃突然流行って、受験勉強そっちのけで戦略を考えてましたよ(←) ある日、「同じ棒数..]

_ shinh [将棋や囲碁と等価どころか、なんで棒けしと等価なのかすらよくわからん程度に単順なゲームですね…]


2008-08-12

_ めもりかくほ

http://d.hatena.ne.jp/isshiki/20080808/p1

http://risky-safety.org/~zinnia/d/2008/08/#20080809

一般的に標準ライブラリのようなものだと、 間違いなく呼び出し側が正しいんだけど、 一貫しては支持できないあたりいい加減なんだと思う。

理想を言えば C++ 文字列みたいに、 実体はヒープにあるんだけど スタックにあるみたいな扱いができる物体があれば 一番いいんだけど。

C でもやっぱめんどくさくて、 特に小さな物体とかだと平然と malloc した領域を返す 便利関数作っちゃうなぁ。 確かにそういう関数はメモリリークを 起こしやすいんだけど、 一方サイズ指定系の API はバッファ破壊系の バグを起こしやすくて、 昔は逆だったと思うんだけど、 現在の PC 環境では、 前者のバグの方がはるかに発見しやすいように感じる。

リークなんて多少気をつけてても、する時はするわけで、 とりあえずヒープチェッカはかけるからなぁ。

PC 的な環境だと malloc/free が十分速くて、 速度的な問題にはあんまりならない的な話も。

ただ free 以外の解放関数が必要な可能性があると確かにうっとうしいなぁ。 あとデバッグビルドリリースビルド的な問題があるので、 まぁやはりライブラリでは最低限 malloc した領域返す API があるなら その領域を解放する API を用意しにゃならんとかいう話はあると思う。

まとめてないけどざっと

  • ライブラリでない
  • ヒープチェッカがある
  • 最高速はいらない

あたりの条件がそろえば内部確保でもいいんじゃないかなぁ。

(11:24)


2008-08-10

_ D 2.018

http://d.digitalmars.com/2.0/changelog.html#new2_018

無事入ったか。 これで pbgd のスレッド実装動くと思うけど だからどうしたってレベルではあるな…

(18:48)


2008-08-07

_ quine

http://pc11.2ch.net/test/read.cgi/tech/1187527909/32

なるほど

#!/bin/cat

って quine なのか

(03:26)


2008-08-06

_ いいよいいよー

Lightning division 途中結果 via http://d.hatena.ne.jp/KeisukeNakano/20080806/1217981842

http://www.icfpcontest.org/results/lightning/results-by-score-Lightning-7.html

まだ死んでない。 Trial 7 やばすぎだけど!

http://www.icfpcontest.org/results/lightning/results-by-score-Lightning-3.html

この trial はなぜか3位とかにいていわゆる黄金時代。

(12:19)


2008-08-05

_ 大変面白いことになった

http://shinh.skr.jp/h/?DuckTyping

うれしいなぁ。 しかし俺はなぜ structural subtyping を static 分類にしてたのかみたいな。 まぁ他にも色々おかしかった気がするけど。

Haskell の template? て TemplateHaskell のことかな。 もしそうなら template? よりは TemplateHaskell? の方が嬉しいので 書いた人だれかたのむ的な。

あと Ada のあのめんどくさいやつはどこなんだろう。 nonintrusive-explicit-static?

型クラスやら implicit conversion と Obj.magic とか C のポインタを ごっちゃに置くのは超違和感だな。 だから推定 kinaba さんが最後のテーブルを 足してくださったんだろうけど。

nonintrusive-implicit のとこに 「普通 duck typing と言うとこれ」 とか足しといた。

(02:54)

_ あと

だめなわけないのでした

http://twitter.com/kmizu/statuses/876864306

まぁ明らかに書いて下さってますが!

(03:08)

_ leonid たん降臨

http://d.hatena.ne.jp/Ozy/20080801#c1217829284

が面白かった。

(03:12)

_ Symbol

http://twitter.com/hajimehoshi/statuses/877740043

だと思う。 ID でひいた先の文字列がずっとあるって話かな

http://i.loveruby.net/ja/rhg/book/object.html

http://i.loveruby.net/ja/rhg/book/name.html

(11:28)

本日のツッコミ(全5件) [ツッコミを入れる]

_ k.inaba [たぶん最後のテーブルは推定soutaroさん]

_ YT [おお素晴らしいまとめです。 Adaはnonintrusive-explicit-staticでいいと思いますです。 ..]

_ soutaro [私です。 だから、もう書いてある表を写したやつと、これはさすがに間違えないと思うtyped/untypedしかないと..]

_ shinh [なんと soutaro さんでしたか。編集ありがとうございます。 YTさんもぜひ Ada を表に]

_ みずしま [> まぁ明らかに書いて下さってますが! ご察しの通り、書いてました。Scalaの辺りとか、OCamlの項目 を微妙に..]


2008-08-04

_ 交換日記

http://www.liarsoft.org/diary/20080803.html#20080803p1

なんか僕の方はかなり良くなってる感じで、 良くなってるのが申し訳なく感じるのです。 つくづくヤな病気だと思う。

  • 金曜にまた医者に行った
  • 前回ついでだしやってちょとアレルギー検査やってもらった結果が出てた
    • 全くアレルギー無い的な
    • 部屋掃除しなくて良い
    • 猫も問題なさげ
    • ピーナッツだけなんか疑陽性とかそんな
    • 言われてみると前発症した時はピーナッツを100円ショップで大量に買って喰ってたりしたかも
    • まぁあんま関係はなさそうだけど
  • だいたいひいてるから非ステロイドのプロトピックとかいうので行くと良いということでそれをもらった
    • 炎症がある時にプロトピックを塗ると熱かったりして大変らしい。実際塗るとちょっと熱を感じる。寒さへの耐性がついただけかもしれないけど。
    • 飲み薬は悪くなんなきゃあんま飲まんでええよとのこと
    • 半錠ずつ飲むと眠けはだいぶマシ
    • プロトピックの前はプロパデルムとかいうステロイドのやつだった
    • 医者行く前はだいぶ前に買ったキンダロンとかいうのを使ってて、これも強さは同じレベルぽいんだけど、あんまり症状がきかなかったのは、古くなってるとダメって感じなのか、医者の判断なしでステロイドってどうなんかねとかなり控えめに塗ってたからなのか。
    • あるいは飲み薬によってかゆみをおさえたことか、あやしげな水が効いた説

(01:46)

_ 信念

RMS や Theo は YouTube とか見ないのかなぁ…

てか OpenBSD はフラッシュ見れるのかな。

(02:10)

_ duck typing

http://shinh.skr.jp/h/?DuckTyping

うめるといいのです

(11:30)

本日のツッコミ(全1件) [ツッコミを入れる]

_ ksw [や、ぼくも大体治りましたです。貰ったステが強かったのと、ダニアースが効いた感じです。あと壷も。壷マジ最強だと思った。..]


2008-08-03

_

何事かと思ったら rb_iseq_struct の構造変わってるのかぁ。 どしたもんすかね。

r17781 | mame | 2008-07-02 01:55:30 +0900 (Wed, 02 Jul 2008) | 29 lines

これか。

#if RUBY_REVISION > 17780 || RUBY_REVISION == 0
    VALUE coverage;     /* coverage array */
#endif

まぁ僕は深く考えない

(00:11)

_ ほげ

http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/yukoba/20080729/p1

これは本当にひどいことになってるな…

(00:26)

_ GCC x86_64 i386

/usr/bin/ld: skipping incompatible /usr/lib/../lib/libc.so when searching for -lc
/usr/bin/ld: skipping incompatible /usr/lib/../lib/libc.a when searching for -lc
/usr/bin/ld: skipping incompatible /usr/bin/../lib/libc.so when searching for -lc
/usr/bin/ld: skipping incompatible /usr/bin/../lib/libc.a when searching for -lc
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crti.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/../lib/crtn.o' is incompatible with i386 output
collect2: ld returned 1 exit status
make[4]: *** [32/libgcc_s.so] Error 1
make[4]: Leaving directory `/home/i/src/gem-1.7/gcc-4.1.0/host-x86_64-unknown-linux-gnu/gcc'
make[3]: *** [stmp-multilib] Error 2
make[3]: Leaving directory `/home/i/src/gem-1.7/gcc-4.1.0/host-x86_64-unknown-linux-gnu/gcc'
make[2]: *** [all-gcc] Error 2
make[2]: Leaving directory `/home/i/src/gem-1.7/gcc-4.1.0'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/i/src/gem-1.7/gcc-4.1.0'

このエラーを見たら --disable-multilib を。

あと tree の dump は dump_node(tree, 0, stdout); とかです

(02:14)

_ うーむり

初結婚式いってきた。 がんばったという感じだったと思う。 直前とはいえ事前に色々調べたし

  • 祝儀袋と筆っぽいのをコンビニで
  • 新しいお金を手に入れる
  • なんか袋をさらに包みっぽいのに入れるのが良いらしい(が見つからなかったので諦めた)
  • ネクタイはぐぐればしめかたわかる
  • 不吉なことは言わない(まぁでもそんなに問題ないみたいだった)
  • 実は2-3時間しかない
  • 徹夜でびびって待ってるほどこわいものではない

新郎新婦を祝う気持ちはあるつもりなんだけど (中二病なので微妙な表現) 中二病なのでかしこまった場にいると 体力がもりもりへっていく感じだった。 マント無しで砂漠に入ったワルキューレみたいな感じ。

(17:47)

_ 中二病

そういえば会社で中二病の症状として 「shinh ブログを読んでる」とかいうのが 挙げられていて、まぁ

  • 僕自身中二病なので指摘自体は完全に正しいと思う
  • 僕はこっちもあっちもブログとは決して呼びたがらないのでその指摘をした人はそこまでヘビーに見てないと予想されて安心
  • 中二病の定義とかよくわかってないけど(たぶんこいうこと書くのが既に)

そういう

(17:52)

_ いやー

まだ増えるだろー

http://twitter.com/alohakun/statuses/876232435

と思うのでした。 つか 4G も乗ってるマシン家に無い。

MemTotal:      4056664 kB

と思ったらこのマシン 4G 乗ってた。

あと LL Golf #2 はさっさと Perl 出動しろ。

(18:42)

_ と思ってたら出動してた

http://ja.doukaku.org/196/lang/perl/

てか uc とかそういえばあったね!それはざんねん!!! _& が見たかった!

あと sed を応援したい

(18:50)


2024年
11月
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
1.星一(2014-05-24 01:41) 2.なかむら(う)(2014-05-24 01:41) 3.星一(2014-05-24 01:41)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h