作業與進程的關系


轉自:https://blog.csdn.net/astx1596321/article/details/81188422

https://blog.csdn.net/u010585135/article/details/44515843

1.作業與進程

作業是用戶提交給系統的一個任務,在用戶向計算機提交作業后,系統將它放入外存中的作業等待隊列中等待執行。而進程則是完成用戶任務的執行實體,是向系統申請分配資源的基本單位。任一進程,只要它被創建,總有相應的部分存在於內存中。

  • 一個作業通常包括幾個進程,幾個進程共同完成一個任務,且必須至少由一個進程組成。
  • 用戶提交作業以后,當作業被調度,系統會為作業創建進程,一個進程無法完成時,系統會為這個進程創建子進程。
  • 作業與進程最主要的區別是:前者是由用戶提交,后者是由系統自動生成;前者以用戶任務為單位,后者是操作系統控制的單位。

 

1.1 作業、進程、程序

 一個作業通常包括程序、數據和操作說明書3部分。

每一個進程由PCB、程序和數據集合組成。這說明程序是進程的一部分,是進程的實體。

因此,一個作業可划分為若干個進程來完成,而每一個進程有其實體————程序和數據集合。

作業舉例:一個批處理就是一個作業。管道連接在一起的命令也是一個作業。test.sh中包含分支、循環等,這個作業具體執行的時候,可能會生成一個進程(比如ls),或者多個進程(比如:who | cut -c 1-8 | sort | uniq -c)。 

2.舉例

在windows系統中查看作業:at命令

一個作業可能包含多個進程。 使用tasklist查看進程:

3.作業管理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM