什么是Linux进程表? 它是由什么组成的?

这个术语不断出现在我的操作系统笔记中,我不完全确定它是什么/它在哪里存储以及如何或为什么。

Solutions Collecting From Web of "什么是Linux进程表? 它是由什么组成的?"

Linux中的进程表(例如几乎所有其他操作系统)都只是计算机RAM中的数据结构。 它保存有关当前由OS处理的进程的信息。

这些信息包括每个进程的一般信息

  • 进程ID
  • 进程所有者
  • 进程优先级
  • 每个进程的环境变量
  • 父进程
  • 指向进程的可执行机器代码的指针。

进程表中非常重要的信息是每个进程当前所处的状态。 这些信息对操作系统来说是必不可少的,因为它可以实现所谓的多处理,也就是说只有一个处理单元(CPU)可以虚拟运行多个进程。

操作系统使用进程当前处于活动状态,休眠状态,运行状态等信息来处理进程的执行。

此外还有一些统计信息,例如上次运行的进程是什么时候,以使OS的调度程序能够决定下一次应该运行哪个进程。

所以总之,进程表是操作系统处理所有启动进程的中心组织元素。

一个简短的介绍可以在这个线程中找到:

http://www.linuxforums.org/forum/kernel/42062-use-process-table.html

而维基百科也有关于进程的很好的信息:

http://en.wikipedia.org/wiki/Process_management_(computing)#Process_description_and_control

http://en.wikipedia.org/wiki/Process_table

进程表是Linux内核中的一种数据结构,它存储有关当前正在运行的进程的信息。 进程表包含进程ID,进程的内存使用情况,进程中使用的文件描述符,等等。

内核使用进程描述符跟踪已创建和正在运行的进程。 每个进程描述符包含,

1. Identifier - process ID, parent and child process ID, user ID 2. State - process state, priority 3. Resource - CUP and Memory 

进程表主要信息是,

  • 进程ID
  • 处理用户ID
  • 进程优先级
  • 进程状态
  • 处理资源使用情况

ps aux是一个用于列出所有进程状态和资源使用情况(内存,CPU)的Linux命令。 您可以看到所有者,PID,CPU,MEM,STAT等进程列表。