读书笔记---c专家编程(第六章)
来源:互联网 发布:薪酬优化 劳务外包 编辑:程序博客网 时间:2024/04/28 13:15
1.在unix中,段(segments)表示一个二进制文件相关的内容块,section是ELF文件中的最小组织单位,一个段一般含有几个section。
2.size+可执行文件:查看文件的各个段(文本段,数据段,bss段)
3.bss段与数据段的区别在于前者为未初始化的全局或者静态变量,后者为已初始化的。
4.文本段:字符串常量,可执行代码(在main函数中的):char a【100】 = “123”;和const a【100】 = “123”;表示字符串常量,存在test中。
5.链接器:把指令直接从文件拷贝到内存中(一般用mmap()系统调用)。
6.映射:虚拟地址==》物理地址。
7. 堆栈段:在程序运行时,系统维护一个指针(常位于寄存器中),通常为sp,用于提示堆栈当前的顶部位子。一个是fp指针,它的值是最靠近堆栈顶部的过程活动记录的地址。
堆栈中的过程活动记录:当每个函数被调用时,都会产生一个过程活动记录,它是一种数据结构,用于支持过程调用,并记录调用结束以后返回调用点所需要的全部信息。/usr/include/sys/farame.h 中描述了活动记录的结构
8。函数调用时参数压栈的顺序从右向左,而函数的嵌套或者递归调用时,后一个调用的函数都会显示在堆栈的下面。单个或者多个函数调用都在堆栈段所开辟的内存中进行。
9。注意:不能从函数中返回一个指向该函数局部变量的指针(悬垂指针),因为函数结束后,局部变量被回收了。
10.所谓的多线程就是为每个线程分配不同的堆栈。
11.段错误与页错误:访问了不该访问的地址。(硬件中断)
0 0
- 读书笔记---c专家编程(第六章)
- 读书笔记----c专家编程(第七章)
- 读《C专家编程》笔记-第六章
- 【读书笔记】c专家编程
- 《C专家编程》读书笔记
- 《C专家编程》读书笔记
- C专家编程 读书笔记
- 《C专家编程》读书笔记
- C专家编程读书笔记
- <C专家编程>读书笔记
- 《C专家编程》读书笔记
- 读书笔记-《C专家编程》
- [读书笔记]C专家编程
- 《C专家编程》读书笔记
- 《C专家编程》读书笔记
- C专家编程读书笔记
- 《C专家编程》读书笔记:1~3章
- C专家编程-读书笔记之第三章
- 第一篇博客
- 用 Ganglia 监控hadoop集群
- jQuery Mousewheel 基本使用
- 持续近40年的战争 X86系列CPU大史记
- 题目1140:八皇后
- 读书笔记---c专家编程(第六章)
- 佛山居住证办理(首次)
- Ajax请求返回400 bad request错误
- 饮料供货问题
- modem/router cracking
- 『黑马程序员』---java--探讨共进--书本笔记改善--思维导图
- 【快速乘】【乘】【乘!!!!】
- linux环境下C编程(二)
- linux环境下C编程(三)