memo/20100201
created 2010-02-01 modified 2010-02-11
自分のプロセスと連接する別の担当者のプロセスがcoreダンプする件で、
当の担当者が解析に及び腰なので自分が調査していたりする。
で、今、月曜の朝4時だけど解決策思いついたかも。
多分これでいける。
→追記:ハズレでした。むぅ
いろんな装飾やルールに惑わされず、基本からしっかり考えていくことが
本当に重要だと思う。
例えば林業に従事していて、チェーンソーで自分の足を切り落とすひとなんていやしない。
もう少し別のたとえ方をすると、ビルを壊す職業のひとが、60階の部屋から1階の爆弾を起動したりはしない。それなのに、
プログラマーという人種は、どうしてこうも自分の足を切ろうとしたり、1階を爆破しようとしてしまうのだろう。
ある組み込み開発の技術書に、「main()の前、printf()の先」という一節がある。
いわく、C言語プログラムのもっとも初歩として、"hello, world" を表示するだけのプロセスをコンパイルして動かす、というのが御大の教科書からの伝統だが、
組み込み技術者なら main() の前(+後)、printf() の中身を考えてみたら?
という話。鋭い指摘です。mainの前後っていうと普通 crt0.c ってやつですな。組み込み系なら独自とか固有とかいっぱいでしょう。
それを組めたり、組まなくても推測したうえでその上にアプリを乗せるのが優秀な技術者、なのでしょう。
冒頭の、今回のウチのチームの問題は、自分の処理がreturnした後に基盤ライブラリの中でSEGVでcoreダンプする現象であります。
でもそれでアプリチームが悪くないかっていうと、話は別。多分アプリでライブラリの呼び方が悪い、というオチな気がする。
main()の前後なんて、一般のプログラマが触るところじゃないと思ってしまいがちですが、メインループの前後、と置き換えれば、そんなにありえない話じゃないです。
そんなことをひらめいた朝でございます。
上の話とまったく関係ないが、
「開発するときのメモ」
と
「ときメモの開発する」
は
コトバがちょっと似てますな。
いろんな意味で脳がやられてます。