0

むしろ奇妙なことに、hpux unwind API _UNW_STACK_TRACEはファイル記述子を取りませんが、代わりに。を取りますFILE*。新しいAPIuwx_stack_traceも。を取りますFILE*

これらの両方がバッファリングされたIOを使用し、(シグナルセーフIOインターフェイス)//をopen使用しない場合writecloseこれらはどちらもシグナルハンドラー(最も明白な場所の1つ)で安全に使用できません。

私たちの(おそらく今は死んでいる)ia64プラットフォームの1つで、かつては独自のアンワインド実装がありましたが、維持するのは野獣であり、不安定だったので、そのルートを再び下りたくありません。HPUXスタックアンワインドの他のオプションはありますか?

4

1 に答える 1

0

stackwalk イテレータ インターフェイスの詳細が記載されたhpux のドキュメントを見つけました。残念なことに、やや信じがたいことに、これをデバッガーで試してみると、シグナル コンテキストでも壊れていることがわかります (uwx_initを呼び出しますmalloc!)。

于 2012-06-29T03:28:22.540 に答える