2011-02-02 23 views

回答

38

Linux中的進程表(例如幾乎所有其他操作系統)只是計算機RAM中的數據結構。它保存有關當前由OS處理的進程的信息。

此信息包括關於每個過程

  • 進程id
  • 過程所有者
  • 過程優先
  • 對於每個過程
  • 父進程的環境變量
  • 指針中的一般信息一個進程的可執行機器代碼。

進程表中非常重要的信息是每個進程當前所處的狀態。該信息對於操作系統是必不可少的,因爲它實現了所謂的多處理,即可以僅在一個處理單元(CPU)上虛擬運行多個進程。

操作系統爲了處理進程的執行而使用的進程當前是否處於活動,休眠,運行等信息。

此外還有一些統計信息,例如最後一次運行的進程是什麼時候,以便OS的schedulr決定下一次應該運行哪個進程。

因此總之,進程表是操作系統處理所有啓動進程的中心組織元素。

的簡短介紹可以在這個線程中找到:

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

和Wikipedia還具有關於處理好的信息:

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

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

0

流程表是一個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等進程列表。

0

進程表是一個內核數據結構,它描述進程的狀態(與進程U Area一起)。它包含必須始終可用於內核的字段。

它包含下列字段:

  • 狀態字段(標識過程的狀態)
  • 字段,允許內核定位過程和在存儲器中它的u區
  • 的UID用於確定各個進程權限
  • PID指定關係b/w進程(例如叉)
  • 事件描述符(當進程處於睡眠狀態時)
  • 調度參數,以確定在其中處理移動到狀態「內核運行」命令和「用戶跑步」用於信號
  • 信號字段發送到所述過程,但尚未處理
  • 定時器,給處理執行時間在內核模式和用戶模式
  • 領域,讓工藝尺寸(以便內核知道多少空間分配的過程)。

簡言之,過程表提供了有關過程的內核的信息。

相關問題