トップ «前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|12|
2025|01|02|03|04|05|06|07|08|09|

ToDo:


2006-11-19

_ Apache 2.2.3

そろそろ mod_python によるフィルタが 欲しくてしょうがない。 しゃーないから自分で入れた。

とりあえず何フィルタしようか

(02:01)

_ Hello world 3.0 カンファレンス

だんだんと盛り上がってきてるようです

http://slashdot.jp/developers/article.pl?sid=06/11/19/0140250

(12:27)

_ there is nothing absolute except the absence of absolutes

(16:08)

_ 略語の話

http://arton.no-ip.info/diary/20061119.html#p02

おもしろすー

(20:20)

_ 前からふしぎなこと

hamaji@www491 ~/83687> ls -l file
-rwxrwxrwx  1 hamaji  users  2 Nov 19 20:25 file*
hamaji@www491 ~/83687> rm -f file
rm: file: Permission denied
hamaji@www491 ~/83687> echo > file
hamaji@www491 ~/83687> ls -l file
-rwxrwxrwx  1 hamaji  users  1 Nov 19 20:26 file*
hamaji@www491 ~/83687> rm -f file
rm: file: Permission denied
hamaji@www491 ~/83687> truss rm -f file
geteuid()                                        = 1001 (0x3e9)
ioctl(0,TIOCGETA,0xbfbff654)                     = 0 (0x0)
lstat("file",0xbfbff620)                         = 0 (0x0)
unlink(0xbfbff842)                               ERR#13 'Permission denied'
rm: write(2,0xbfbfeeb8,4)                                = 4 (0x4)
filewrite(2,0xbfbfeed8,4)                                = 4 (0x4)
: write(2,0xbfbfeea8,2)                          = 2 (0x2)
Permission denied
write(2,0xbfbfeea8,18)                           = 18 (0x12)
exit(0x1)                                       process exit, rval = 256

これどやって消すんだろうね。 /proc からコピったファイル消せない問題 @FreeBSD

(20:28)

_ TODO通知

上にあるTODO通知がイカれてて去年のTODOを送ってくれた。 レポート書けとのこと。 さっくり修正してみたけど動くのやら。

あと2007年問題とかもあるわけですが

(20:35)

_ いろいろ整理

なんかごちゃりまくりのツール群を整理したいわけだけど。

  • TODO の 2007年問題(つまり2007年の予定は2007年にならぬと登録できぬ)
  • mailto: スキームの処理(これはたぶんやった)
  • メール→コメントフィルタ
  • sevilwm
  • CPU使用率表示
  • 透過ウィンドウ
  • HyperEstraierサバにメールとIRCのログを(今はWebだけやったっけ)
  • estsave.el の復活
  • /usr/include とかもツッコむ方法考える
  • /usr/lib 検索は?
  • 色つきソース引用問題
  • screen の ^t^x がなんか遅い。あれそもそもコピった時点でなんとか
  • rdic のコマンドライン化

(20:51)

_ rdic

で、 rdic 見に行ったらなんかバージョンアップしていた。 だから新しいの入れようと思ったけどそのまえになんか k12-1 フォントを入れて発音記号が出るようにした。

(21:03)

_ mirc にえいじろ

はライセンス的に微妙かなぁと。

(22:02)

_ あーそうか

w3m で BASIC 認証突破する時に .w3m/passwd で指定してるんだから 一旦失敗→ .w3m/passwd 使うとかまどろっこしいことしないでよ! って思ったら realm 見るまでは無理なんだなぁと納得。

(23:19)

_ mlterm と skkinput

なんでかしらんが JISX0201_ROMAN だけ k14 に戻したら 汚なくなってたフォントが綺麗になった

(23:30)

_ kids goo に好かれるのはあきらめたよ

http://shinh.skr.jp/t/adult.cgi

アダルト goo があればそれでいい

(23:58)


2006-11-18

_ うお

案外PE面白そうなのであったすごそう

(13:31)

_ タイトー

クロニクルオブダンジョンメーカーって タイトーかてことはネバーランドカンパニーだったり… とか思ってサイト見たけど違ったみたいだ。

でなんか ルーンファクトリーってのが ネバーランドカンパニーのアクションRPGとなると 少し気になるなぁとか。

http://www.mmv-i.net/game/ds/runefactory/index.html

(21:25)

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

_ Gus [http://www.rozenmaiden.info/runefactory/wiki/index.php このw..]

_ shinh [なんか今あんまり面白くないという情報が。あとバグが多すぎるとか]


2006-11-17

_ これも同じく

ページ境界がそろってればいいみたい。 しかし e_entry が 0x1014 とかになってもうれしくないわけですが

(00:11)

_ FSいじれるのかー

http://www.pqrs.org/~tekezo/nikki/2006/11/16.html#y2006m11d16c1p1

おもしろそー

(02:11)

_ と思ったら

http://www.nikse.dk/petxt.html

なんかヘッダでかすぎて萌えないなぁ…

(03:31)

_ NASM

むしろNASMはじめてさわって 6日目とかの子が喋って良かったのかみたいな

http://shinh.skr.jp/m/?date=20061109#p03

(04:58)


2006-11-16

_ あー

たのしかったです

  • NII脱出
  • ドトールで実装
    • なんかマウスポインタをレーザーポインタぽくしたかった
    • 別にいらなかった
    • スライドちょっといじった
    • ねむいのと喰ってねえから胃がいたいのと
    • キーボードが全然効かないと気付いてびびった。 HHK シンドロームと名付けた
  • HEY
    • 二つ目の機体初プレイでエグゼリカクリア。5機設定で3機あまったから普通にクリアだよねだよね
    • isshikiさんと話す。カラスが無い。それマジでせつないんじゃ
  • 産総研
    • プロジェクタをチェックしに早めに
    • 警備員に呼び止められるのは得意です
    • キーボードがきかないため、ログインできない
    • 30回くらいパスが通らなかった
    • パスワード p とかにしようか
  • ukai さん
    • ぼんやり聞く
    • 普通に知らない話があっておもろい
    • 喋ってる最中は割に元気
    • knokさんはすごいいい人だと思った(どうでもいいネタでも笑ってくれるから救われる)
    • 終わったら眠け&胃痛ラッシュ
  • woさん
    • 相変わらず狂ってる
    • 停止しないデバッガ問題
  • kikさんとおはなしできた
    • ありがたや
    • まぁ眠いから聞きたいこと忘れてた
    • まぁ何が聞きたかったかも思い出せない
    • たぶんGBAでHello作ってくださいとかんそんくらいのどうでもいい話
  • ぶらぶら
    • サインというか落書きっていうか
  • 呑み
    • 世代が上の人の話を聞くのは面白い
    • エネルギーと情報とか
    • 小島さんとお話ができる光栄
    • GCCのコードを挫折せず読む方法を聞いたが明白なアドバイスもなくやっぱ努力ですかと
    • シューティングとか
    • あとは忘れた
  • 帰宅
    • 途中までisshikiさんとWiiとか

(00:23)

_ つーわけで

  • スライドをダンプする機能をつけた
  • スライド表示する CGI を書いた
  • スライドの下に適当にリンクを加えた

うむおれよくやったえらい

あとねむい

(01:54)

_ 写真を見て

プレゼンする時、 話者付近は電気消すことが多い。 すると写真とかは青系の色になるし、 たぶん見てる人もちょいと青系に見えてるはず。 となると青系の資料作るのは愚かで、 たぶんうすい黄色とかそっち系の色 (俗に言うWeb2.0色)の方がいい気がした。 今度機会があったらためしてみやう

あと誰もWeb2.0色なんて言ってない

(02:07)

_ TODO

  • quine

(02:49)

_ アフィ

発送済み商品の合計(Amazon.co.jp)	14	\31,750	\1,417
発送済み商品の合計(マーケットプレイス)	2	\5,828	\189
発送済み商品合計	16	\37,578	\1,606
返品数合計	0	\0	\0
返金合計	0	\0	\0
紹介料合計	16	\37,578	\1,606

こんな感じだったみたいです。 ちょうどアマゾンの 1500円チケットもらえる感じみたい。 うち Binary Hacks が 1000円くらい。 なんかどなたか知らんですがありがとうございます。

まぁでももういらんです。 1500 の剰余は換金できないので 他のところでアフィられて下さい。

(03:12)

_ Hello world 2.0 カンファレンス

  • PHP の Hello world は世界一(短い)
  • HQ9+ とかの方が
  • それチューリング完全ちゃうやん
  • binfmt_misc の 0B に勝てるかな
  • exe が拡張子の実行ファイルが実行できなくなってしまいました
i@u ~> ls /proc/sys/fs/binfmt_misc
cli  hello  python2.4  register  status
i@u ~> sudo rm /proc/sys/fs/binfmt_misc/hello
rm: cannot remove `/proc/sys/fs/binfmt_misc/hello': Operation not permitted

後戻り不能インターフェース。 これうっかり ELF の magic の挙動変えたらおもしろいよね。

と思ったら消せるみたいだ。

i@u ~> sudo sh -c 'echo -1 > /proc/sys/fs/binfmt_misc/hello'
i@u ~> ./hello.exe
zsh: exec format error: ./hello.exe

(03:20)

_ Windows PowerShell

http://www.atmarkit.co.jp/fdotnet/special/powershell02/powershell02_01.html

前聞いたのはこれかぁ。 なんか面白そうだなぁ。

まぁ例のごとくひどいわけだがー

http://slashdot.jp/article.pl?sid=06/11/15/2331202

(11:57)

_ 815,761,845位

http://www.globalrichlist.com/

100万くらいかなと思って入れたら13.59% らしい。 そんなもんなんだろうなぁ…

(12:00)

_ 年収1万

くらいが最下層なのか…

(12:03)

_ nntp板

http://pc8.2ch.net/nntp/

んなんあるんか…

(12:31)

_ Exceptional C++ Style

次からECS

どうでもいいけど例外ほげほげには イマイチ興味が持てないのであった。 たぶんゲームだと main 囲うくらいしか使わないのが 適切だからじゃないかな。 いやいずれにしても例外から本当に復帰しなければならないような シーンがあんまり無いというか。

前書きがカッコよかった。 exportと国会議事堂と国会議事堂の共通点は何か!?

1 vector

いきなり常識レベル

2 sprintf

「strstream が良く見える」感性は理解できない。 個人的には lexical_cast > sprintf > snprintf >> sstream > strstream くらいな気がする。

4 std:: の引数の数の実装依存

知らなかった。 どっかで見ていたかもしれないけど。 いずれにせよ気にしないと思った

5 汎用性十分か。

たぶん簡単。あんまり印象に残らない

7 関数テンプレートを特殊化するな

本能的にしてなかったていうか、 std::mem_fun とかのイディオムが 染み込みすぎてるなバイトで染み付いた。 ちゃんと理由が言語化してあったのは良かったし、 C++ のアレさがよくわかってよい

8 template friend

まさしく2000年くらいのバイトでいろいろやったなぁと懐しく。 まぁこれもC++のアレなところが見えまくりで良い。 結論は全部 public ということでよろしかったでしょうか。

(13:10)

_ jserv

http://blog.linux.org.tw/~jserv/archives/001728.html

見っけたー。

最小 hello にも言及しておられるみたいだ。

http://blog.linux.org.tw/~jserv/archives/001762.html

http://d.hatena.ne.jp/kikx/20061111

もし REFERER で来られたらわかるようにリンクはっとこ

(18:11)

_ おお

SDL-IM とかなんか素敵な

http://jserv.sayya.org/

(18:12)

_ ムーアの法則 2.0

CPU上のコアの数は2年で倍増する

36年ほどで 1MCore とかになるはずです。

50年もすれば CPU 演習で 100MCore CPU とか作ってるんでしょう

(19:21)

_ lingr

使ってみたいものだけど

(21:43)

_ テストがあった

のでテストしてみた。

なかなかいいかんじなんだけど

(21:55)

_ たしかに

自分読むquineはむっちゃ簡単ですね…

i@u ~/wrk/binhacks> la quine_small
-rwxr-xr-x 1 i 56 2006-11-16 22:41 quine_small*
i@u ~/wrk/binhacks> diff =(./quine_small) quine_small

さらにエグいパターンがあればいいんだけど

(22:42)

_ e_ident だけで終わるし

ヘッダが縮んだだけ短くなるというか

(22:45)

_ quine は

と言わず任意の実行ファイル的に 56B が限界に見える…

00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                            01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss ss ss mm mm mm mm *7 ** ** ** ** ** ** **

は実行までは行けるんだけど、

e_phoff が 0x14 => p_vaddr が 0x14 => p_offset が 0x14 => e_entry が 0x14 っていう制約で、 phdr の初っ端であるところの 01 00 でコケる気がする。

さて。 p_vaddr が 0x14 => p_offset が 0x14 は本当に絶対必要な条件なのだろうか…

(23:59)


2006-11-15

_ むしろ

Hello world カンファレンス

(02:23)

_ 内容

  • PHP の Hello world は世界一(短い)
  • HQ9+ とかの方が
  • それチューリング完全ちゃうやん

3分くらいで終わりそうだ

(02:25)

_ 正解です!

http://d.hatena.ne.jp/oto-oto-oto/20061114/1163524011

WA がヒントでした

とかこうなんていうかつまり

http://shinh.skr.jp/m/?date=20061107#p26

をはやくやらないと

(03:19)

_ ねむいけど寝れません

こまるなあ、まじで

http://d.hatena.ne.jp/w_o/20061114#p2

> アセ

この push 命令は 68 02 00 03 00 とかそんなんが入ってるわけですが。

> 15分

僕も終わるとは思えません。 なんせ b2con よりでかい。

i@u ~/wrk/b2con> wc b2con.hiki
 422  749 7449 b2con.hiki
i@u ~/wrk/b2con> wc ../binhacks/fsij.txt
 805  1166 10121 ../binhacks/fsij.txt

どどどうしよう

でなんかつまりこのメール投げたら コメントに投稿しつつこっちにも 残るようなシステムが欲しいと言ってるわけですよ。 でそれをまぁ今度作ると

ていうかトラバってその用途に使うんじゃとか

あとなんていうか僕プレゼンとか あんましたことないわけで

  • mod_estraier MoP
  • 内輪セミナー(英語) MagicPoint
  • mod_estraier MoP
  • b2con SPS
  • 愛媛物理学会 OpenOffice
  • イギリス内輪(英語) OpenOffice(愛媛と一緒)

時系列全然覚えてなくてびびった

あとなんかとりあえず寝る努力を

(04:11)

_ 明日のぼくへ

  • 二度寝してはいけません
  • Web に見入ってはいけません
  • ゴルフは論外
  • まず論文をしなさい
    • Coh
    • Sq
    • Cat
    • 余力があれば Bill 修正案を
  • でスライドをなんとか
    • Windows で動く保証を
    • プレゼンに時計をつけなさい
    • スライドの順序まとまりないよ
    • o world のあたり
    • つなぎがひどい
    • さらに万一に備えて html 出力機能を実装

(04:16)

_ 特技は寝れないこと

(04:38)

_ もちろん二度寝したい

(07:41)

_ 理由は短いから

http://www.jmuk.org/d/?path=2006/11/14#d14t01

僕なら tr かな

irb(main):002:0> 'abcdefghijklmnopqrstuvwxyz'.tr'kaze',''
=> "bcdfghijlmnopqrstuvwxy"

(08:28)

_ この場合

転売じゃない><

(08:44)

_ 2進数

   Wii   100011001010000
   PS3   10010010011111000
   二進数で表示すると、よく分からないのである。 

(09:09)

_ ねむいときに

コ〜ヒ〜呑むとムネのムカムカが ひどくなるよね。 少なくとも覚醒した記憶はない。

まぁあと cat について書けば論文は最低限良しとする

(10:32)

_ ねこすてーと

書いた。 ひどいもんだが。

とりあえず切り上げてプレゼンいじろう。 なんか余裕あるな。

(10:54)

_ むにゅう

http://d.hatena.ne.jp/higepon/20061114/1163517868

http://d.hatena.ne.jp/shinichiro_h/20060829#1156830996

ついでに cc1 を自分で呼び出す練習

i@u ~/test> gcc not_reached.c -Wall
not_reached.c: In function 'main':
not_reached.c:6: warning: control reaches end of non-void function
i@u ~/test> cpp -CC not_reached.c | /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 -quiet -Wall -
not_reached.c: In function 'main':
not_reached.c:6: warning: control reaches end of non-void function
i@u ~/test> cat not_reached.c | /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 -quiet -Wall -
<stdin>: In function 'main':
<stdin>:6: warning: control reaches end of non-void function

うーんどう見ても cc1 は cpp 持ってやがるな

i@u ~/test> /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 --help |wc
   1067    6246   68786

すごい読みごたえありますね!

(11:04)

_ お、できた

i@u ~/test> cpp -CC not_reached.c | /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 -quiet -Wall -fpreprocessed -
not_reached.c: In function 'main':
not_reached.c:6: warning: control reaches end of non-void function
i@u ~/test> cat not_reached.c | /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 -quiet -Wall -fpreprocessed -
<stdin>:1: error: stray '#' in program
<stdin>:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
<stdin>: In function 'main':
<stdin>:4: warning: implicit declaration of function 'my_exit'
<stdin>:6: warning: control reaches end of non-void function

(11:05)

_ うぃんどず

動作確認終わり。 こんなあっさり動くんだったら安心していいかな

(11:18)

_ くそう

にはさんの 75B が気になるぞ… 追い抜かれる予想90%

とりあえず時計もつけた。

あとはプレゼンいじるか… 特にまだ書いてない部分をなんとか。

(11:49)

_ れんしゅう

21分

(13:48)

_ んなもんで

移動してろんぶん続きやろう

(13:49)

_ gcc --help -v

と対応してるってことかね

(15:41)

_ ミーティング終わた…

まぁアキバ行って喫茶店でも行くか。 ねみい

(16:16)

_ とりあえず急ぎTODO

  • 日程を伝える
  • measurement(s) に変更

(16:19)

_ あー

つかれたというかねむい

ねむい

なんだっけ

なんかやってる間になんか D がすごいことに

(23:58)

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

_ niha [前の書き方が限界ぽかったので大きく書き方を替えました。まあ頑張って追い抜きます。踏台ですから。 ボクのことは気にしな..]


2006-11-14

_ PKU2017

AC

(00:04)

_ PKU2039

AC

一回 WA くらった

(00:17)

_ pku2027

AC

(00:20)

_ PKU1218

AC

(00:23)

_ pku1579

AC

(00:41)

_ PKU1552

AC

(00:46)

_ pku1528

AC

(00:53)

_ PKU1517

AC

(00:59)

_ 終わりのつもりだったけど

pku3030

AC

(01:08)

_ 58B

について思うのは、 これは本当にすごいものだなと思うんだけど、 本当にこれ限界なのかなとかそういう。 エレガントに詰まりすぎてるというかなんというか。 ただ俺じゃあ全然手が出ないんだよなぁ。 今日は repne scasb とか書こうとして 簡単には書けなかった。

とりあえず intel のドキュメントは印刷すること

(02:44)

_ コミュニティ別メール内コメント

  • Unix 野郎
浜地です。

その件につきましては、今週中になんとかします。

# できれば明日中には…

  • LISP
浜地です。

その件につきましては、今週中になんとかします。

;; できれば明日中には…

  • OCaml
浜地です。

その件につきましては、今週中になんとかします。

(* できれば明日中には… *)
 
  • Brainf*ck

>+++++++[<------->-]<------.++++.>+++[<--->-]<-.>+++[<++++>-]<.>++++++[<------->-]<-.>+++++[<+++++++>-]<.>+++++[<------->-]<.>++++[<+++++>-]<+.>++++[<------>-]<.++.>++++++++++[<++++++++++>-]<+++..>++++++++++[<---------->-]<--.>+++++[<+++++>-]<.>+++++[<----->-]<.>++++++[<+++++++>-]<.>++++[<----->-]<---.>+++++++[<++++++++>-]<.>++++++++[<--------->-]<---.>++++++[<++++++>-]<+++.>++++++[<------>-]<---.>+++++[<++++++>-]<++.>+++++[<------>-]<--.>+++[<+++>-]<.>+++[<--->-]<.>+++++++[<++++++++>-]<++.>+++++++[<-------->-]<--.>++++[<++++>-]<+++.>++++[<---->-]<---.>+++++[<++++++>-]<++++.>+++++[<------>-]<----.>++++++[<+++++++>-]<+.>++++++[<------->-]<----.+.>++++[<++++++>-]<.>++++[<----->-]<---.>+++++[<+++++>-]<+.>++[<---->-]<.>+++[<++++>-]<++.>+++++[<+++++++>-]<.>++++++++[<-------->-]<--.>++++++[<++++++>-]<+++.>++++++[<------>-]<---.>++++++[<++++++>-]<++.>++++++[<------>-]<--.>++++++++[<+++++++++>-]<+++++++.>++++++++[<--------->-]<-------.>++++++[<++++++>-]<.>++++++[<------>-]<.>++[<+++>-! ]<+.>++[<--->-]<-.>++++[<++++>-]<+++.>++++[<---->-]<---.>+++++++[<++++++++>-]<++.>+++++++[<-------->-]<--.>++++[<+++++>-]<+.>++++[<------>-]<.++.>++++++++++[<++++++++++>-]<+++..できれば明日中には…

(03:47)

_ 今意味がわかった(たぶん)

http://d.hatena.ne.jp/w_o/20061112#p1

おめでとうございます(たぶん)

(04:17)

_ codeblog

Brainf*ck で書いたらいいんじゃないの

(04:24)

_ あってた

http://d.hatena.ne.jp/w_o/20051113#p1

眠いのに寝れないのはなんとかなんらんのか

(04:29)

_ ねれぬー

時間の無駄だしろんぶんかこう

(05:47)

_ PS3 転売潰し

http://blog.livedoor.jp/dqnplus/archives/850456.html

354の人がすてき。 この人見るとなんとも思ってなかった 転売人が悪い子に見えてくる

(05:58)

_ よくわからんけど

普通に SCEI 大丈夫なんか

http://www.nikkansports.com/general/p-gn-tp0-20061112-115959.html

(06:26)

_ gatekeeper 備忘

http://www.geocities.jp/pspqpspqpsp/

(08:19)

_ Ruby のパフォーマンス

http://www.atdot.net/~ko1/diary/200611.html#d14

メソッドディスパッチじゃなくて 「Ruby の高級な機能」が重いってのは勉強になった。

引数も括弧もないから…とかの例を読んで、 Language Shootout と最下位と引き換えに Code Golf 最上位ならいいじゃない…とか。

ていうか僕の経験では YARV むっちゃはやいんだけど

(12:42)

_ 雑用係

あと何すんだっけ…

  • 消磁
  • キー

(14:27)

_ VoV

なんかむっちゃ速くなってるような

(14:28)

_ 用事

ルイーゼル借りた。 あと生協にマンガは置いてないみたいだった。 そうだったのかー

(15:10)

_ majide-

http://tlsb.jugem.jp/?eid=136

嬉しいのでコメントした

(15:26)

_ そうか

PS11 も 11/11 でめでたいのか

(15:35)

_ そいや libjit

書き忘れてたなあ

(15:39)

_ binary quadratic problem

(17:10)

_ 2bitで分類

http://www.loveruby.net/d/20061113.html#c02

01の人が興味深い

(18:20)

_ tar.gz

tar.gz って腐ったフォーマットってのはいいんだけど、 tar.gz から取り出したいファイルを高速に探索する、 ってのは面白い課題なような。

(19:43)

_ majide-

渋谷ブックファーストで売り切れてるそうなんですが。

http://bsoup.skr.jp/slide/?date=20061114#p01

しかしそういえば生協書籍部には普通に平積みになってた。

(22:13)

_ gzseek

なんかイマイチなものみたいだ

(22:31)

_ 表参道

で迷子になった

(23:56)

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

_ wo [どうもありがとうございます。 > 意味がわかった]

_ kik [日曜にザコンの本屋にいったときにはあったのに、今日行ったらなくなってました… 日曜にかっときゃよかった]

_ あろは [あ,僕も今意味がわかった (遅すぎ). 実は師が歳下 (一ヵ月半) だった罠… orz おめでとうございます !]

_ shinh [おおあってましたですかよかった。 何故あろはさんは僕んとこでおめでとうを言いますか。 あー献本とかあったらさしあ..]


2006-11-13

_ これって

http://d.hatena.ne.jp/w_o/20061112#p3

なんか相当に恣意的な例なような。 これ restricted つけようが何しようが 本質的にコンパイラが何しても最適化不能… じゃないのかな。

(01:36)

_ そう

なぜなら絶対に副作用があるから。

もっとキワどい例ないのかな。 malloc の方は例としてわかりやすいんだけど。

つまり、 本質的に消せるのにコンパイラには消せない ムダなコードの方が適切なんじゃないかなぁみたいな

(01:45)

_ とりあえず

プレゼンツール作りはじめたりするわけですが

(02:21)

_ 突然

http://d.hatena.ne.jp/yupo5656/20040601/p2

アホなこと思いついた。

(02:42)

_ 日程を考える会

  • 月。東大で講義。可能なら消磁
  • 火。市民講座なんて行くわけない。できてなかったら東大で消磁
  • 水。センセと会話(16:00)→アキバ。

つーわけで ukai さんと wo さんのオマケで喋ることになりました。 内容は ELF Golf のはずですが プレゼンツール作ってる有様では 何が起きるかどきどき。

  • 会話を木曜にできないのか

(03:01)

_ hello.asm

116B の綺麗なコード

BITS 32
        org     0x00000000
        db      0x7F, "ELF"     ; e_ident
        db      1,1,1,0
        dd      0,0
        dw      2               ; e_type
        dw      3               ; e_machine
        dd      1               ; e_version
        dd      _start          ; e_entry
        dd      phdr - $$       ; e_phoff
        dd      0               ; e_shoff
        dd      0               ; e_flags
        dw      52              ; e_ehsize
        dw      32              ; e_phentsize
        dw      1               ; e_phnum
        dw      0               ; e_shentsize
        dw      0               ; e_shnum
        dw      0               ; e_shstrndx
phdr:   dd      1               ; p_type
        dd      0               ; p_offset
        dd      $$              ; p_vaddr
        dd      0               ; p_paddr
        dd      filesize        ; p_filesz
        dd      filesize        ; p_memsz
        dd      7               ; p_flags
        dd      0               ; p_align
hello:  db      "Hello world!", 10
_start:
        lea     EAX, [EDI+4]    ; write = 4
        inc     EBX             ; stdout = 1
        mov     ECX, hello
        lea     EDX, [EDI+13]   ; strlen = 13
        int     0x80
        xchg    EAX, EBX        ; exit = 1
        xor     EBX, EBX        ; exit(0)
        int     0x80
filesize equ    $ - $$

(07:34)

_ 111B

BITS 32
        org     0x00000000
        db      0x7F, "ELF"     ; e_ident
        db      1,1,1,0
        dd      0,0
        dw      2               ; e_type
        dw      3               ; e_machine
        dd      1               ; e_version
        dd      _start          ; e_entry
        dd      phdr - $$       ; e_phoff
        dd      0               ; e_shoff
        dd      0               ; e_flags
        dw      52              ; e_ehsize
        dw      32              ; e_phentsize
        dw      1               ; e_phnum
        dw      0               ; e_shentsize
        dw      0               ; e_shnum
        dw      0               ; e_shstrndx
phdr:   dd      1               ; p_type
        dd      0               ; p_offset
        dd      $$              ; p_vaddr
        dd      0               ; p_paddr
        dd      filesize        ; p_filesz
        dd      filesize        ; p_memsz
        dd      7               ; p_flags
        dd      0               ; p_align
hello:  db      "Hello world!", 10
_start:
        mov     AL, 4           ; write = 4
        inc     EBX             ; stdout = 1
        mov     CL, hello
        mov     DL, 13          ; strlen = 13
        int     0x80
        xchg    EAX, EBX        ; exit = 1
        xor     EBX, EBX        ; exit(0)
        int     0x80
filesize equ    $ - $$

58B を解読してて、 16bit レジスタへの命令を忘れてた マヌケさというか x86 への愛の足りなさに ほげほげとか思いつつ

(09:12)

_ apt-get ゲーム化

apt-get というツールがあって、

apt-get install パッケージ名

でインストールするわけだけど、 このパッケージ名にカンで名前を入れて あってるとすごく嬉しい。

だからどうしたと

(19:22)

_ とりあえずスライド作った

i@u ~/wrk/binhacks> grep '!-' fsij.txt | wc
     57      57     171

これ15分で終わるの…!

(20:01)

_ 面白そう

http://www.tnlab.ice.uec.ac.jp/daihinmin/

大貧民ってどんなゲームだったか イマイチ覚えてないのが問題だ

(20:54)

_ ちがいます

e_ident は \x7f ELFHello world\n と初期化するようになってます。

うそです。本場はコードを埋めるようです…

(21:33)

_ PKU

2800 と 2403 通した。

メモリンク

http://acm.pku.edu.cn/JudgeOnline/status?result=0&user_id=shinh

http://acm.pku.edu.cn/JudgeOnline/status?result=0&user_id=tyos

差分楽に取れねえかなぁ。

(23:48)

_ PKU1298

AC

(23:58)

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

_ RoowElimi [<a href=http://www.atomic.yoyo.pl/czity-do-cs/cheaty-do-cs..]

_ Obsembelf [Zapewniamy szybki, profesjonalny i niezawodny serwis. <a h..]

_ TelmNelifAime [Zapewniamy szybki, profesjonalny i niezawodny serwis. <a h..]


2006-11-12

_ テトDS

http://www.youtube.com/watch?v=rTJhUAwD8Bo

via http://yowaken.dip.jp/tdiary/20061112.html#p02

うーんDSのはこいう回転法則なんだなぁ…

(06:03)

_ スパム

ルール変えた。

ー は入ってても日本語とは勘定しない

本文から適当にコピペとかされるともうどうしようもないなぁ

(06:17)

_ うらみーまーす

アンタのことを、死ぬまで〜

http://tinyurl.com/yh7or4

・ この曲を聞いた人数: 197

(07:42)

_ なんか

生きていてもいいですかとか わりと微妙なアルバムに思うのだけど…

http://music.hatelabo.jp/track/%E4%B8%AD%E5%B3%B6%E3%81%BF%E3%82%86%E3%81%8D/

まぁネタかなぁ

(07:49)

_ あと

06 ってバグかな。 インストゥルメンタルだと思うが

(07:51)

_ おうちで実践するのわすれてた

http://imihu.blog30.fc2.com/blog-entry-1975.html

たしか NII だけでやってたんだよな

(08:22)

_ とおもったら

http://ja.wikipedia.org/wiki/%E7%94%9F%E3%81%8D%E3%81%A6%E3%81%84%E3%81%A6%E3%82%82%E3%81%84%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B

インストゥルメンタルっていう名前の インストゥルメンタルだと思ってたら インストゥルメンタルっていう名前じゃなくて インストゥルメンタルっていう名前はなかったんだね

(08:40)

_ なくさないうちに

signbook.jpg

写真とった

(10:56)

_ AVM

http://www.dodgson.org/omo/t/

13万行かー

(11:17)

_ バカなことやる

気力があんまない

とりあえず論文やるか

(23:18)

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

_ shinh [Hi all! にほんご]

_ Gus [「幻覚で歪んだジャッカルに」とか打つと墓石が壊れます。 って使い方間違ってますか?]

_ shinh [ええ、このくらいの勢いは必要です。 http://shinh.skr.jp/koneta/rip.cgi?name=..]

_ Gus [こんなものを紹介されるとまた足利尊氏に一刀両断されたくなってしまうんですがどうすればよいでしょうか。 http://..]

_ shinh [死の杖なり麻痺の薬で倒しませう。そしてゲヘナで時間の無駄づかいをしませう]


2006-11-11

_ で、まぁ

59Bとかできちゃうんだねぇ… 文字列が壊れてるのは fall through の最中に戻すだけで どうせ末尾についてるに違いない。

よって

んー

なんか末尾に入れるとすると、 46B目から詰めはじめたとすると60Bいっちゃうじゃん。

実行時に H 作ってるんかなぁ…

(00:54)

_ pku2800

http://acm.pku.edu.cn/JudgeOnline/problem?id=2800

がさっぱり解けない。

TLE 出るならわかるが WA つーのは。

(02:45)

_ 73てんでした!

http://0xcc.net/binhacks/quiz.html

問題作らずに自分で楽しんでどうする。

INT_MIN と INT_MAX 見間違えた

それ以外はスタック増加方向と シグナル/スレッドセーフまちがえた。

(03:26)

_ perl

おぼえたいおぼえたいおぼえたい

(03:40)

_ 日本人の方がアクティブにサブミットしてるのはどうなんですかね!

i@u ~/wrk/golf> date -u
2006年 11月 10日 金曜日 19:36:45 UTC

(04:37)

_ おや

なんか登録した覚えないのに shmup-dev からメールが、 と思ったらなんか登録してたぽいなあ

(06:02)

_ むー

org 0x00200000 と org 0 では全然 p_*sz への constraint が違う。 0 だとむっちゃきびしい。 まぁ kik さんとこ見てだいたい把握した気はする。

あしたがあるさもうあしただが

(06:14)

_ perl っこ

また逃げていく

(06:30)

_ ぎゃーん

http://d.hatena.ne.jp/kikx/20061111

とりあえずうちでも動きましたよーあたりまえですが。

もうちょい自分で考えるかなぁ と思ったけど こりゃー自分で作れる気がしないにゃー というのとオーバーラップの位置考えるのがめんどいので見よかな。

うん見よう。

そこか昨日そこしかないかなぁと 思って寝たんだったけど あんだけヒントもらっちゃそらわかる感。 で、 He まで混じってるので、 こりゃすげえ。 自分でできる感じ全くしねええええええええええ

x86 つーか任意の機械語全然知らんなぁ…

(15:52)

_ 読み

クイズってそうなのか…すげーなぁ

http://d.hatena.ne.jp/y-hamigaki/20061111#1163207161

(16:02)

_ rip プラグイン

                       ----------
                      /          \
                     /    REST    \
                    /      IN      \
                   /     PEACE      \
                  /                  \
                  |      shinh       |
                  |                  |
                  |    yaruki nai    |
                  |  dakara shinda   |
                  |                  |
                  |                  |
                  |       2006       |
                 *|     *  *  *      | *
        _________)/\\_//(\/(/\)/\//\/|_)_______


Goodbye shinh the yaruki nai zeeeeee...

(16:29)

_ ソースコード

def rip(name,skill, res1, res2)
<<END
<pre>
                       ----------
                      /          \\
                     /    REST    \\
                    /      IN      \\
                   /     PEACE      \\
                  /                  \\
                  |#{name.center(18)}|
                  |                  |
                  |#{res1.center(18)}|
                  |#{res2.center(18)}|
                  |                  |
                  |                  |
                  |       2006       |
                 *|     *  *  *      | *
        _________)/\\\\_//(\\/(/\\)/\\//\\/|_)_______


Goodbye #{name} the #{skill}...
</pre>
END
end

2006 で固定つーのも僕の時はもう進まない、みたいな

(16:32)

_ \ を \ と表示する環境があるらしい

\ と \ の区別がないなんて、 そんなかわいそうな環境だったら \ 高 \ 安とかどっちも区別つかねー て感じですか。 なんてかわいそうな。

上の文章はウソです。 ぜんぶ \ です

(16:35)

_ rm -fr /home

/*(/) はそもそも削除できないようにしといたらいいんじゃ

(16:41)

_ ただいま!

いてえお!

なんか血

(21:35)

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

_ y-hamigaki [読みって言っても、MIPSやらARMを差し置いて妙なのが混じってるな、とかそういう類ですね。 正面から解くんでなく、..]

_ shinh [ええ、一応えらい前にセンターとかやってた時はそういう経験はあったんですが、的中率が非常に高いことと、出題傾向などを捕..]

_ Ozy [long longで計算したら通りましたヨ> PKU2800]

_ shinh [おや long long でだめだったのですが…と思ったら http://d.hatena.ne.jp/Ozy/co..]


2006-11-10

_ なぜ前者がダメなのか

理解するのに時間かかった。

http://gusmachine.blog49.fc2.com/blog-category-2.html

(00:49)

_ まあとりあえずは

issigned を…

(00:44)

_ 何やっても int になっちゃうよなぁ

http://ukai.org/d/index.cgi?2004-06-21

んーむ。

GCC とか C++ なら簡単なんだけど。

(01:11)

_ 本物の Perl golfer が

1st  tybalt89   56   Perl     10,000 (v2)
2nd  kinaba     67   Perl     8,358 (v11)

来たみたいですね…

(02:20)

_ 63B を考える会

なんせまずオーバーラップのしかたからしてたぶん違う。

一番短いアレは

BITS 32
        org     0
        db      0x7f, "ELF"     ; e_ident
phdr:   dd      1                               ; p_type
        dd      0                               ; p_offset
        dd      0                               ; p_vaddr
        dw      2               ; e_type        ; p_paddr
        dw      3               ; e_machine
        dd      filesize        ; e_version     ; p_filesz
        dd      filesize        ; e_entry       ; p_memsz
        dd      phdr            ; e_phoff       ; p_flags
        dd      0               ; e_shoff       ; p_align
        dd      0               ; e_flags
        dw      0               ; e_shsize
        dw      32              ; e_phentsize
        dw      1               ; e_phnum
        dw      0,0,0
filesize equ    $ - $$

これが原形。 これはすごい綺麗に重なってるけど、 e_phoff と p_flags がうまくいかんのだよね。 パーミッションがあわん

(05:18)

_ フッシギー

i@u ~/wrk/binhacks> nasm tiny.asm
i@u ~/wrk/binhacks> la tiny
-rwxr-xr-x 1 i 64 2006-11-10 05:22 tiny*
i@u ~/wrk/binhacks> ./tiny
zsh: no such file or directory: ./tiny

(05:22)

_ でまあ

これより少なくなると、 もうなんか無いんだよなぁ… e_shoff と p_type 重ねるのがどう見ても限界というか

(05:22)

_ 遠くおよばないー

i@u ~/wrk/binhacks> ./hello73
Hello world
i@u ~/wrk/binhacks> la hello73
-rwxr-xr-x 1 i 70 2006-11-10 05:47 hello73*

(05:48)

_ まだまだ

愛が足りないですね…

i@u ~/wrk/binhacks> nasm hello73.asm
i@u ~/wrk/binhacks> la hello73
-rwxr-xr-x 1 i 65 2006-11-10 07:16 hello73*
i@u ~/wrk/binhacks> ./hello73
Hello world

(07:16)

_ うーん

繰り返しになるけどそもそも現行方針は64Bが打ち止めなわけで。

  • e_phentsize < 32 がありえる
  • p_flags か e_phoff をなんかうまくごまかせる
  • e_type と p_vaddr がオーバーラップするなにか(できる感じしないけど)

(07:23)

_ ぎゃー

http://d.hatena.ne.jp/kikx/20061110#1163114535

irb(main):005:0> 52-6+14
=> 60

どこに Hello, world!\n 入ってるねん。 あとまぁ 1B ずつずらすのは考えたんですけど、 前考えた時はどこにも入らんという結論だったのと、 今回はすぐ頭が痛くなって日和ってますた…

(14:23)

_ どっか

ヘッダの意味を勘違いしてるみたいだ。 有力候補は p_offset とか p_filesz 。

図をぱくらせてもらって考えてた。 s はでかい値だとダメで上の2つは 0 じゃないとダメだったはず…

  • 1C が矛盾
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
            01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
  • 1D が矛盾
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
               01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

ここから 2B は同じくダメ。

  • 1C-20 が小さすぎ
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                        01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
  • 1C 矛盾
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                           01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

次の 1B もそう。あ、 p_offset もだめな気が。

  • p_offset がでかすぎる。
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

次の 2B もそう。

  • 10 付近が矛盾してる
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                          01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

これしばらく続く。

  • 2C 付近が矛盾
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                            01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

これもちょいと続くよ

  • p_offset がでかすぎ
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                                  01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
  • p_offset がでかすぎ
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                                  01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
  • 2A あたりが矛盾
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                                     01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

しばらく続いて、

  • 今度は 1C が矛盾
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                                                    01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

これも続いて、結局、

  • ここに
00          04          08          0C          10          14          18          1C          20          24          28          2C          30
7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** **
                                                                                                01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **

これじゃあ64Bが限界。

まぁどっかに勘違いがあるなり

(15:01)

_ とりあえず

ヘッダの値域の確認…とかする前に。

(16:32)

_ LFSって!

http://d.hatena.ne.jp/kikx/20061110#1163148475

どこが普通やねんと…!

にしてもどこで止まってるんだろう。 kernel オプションとかだとすると p_flags 以外で止まるか止まらんか差があるってのもアレだなぁ。 strace してやるとだいたいどこで止まったかは 予想がつくものですが。

うちだと

ヘッダが全部ファイルに無い
IO error
p_flagsが不適切(ちなみに4はいらなかったような3でいいというか)
SEGV
指定したファイルサイズがでかすぎたり小さかったり
killed とか SEGV とか
その他のたいてい
executable format がどうこう

とかだった気がします。 いや全然覚えてないぞ…!

なんにせよそのサイズで ヘッダに命令埋めつくしたのはすごいです…

(17:58)

_ うちでもー

76B はどこでも動くんだけど。

  • Ubuntu
i@u ~> uname -a
Linux u 2.6.17-10-generic #2 SMP Fri Oct 13 18:45:35 UTC 2006 i686 GNU/Linux

これが作業環境。

  • Debian
i@u3 ~/t> uname -a
Linux u3 2.6.7-1-386 #1 Thu Jul 8 05:08:04 EDT 2004 i686 GNU/Linux
i@u3 ~/t> la hello73
-rwxr-xr-x 1 i 65 2006-11-10 18:01 hello73*
i@u3 ~/t> ./hello73
zsh: killed     ./hello73

ぎゃー 65B のヤツが動かない。 65B のヤツは p_filesz と p_memsz に侵食してるから、 そこの制約が厳しいんだろうなぁ。

i@u3 ~/t> la ./hello72
-rwxr-xr-x 1 i 72 2006-11-10 18:00 ./hello72*
i@u3 ~/t> ./hello72
Hello world

侵食してない 72B はオッケ。

  • Fedora Core 5
i@un ~/t> uname -a
Linux un 2.6.15.4 #1 SMP Mon Feb 27 17:28:54 JST 2006 i686 i686 i386 GNU/Linux
i@un ~/t> ./hello73
Hello world
i@un ~/t> ./hello72
Hello world

どっちもオケ。しかし hello73 が 65B という罠がひどい。

  • Debian woodie

cf.sf.jp にて。

shinh@cf-x86-linux:~/t$ uname -a
Linux cf-x86-linux 2.4.29-blade #1 2005年 3月 22日 火曜日 18:17:12 JST i686 GNU/Linux
shinh@cf-x86-linux:~/t$ ./hello73
Hello world
shinh@cf-x86-linux:~/t$ ./hello72
Hello world

どっちも動く。俺の誕生日にカーネルビルドするとはやるな。

  • SuSE 9.0

cf.sf.jp

shinh@cf-amd64-linux:~/t> uname -a
Linux cf-amd64-linux 2.4.21-297-smp #1 SMP Sat Jul 23 00:45:13 UTC 2005 x86_64 x86_64 x86_64 GNU/Linux
shinh@cf-amd64-linux:~/t> ./hello72
Hello world
shinh@cf-amd64-linux:~/t> ./hello73
Hello world

Opteron のマシンらしいね

  • これなんだろ rpm あるから rpm 系

sf.net のシェルサーバ

[shinh@sc8-pr-shell1]~/t% uname -a
Linux sc8-pr-shell1.sourceforge.net 2.6.17.6 #1 SMP Sat Jul 15 16:00:03 PDT 2006 i686 i686 i386 GNU/Linux
[shinh@sc8-pr-shell1]~/t% ./hello72
Hello world
[shinh@sc8-pr-shell1]~/t% ./hello73
Hello world
  • CentOS 4.2
-bash-3.00$ uname -a
Linux shell.cf.sourceforge.net 2.6.9-42.0.2.ELsmp #1 SMP Wed Aug 23 00:17:26 CDT 2006 i686 i686 i386 GNU/Linux
-bash-3.00$ ./hello72
Hello world
-bash-3.00$ ./hello73
Hello world
  • Debian 3.1
shinh@x86-linux1:~/t$ uname -a
Linux x86-linux1 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux
shinh@x86-linux1:~/t$ ./hello72
Hello world
shinh@x86-linux1:~/t$ ./hello73
Hello world
  • Fedora Core 2
shinh@x86-linux2:~/t$ uname -a
Linux x86-linux2.cf.sourceforge.net 2.6.10-1.771_FC2smp #1 SMP Mon Mar 28 01:10:51 EST 2005 i686 i686 i386 GNU/Linux
shinh@x86-linux2:~/t$ ./hello72
Hello world
shinh@x86-linux2:~/t$ ./hello73
Hello world
  • Linux 2.6 (Fedora Core 3 on AMD64 Opteron)
shinh@amd64-linux1:~/t$ uname -a
Linux amd64-linux1.sourceforge.net 2.6.9-1.667smp #1 SMP Tue Nov 2 15:09:11 EST 2004 x86_64 x86_64 x86_64 GNU/Linux
shinh@amd64-linux1:~/t$ ./hello76
Segmentation fault
shinh@amd64-linux1:~/t$ ./hello73
Hello world
Segmentation fault
shinh@amd64-linux1:~/t$ ./hello72

72Bの方が帰ってこないよ!

  • 総評

全部どっかしらで問題出てるし。 というか 65B のヤツ_だけ_が動く64bit環境ってなにがおきてるの。

ちなみにすげーてきとうにぶっこんだファイル

http://shinh.skr.jp/t/t.tgz

(18:20)

_ とりあえず

Hello, world!\n が出る 64B を目指そうじゃないかと思った

それができないと負け犬

まぁ俺は負け犬なのでどうでもいいが

(18:38)

_ まあ

第一回くやしさまぎらわせ大会

  • Prime Factors

プギャー

1st  shinh      82   Ruby     10,000 (v32)
2nd  kinaba     83   Perl     9,879 (v16)
3rd  kik        83   Ruby     9,879 (v23)
  • Vigenere Cipher

プギャー

2nd  primo       50   Ruby     9,200 (v23)
3rd  shinh       50   Ruby     9,200 (v17)
4th  queball     51   Ruby     9,019 (v3)
5th  kik         51   Ruby     9,019 (v5)
6th  mame        51   Ruby     9,019 (v2)

とか書くと瞬時に逆転されそうで怖いのであった

(18:40)

_ XFS て

すげーなあ

(18:55)

_ でも

ということは、一定ポータブルって条件を入れたら、 64B の Hello world (!,無し) が最短になる可能性が高いんだろうか。 そのくらいの難易度の争いじゃないと 歯牙にもかからん予感…

Debian でコケてた 65B hello73 は、

i@u3 ~/t> readelf -l hello73
readelf: エラー: Unable to read in 0x4b9 bytes of section headers
readelf: エラー: Unable to read in 0x972000 bytes of section headers

Elf ファイルタイプは EXEC (実行可能ファイル) です
エントリポイント 0x20002e
1 個のプログラムヘッダ、始点オフセット 32

Program Headers:
  タイプ       オフセット 仮想Addr   物理Addr   FileSiz MemSiz  Flg Align
  LOAD           0x000000 0x00200000 0x04b90001 0x02000 0xd578d01  WE 0xeb9380cd

この MemSiz がでかすぎる模様。

というわけでぶっちゃけこんなのはすぐ調整できる つーか lea 入れかえるだけだった。

; hello65.asm

BITS 32
        org     0x00200000
        db      0x7F, "ELF"             ; e_ident
hello:
        db      "Hello world", 0xa
        dw      2                       ; e_type
        dw      3                       ; e_machine
exit:   xor     EBX, EBX                ; e_version
        int     0x80
        dd      _start                  ; e_entry
        dd      phdr - $$               ; e_phoff
phdr:   dd      1                       ; e_shoff       ; p_type
        dd      0                       ; e_flags       ; p_offset
        dd      $$                      ; e_ehsize      ; p_vaddr
                                        ; e_phentsize
        dw      1                       ; e_phnum       ; p_paddr
_start:
        mov     ECX, 0x00200004
        add     [ECX], AL
        lea     EAX, [EDI+4]
        inc     EBX
        lea     EDX, [EDI+0xd]
        int     0x80
        xchg    EBX, EAX
        jmp     exit

とりあえず今晩はこれを 64B にしよう。

(19:07)

_ くいーん

うわさどおり短い問題だ。

i@u ~/wrk/golf> ./golf.rb queen.rb
173
test 1:
SUCCESS!   0.000000   0.000000   0.016667 (  0.017802)

test 2:
SUCCESS!   0.000000   0.000000   0.016667 (  0.018432)

test 3:
SUCCESS!   0.000000   0.000000   0.033333 (  0.016652)

test 4:
SUCCESS!   0.000000   0.000000   0.033333 (  0.016837)

173

(22:58)

_ どんな最適化が

http://www.tietew.jp/cppll/archive/12796

入るんだろう

(23:33)

_ 87B

80切るようなことはあるだろうか。 無いんじゃないかなあ。

そうだとするとしばらく放置しても2位キープできる というかそんな思考になってしまった僕が、悲しい。

(23:50)

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

_ Jeucrjbg [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]


2025年
10月
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
1.Gus(2014-05-24 02:34) 2.shinh(2014-05-24 02:34) 3.kosaki(2014-05-24 02:34)
search / home / index

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

shinichiro.hamaji _at_ gmail.com / shinichiro.h