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

Process 在操作系统中(进程的)地址空间和进程控制块(PCB)是如何关联的?,process,operating-system,virtual-address-space,Process,Operating System,Virtual Address Space,如果我们谈论一个进程的地址空间,它就是虚拟地址范围,包括该进程的静态数据、堆栈和堆内存。接下来是进程控制块(PCB),它是由操作系统为其管理的每个进程维护的数据结构,其中PCB包含许多有关进程的信息,如进程编号、进程状态、程序计数器、打开文件列表、cpu调度信息……等等 这就是我困惑的地方,地址空间也是一个存储进程信息的存储器,类似的事情也是由PCB完成的。那么它们是如何相互连接的。我无法在脑海中想象这一点。为什么这两样东西同时存在仅仅使用PCB难道不可能实现我们的目标吗?进程地址空间指进程正在

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


这就是我困惑的地方,地址空间也是一个存储进程信息的存储器,类似的事情也是由PCB完成的。那么它们是如何相互连接的。我无法在脑海中想象这一点。为什么这两样东西同时存在仅仅使用PCB难道不可能实现我们的目标吗?

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