名前: 土屋 日時: 2005-07-29 01:22:03 IPアドレス: 133.15.64.*
>>37057 SPARC のマシンはバスが 32bit 幅になっていて,アドレスも4の倍数で指定す るように制限されています.それで,4の倍数以外のアドレスでアクセスしよ うとすると bus error が発生します. ;; 最近の 64bit 化された SPARC は事情が異なると思いますが. 通常は,C コンパイラが適当に padding して調整してくれるため問題は発生 しないのですが, ・アドレス計算のバグ ・文字列処理のバグ ・バッファオーバーランによるポインタの破壊 ・コンパイラ自体のバグ などの理由により bus error が発生します. 最後の理由の場合は,コンパイラを変更する(gcc のバージョン変更や,Sun 純正のコンパイラを使う,など)か,最適化オプションを指定しないようにし てみると,症状が改善される可能性があります. それで駄目なら,とりあえず core を出力させてみて,デバッガで何処で落ち ているのか調査するべきだと思います. ;; Solaris を主に触っていたのは5年前までなので,記憶に頼って書いていま ;; す.間違いがあったら済みません.
この書き込みへの返事: