编译链接--读书笔记1
来源:互联网 发布:软件企业投标资质 编辑:程序博客网 时间:2024/05/21 19:26
1、代码段:.text(指令)(局部变量)
数据段:.data和.bss(全局变量和静态局部变量和静态全局变量)
main函数运行起来后,局部变量在栈上
.data:初始化了的
.bss:未初始化和初始化为0
2、better save space 节省的是文件的空间
3、链接:(1)合并所有obj文件的段,并调整段偏移和段长度,合并符号表,进行符号解析(所有obj符号表中对符号引用的地方都要找到该符号定义的地方),分配内存地址
(2)链接的核心:符号重定位:符号定义与虚拟地址联系。
4、强符号:只要初始化了的
弱符号:未初始化的
5、程序的运行:(1)创建虚拟地址空间到物理内存的映射(创建内核地址映射结构体),创建页目录和页表
(2)加载代码段和 数据段
(3)把可执行 文件的入口地址写到CPU的PC寄存器里面。
6、磁盘上的DP页是通过mmap映射到虚拟地址空间的VP页
虚拟地址空间上的虚拟页是通过多级页表映射到物理页面
阅读全文
0 0
- 编译链接--读书笔记1
- 读书笔记----编译与链接
- 编译和链接读书笔记
- [Mo]程序员的自我修养-链接、装载与库读书笔记【1】-gcc编译、链接
- 《程序的编译,链接,运行》读书笔记
- 程序员的自我修养读书笔记——编译与链接
- 程序员的自我修养读书笔记-编译和链接
- 《程序员的自我修养》读书笔记-编译链接过程
- 读书笔记_深入理解计算机系统_第1章_计算机系统漫游 (代码编译链接详细过程)
- 【读书笔记】程序员的自我修养:链接、装载与库 第二章 编译与链接
- C++编译与链接(1)-编译与链接过程
- 编译、链接
- 编译链接
- 编译链接
- 编译链接
- 编译&链接
- 编译链接
- 编译链接
- C\C++程序员面试总结
- 洛谷p1918保龄球
- springMVC之ModelAttribute
- BZOJ2878: [Noi2012]迷失游乐园
- 程序员成长历程的四个阶段
- 编译链接--读书笔记1
- ovs和连接控制器floodlight
- Virtualization-Cpu/Memory/IO虚拟化详解
- 文件的inode数据
- 面向对象笔记2 原型链 解释
- Mongodb 利用mongoshell进行数据类型转换
- github Pages + Hexo搭建个人博客(二) 提升篇
- php处理emoji
- 【Linux学习笔记】13:压缩和解压缩命令(有关.tar.gz .tar.bz2)