elf

    8

    1答えて

    私はLSB SDK(私の質問は LSBに固有のものではないことを注)使用してテストELFプログラムを構築しました: $ /opt/lsb/bin/lsbcc tst.c $ ls -l a.out -rwxr-xr-x 1 math math 10791 2009-10-13 20:13 a.out $ file a.out a.out: ELF 64-bit LSB executable

    0

    2答えて

    ELF Parserを使用して、プログラムのアドレスとデータ部分をどのように分けることができますか?

    0

    1答えて

    Cプログラムを使用してELFファイルのデータ部分を分離する方法 おかげ

    2

    1答えて

    私はカーネルイメージを2つの部分に分割するカスタムリンカースクリプトを使用しています。最初のコードとデータは通常のコードで、もう1つは初期化コードと不要になったときに破棄するデータです。初期化部分は、カーネルが正しく動作するようにアドレス空間間でも共有されないので、fork()にまだ何かがコピーされています(これは開発の初期段階です)。 は私が起動中に使用する小型のカーネルスタックを割り当てられて

    4

    3答えて

    私はELF仕様を読んできたので、プログラムエントリポイントと_startアドレスがどこから来たのか分かりません。 かなり安定した場所にいなければならないようですが、私はいくつかの簡単なプログラムを作って、_startはいつも別の場所にあります。 誰でも明示できますか?

    11

    4答えて

    UNIXではCOFF実行ファイルを、WindowsではELF実行可能ファイルを実行できますか? WindowsとUNIXのどちらのファイルタイプでも実行できる手順は何でしょうか。私はちょうど興味がある。

    1

    2答えて

    私はreadelfユーティリティーを使って実行可能ファイルをチェックします(そして、-h).e_entryフィールドの値は0x8048530です。次に、チェックされたプログラムを再コンパイルして、行:printf( "%p \ n"、(void *)main)を追加して独自のプログラムエントリを出力させ、出力する:0x80485e4。なぜ私はこの違いがありますか? (OS:Linux 32ビット)

    3

    1答えて

    アセンブリを使用して新しいELF実行可能ファイルを作成することはできますか?私は、 '空の'実行可能ファイルを作成し、後にそのコードセクションを埋める必要があります。

    13

    3答えて

    私はARM Cortex-M3ベースのマイクロコントローラ(Thumb 2命令セット)用のアセンブリプログラムとしてGNU asを使用しています。 いくつかのコード例では、.size、.section、.typeのような指令がELF指令であるとわかります。例として: - 通常のいずれかの%オブジェクト(?データを意味する)または%関数へ .section .text.Reset_Handler

    1

    1答えて

    私はCodeSourceryのARMクロスツールチェーンで--dynamic-linkerオプションを動作させようとしています。しかし、gccはそれを無視してしまい、共有ライブラリのELFにインタープリタセグメントを追加することはありません。私はこの仕事をするために何が欠けていますか?