以前 首都圏の自動改札機騒動 :http://blogs.wankuma.com/ognac/archive/2007/10/13/101815.aspx
を書いたのですが、原因らしき報道が朝日の朝刊に記載されてました。
それによると、「データは 5451 件分(65518byte)を一区切りとして処理する。
これを 4byte毎に処理する。65518byteなので2byte余る。
ところが、5452件以上のデータの時は 85件増すごとに5件のの割合で、余った2byteの処理を忘れる」
これが引き金になったと掲載されていました。
意味わかります? 業界の人間にも通じにくい文章なので、一般向けにこういう記述して意味あるのか疑問で、詳しくない人が記事を書いたように感じました。それはさておき、
4byte単位のデータで 64Kbyteを一区切りとしているようなデータ構造のようです。
で最後2byteはチェックビットなどのCheckSum用と思われます。5452件目は新たな 64K領域に書かれると想像できるので、前回のBlockに継続して書かれるとは思い難いです。
継続して書かれたとして、なぜ 85件に5件余った2byteを忘れることになるのか。 チェックサム用なら2byteの処理は忘れても支障ない気もする。
領域Overrunによるメモリーリークか、境界バウンダリーに起因するものかと思うのだか、85件(4*85=300byte)に5件というのもワカラン。
いずれにしても、プロのチェックレビューがOKになったとは思えないバグのようだ。マスコミ報道なので、真実は外に在りそうな気もするが...