2008年8月28日

韓国に行ってきた

先週、仕事で韓国に行ってきた。

3日間の日程だったが、ずっと仕事で、自由な時間があるわけでもなく
日本との違いは食べ物だけだったんだけど

食事は現地の人にちゃんと連れて行ってもらったのでどこもとてもおいしかった。

タイ料理を好んで食べる私としては、韓国料理といっても特に辛いわけではなく
酒も特に弱くないので、焼酎もそれなりに問題なく・・・
相手をしてくれた韓国の人には、あまりおもしろくなかったかもしれない。

普通の日本人は、青唐辛子を食べさせると悲鳴を上げてのたうち回るらしいが
私は結構平気だったので、韓国の人にびっくりされてしまった。

タイ料理はやはりすごいんだと再認識した。

さて、次の出張はどこかな、また、エスニックなところがいいなぁ。
って、何しにいってるんだか。

2008年8月 4日

249日って・・・

NTTひかり電話126万台、249日使用で発着不能に - 社会

249日ってなんだろうと考えて、秒に直して100倍してみたら
16進数で 80000000 、つまり、32ビットの符号付き整数の最大値よりちょっと大きい値になった

これって、Linuxの内部で使用されていいるjiffiesの値だろう。
(BSDでも100分の1秒カウンターって使われているのかな??)
jiffiesは約100分の1秒ごとに1増えていくカウンターで、
内部時計なんかを更新するために使われている。


普通にjiffiesを使うと、32bit符号なし整数になるはずなんだが、
それを間違って符号付きで宣言して使ったか、
それとも平均でも取ろうとして足し算しちゃったか、
してオーバーフローさせたんだろうな

符号なしでも、499日で一周するから、多分同じことになったんだけど・・・

今のリナックスでは、64ビット符号なし整数のjiffies64と
同じアドレスを指すというトリッキーなやり方で、64ビット拡張が行われている。
64ビットの値を使ってれば、こんなこと無かったのに・・・

プログラマとしてはレベルが低い。
こういう時間がたたないと出てこないバグって、テストでは見つからないので
一番気をつけないといけないところなんだよね。

この手のカウンターを使うときは一周することは十分承知して使わないといけない。

と、自戒も込めて書いておこう。