the_ELF_object_file_format_by_dissection(002)

the_ELF_object_file_format_by_dissection(002)

ID:39990416

大小:108.42 KB

页数:10页

时间:2019-07-16

the_ELF_object_file_format_by_dissection(002)_第1页
the_ELF_object_file_format_by_dissection(002)_第2页
the_ELF_object_file_format_by_dissection(002)_第3页
the_ELF_object_file_format_by_dissection(002)_第4页
the_ELF_object_file_format_by_dissection(002)_第5页
资源描述:

《the_ELF_object_file_format_by_dissection(002)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、TheELFObjectFileFormatbyDissectionMay01,1995ByEricYoungdaleTheExecutableandLinkingFormathasbeenapopulartopiclately,aspeopleaskwhythekernelconfigurationscriptaskswhetherornottoconfigureloadingELFexecutables.SinceELFwilleventuallybethecommonobjectfileformatforLinuxbinaries,itisappropriatet

2、odocumentitabit.Lastmonth,EricintroducedustoELF,andthismonth,hegivesusaguidedtourofrealELFfiles.Lastmonth,wereachedapointwherewerebeginningtodissectsomerealELFfiles.Forthis,IwillusethereadelfutilitywhichIwrotewhenIwasfirsttryingtounderstandtheELFformatitself.Lateron,itbecameavaluabletool

3、fordebuggingthelinkerasIaddedsupportforELF.Thesourcestoreadelfshouldbeontsx-11.mit.eduinpub/linux/packages/GCC/srcorinpub/linux/BETA/ibcs2.Letusstartwithaverysimpleprogram—thehelloworldprogramweusedlastmonth.largo%cathello.cmain(){printf("HelloWorld");}largo%gcc-elf-chello.cOnmylaptop,

4、thegcc-elfcommandinvokestheELFversionofgcc—onceELFbecomesthedefaultformat,youwillbeabletousetheregulargcccommandwhichproducestheELFfilehello.o.EachELFfilestartswithaheader(structelfhdrin/usr/include/linux/elf.h),andthereadelfutilitycandisplaythecontentsofallofthefields:largo%readelf-hhel

5、lo.oELFmagic:7f454c46010101000000000000000000Type,machine,version=131Entry,phoff,shoff,flags=004400ehsize,phentsize,phnum=5200shentsize,shnum,shstrndx=40118TheELFmagicfieldisjustawayofunambiguouslyidentifyingthisasanELFfile.Ifafiledoesnotcontainthose16bytesinthemagicfield,itisnotanELFfil

6、e.Thetype,machine,andversionfieldsidentifythisasanET_RELfile(i.e.,anobjectfile)forthei386.Theehsizefieldisjustthesizeof(structelfhdr).EachELFfilecontainsatablethatdescribesthesectionswithinthefile.Theshnumfieldindicatesthatthereare11sections;theshofffieldindicatesthatthesectionheadertabl

7、estartsatbyteoffset440withinthefile.Theshentsizefieldindicatesthattheentryforeachsectionis40byteslong.AllthroughoutELF,thesizesofvariousstructuresarealwaysexplicitlystated.Thisallowsforflexibility;thestructurescanbeexpandedasrequiredforsomehardwareplatformsandthestandardE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。