c程序之内存结构图.pdfVIP

  • 12
  • 0
  • 约 3页
  • 2017-06-15 发布于河南
  • 举报
c程序之内存结构图

c程序之内存结构图 作者:朱有鹏 1、linux下C程序的内存映像 1.1、代码段、rodata段 (只读数据段) (1)对应程序中的代码 (函数),代码段在linux 中又叫文本段(.text) (2)Rodata段用常常用于存储常量数据,rodata又被称为只读段,只读数据段 在程序运行期间只能读不能写,比如const修饰的常量有可能就存储在rodata 段,但是const常量的实现方法在不同平台是不一样的。 1.2、数据段、bss段 (1)data段存:1)、被初始化为非0的全局变量;2)、被初始化为非0的static 局部变量 (2)bss段存:1)、未被初始化的的全局变量;2)、未被初始化的static修 饰的局部变量。 1.3、堆 C语言中什么样变量存在堆内存中?C语言不会自动操作堆内存空间,堆的 操作由程序员自己手工完成。使用的过程中程序员自己根据需求判断要不要使用 堆内存,需要时使用malloc进行申请空间,使用完成之后,必须代用free方法 释放空间,否者就会造成内存泄露。 1.4、文件映射区 文件映射区就是进程打开了文件后,将这个文件的内容从硬盘读到进程的文 件映射区,以后就直接在内存中操作这个文件,读写完了后在保存时再

文档评论(0)

1亿VIP精品文档

相关文档