操作系统真相还原第五章-----ELF文件格式

首先是要认识一下ELF文件的定义变量所占的空间。
在这里插入图片描述
1文件头
文件头采用了一个结构体的定义方式。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.segment与section的区别
在汇编语言中的段,不论编号是segment还是section,都是ELF文件里的节。在ELF文件中,把具有相同属性的节放在一起,形成了程序头表,当他们被加载到内存时,就是变成了段描述符所对应得代码段数据段。
在按照书中实际历程时,在UBuntu16.04下ld链接发生错误:ld: i386 架构于输入文件 1.o与 i386:x86-64 输出不兼容
查明原因为:32位余64位程序不符
解决方法:nasm -f elf32 one.asm -o 1.o
nasm -f elf32 2.asm -o 2.o
ld -m elf_i386 1.o 2.o -o 12

使用readelf -e ./12读取elf文件头:
在这里插入图片描述
在这里插入图片描述

发布了24 篇原创文章 · 获赞 3 · 访问量 930

猜你喜欢

转载自blog.csdn.net/HIT_zhanmusi/article/details/103150895
今日推荐