私は Mach-o ファイルがどのように機能するかを理解しようとしており、利用可能なオンライン リソースでかなりの進歩を遂げています (特に、ここの Apple ページ: http://developer.apple.com/library/mac/#documentation ) /developertools/conceptual/MachORuntime/Reference/reference.html ) ですが、シンボル スタブがどのように機能するかを理解する上で障害にぶつかりました。
「otool -l」を使用すると、次のセクションが表示されます。
Section
sectname __symbolstub1
segname __TEXT
addr 0x00005fc0
size 0x00000040
offset 20416
align 2^2 (4)
reloff 0
nreloc 0
flags 0x80000408
しかし、16 進エディタでバイナリ ファイルのデータを見ると、次の 4 バイトが何度も繰り返されていることがわかります。
00005FC0 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 88
00005FD0 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 88
00005FE0 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 88
00005FF0 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 38 F0 9F E5 88
これは、PC を一定量だけ増加させる LDR のように見えますが、シンボル テーブルの各エントリの量が同じである理由がわかりません。
誰かがなぜそうなのかを明らかにしたり、この低レベルになるリソースを提供したりできる場合は、私に知らせてください.
ありがとう!