LINUX C—程序和进程的数据结构区别

LINUX C—程序和进程的数据结构区别

#程序

程序又叫做可执行程序,以.exe结尾,程序员通过编译 链接形成 其实流程为.c .o .exe,程序主要可以分为三个区 BSS(0段)RO(只读)WR(可读可写 ),其中BSS放未定义的变量,RO放 代码段,常量(const) char *str=“ok”,WR放定义的静态变量和全局变量

进程

在程序执行后,多形成 堆区 栈区 共享内存 其中 堆区放指针 new malloc 栈区放一些局部的变量 其他的和程序一样

在这里插入图片描述
linux下的可执行文件 用file查看
在这里插入图片描述
用 objdump -h 查看这个进程的文件
在这里插入图片描述
可以看到分区明显

猜你喜欢

转载自blog.csdn.net/z15005953031/article/details/113828342