首頁 > 常見問題 > 主體

程序和進程的差別是什麼?

青灯夜游
發布: 2021-01-20 18:36:25
原創
22147 人瀏覽過

區別:程式只是一組指令的有序集合,它本身沒有任何運行的意義,它只是一個靜態的實體。而進程則不同,它是程式在某個資料集上的執行。進程是一個動態的實體,它有自己的生命週期。進程具有並發性和交往性,這與程序的封閉性不同。

程序和進程的差別是什麼?

本文操作環境:Windows7系統,Dell G3電腦。

相關推薦:《程式設計學習網站

程式

電腦程式是一組電腦能辨識和執行的指令,運行於電子計算機上,滿足人們某種需求的資訊化工具。

它以某些程式設計語言編寫,運行於某種目標結構體系上。打個比方,程式就如同以英文(程式設計語言)寫作的文章,要讓一個懂得英文的人(編譯器)同時也會閱讀這篇文章的人(結構體系)來閱讀、理解、標記這篇文章。一般的,以英語文本為基礎的電腦程式要經過編譯、連結而成為人難以解讀,但可輕易被電腦所解讀的數字格式,然後放入運作。

程式是一個指令序列。

行程

行程(Process)是電腦中的程式關於某資料集合上的一次執行活動,是系統進行資源分配與排程的基本單位,是作業系統結構的基礎。在早期面向進程設計的電腦結構中,進程是程式的基本執行實體;在當代面向執行緒設計的電腦結構中,進程是執行緒的容器。程序是指令、資料及其組織形式的描述,流程是程式的實體。

程式和進程的區別和聯繫

1)、程式只是一組指令的有序集合,它本身沒有任何運行的含義,它只是一個靜態的實體。而進程則不同,它是程式在某個資料集上的執行。進程是一個動態的實體,它有自己的生命週期。它因創建而產生,因調度而運行,因等待資源或事件而被處於等待狀態,因完成任務而被撤消。進程反映了一個程式在一定的資料集上運行的全部動態過程。

2)、進程和程式並不是一一對應的,一個程式執行在不同的資料集上就成為不同的進程,可以用進程控制塊來唯一地識別每個進程。而這一點正是程序無法做到的,由於程序沒有和數據產生直接的聯繫,既使是執行不同的數據的程序,他們的指令的集合依然是一樣的,所以無法唯一地標識出這些運行於不同資料集上的程式。一般來說,一個進程肯定有一個與之對應的程序,而且只有一個。而一個程式有可能沒有與之對應的進程(因為它沒有執行),也有可能有多個進程與之對應(運行在幾個不同的資料集上)。

3)、進程也具有並發性和交往性,這也與程式的封閉性不同。

想要查閱更多相關文章,請造訪PHP中文網! !

以上是程序和進程的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板