(进程的)地址空间和进程控制块(PCB)在操作系统中如何关联?

时间:2019-04-11 18:11:42

标签: process operating-system virtual-address-space

如果我们谈论进程的地址空间,那是虚拟地址范围,其中包括该特定进程的静态数据,堆栈和堆内存。进入过程控制块(PCB),这是操作系统为它管理的每个过程维护的数据结构,其中PCB包含许多有关过程的信息,例如过程编号,过程状态,程序计数器,打开文件列表,CPU调度信息等。

现在这是令我感到困惑的地方,地址空间也是一个存储有关过程信息的内存,类似的事情也由PCB完成。然后如何将它们彼此连接。我在脑海中无法想象这一点。为什么我们同时存在这两件事。 仅使用PCB是否有可能实现我们的目标?

1 个答案:

答案 0 :(得分:0)

进程地址空间是指进程正在使用的内存区域。它通常由堆,堆栈,初始化的数据,未初始化的数据和文本组成。一个进程主要有两个地址空间-逻辑和物理。 PCB是驻留在内核中以跟踪过程状态的结构。 PCB包含的内容之一是内存信息。在典型的系统中,PCB可能包含有关该过程所具有页面的信息。 为了回答您的问题,工艺地址空间是建立在PCB和许多其他东西(例如页表)之上的想法。