バイナリ(elf/dwarfアブソリュート付き)の意味

お世話になります HEWコンパイラの初歩的な質問なのかもしれませんが 最適化リンカの出力の バイナリ(ELF/DWARFアブソリュート付き)の意味がわかりません バイナリそのものと、(ELF/DWARFアブソリュート付き)というのと どれほど違うのでしょうか なにかリロケートのようなアドレス情報が含まれているのでしょうか? Sタイプ(ELF/DWARFアブソリュート付き)というのもあります これまでROMにそのままベタで転送して動作していましたが 上記意味がわからないので、気持ちが悪いのと 最近動作が不安定になっていまして、どうもROMの書き込みデータでは ないかと疑うようになりました E1のようなエミュレータを使用せず直接自製のツールを使用しているため このような理解は不可欠と思い投稿いたしました よろしくお願いします。
  • IKUZOさん

    むしろ、元の「ELF/DWARF」がアブソリュート付きという意味かな^^;

  • Kirin さん

    インターネットでみると

    「DWARFとは、実行ファイルや共有ライブラリの中に書き込まれている、デバッグ用の情報らしい。」

    とありましたが、実際に運用する場合にはデバッグ用の情報等はいらないと思うのですが

  • IKUZOさん

    デバック情報付きファイル(ロードモジュール)であるDWARF/ELF/COFFなどの中に、HEXデータというかバイナリコードが埋め込まれています。
    その中から、バイナリ(HEX)部分だけを抜き出して、ROMライター用のデータを作るという機能なので、
    チップに書き込み際は配置アドレスが必要になってきますから、
    リロケータブルな配置情報ではなくて、アブソリュートな配置情報だよんってことで「アブソリュート付き」って表現なんだと思います。
    まぁツールの表現的にちょっと?なところはありまけれども、昔からそうなってて、そのままなんじゃないんでしょうかね。

  • Kirin さん

    MOTファイルとかHEXファイルでは行頭にアドレス情報があり、その後データが続いています、例えば0x0000からデータが100Byteありその後0x1000から100Byteという具合に100Byte以外の部分は記述されない、ということは既知ですが、バイナリの場合はそういう指定ができないのでその隙間部分は0xFFで埋めてあることを表現して、(ELF/DWARFアブソリュート付き)となるのでしょうか、うーんそれでは特別なことはしていないということ?

  • IKUZOさん

    あまり深く考えなくていいのでは?

    ふつーのバイナリですから。

  • Kirin さん

    ありがとうございました、とりあえず深く考えないで、動作すれば良しとします、不安定の原因が他にあることもわかりましたので。