全站数据
8 4 2 0 5 8 1

进程控制块,数据段,程序段各自在内存的什么地方

古建筑设计 | 简单学习,快乐成才!         
问题更新日期:2024-10-16 03:56:29

问题描述

进程控制块,数据段,程序段各自在内存的什么地方求高手给解答
精选答案
最佳答案

进程控制块(PCB)在系统内存中,可以和其他进程同步执行

数据段存在静态内存,用于保存程序已经初始化的变量

代码段紧接着数据段,也在静态内存中

另外还有保存局部变量的栈和保存动态分配空间的堆

在内存中它们如下关系:

========高地址 =======

程序栈堆栈段

向下增长

空内存

向上增长

堆

------数据段

BSS

------

非零数据

========= =======

代码 代码段

========= =======

=========低地址 =======

栈(存放着局部变量和函数参数等数据),向下生长 (可读可写可执行)

堆(给动态分配内存是使用),向上生长(可读可写可执行)

数据段(保存全局数据和静态数据) (可读可写不可执行)

代码段(保存代码) (可读可执行不可写)