1

外部ではなく、モジュール内で定義される非静的グローバル変数を意味します。

GOT を介して参照する必要があるのはなぜですか? 相対アドレスを使用しないのはなぜですか? (.data セクションのグローバル変数と .text セクションの参照の間の距離は一定であるため、これも位置に依存しません)

4

2 に答える 2

1

変数は ではないためstatic、ELF では挿入できます (LD_PRELOAD を考えてください)。

于 2011-02-01T20:00:42.547 に答える
0

私も同じように混乱しています。2 つの DSO の両方で定義された同じ名前の 1 つのグローバル変数があり、それらが 1 つの実行可能ファイルに動的にリンクされている場合、両方のライブラリが変数の同じコピーにアクセスしますか? そして、変数がどのライブラリ(ライブラリのデータセクション)を見つけるかは、ライブラリのロード順序によって異なりますか?

于 2011-03-01T01:38:31.400 に答える