進程與線程,進程與程序之間的區別

進程跟線程的區別:

1.進程是操作系統分配資源的基本單位,而線程則是共享所屬進程的所有資源。

2.進程的創建耗費資源比進程要多,線程的TCB的信息要比PCB要多。

3.進程的切換速度要比線程快。

線程的概念是爲了彌補進程的不足而產生的,通常一個進程需要同時處理多個任務,這時候系統可以同時fork多個進程來處理這些任務,但是進程的創建比較消耗資源,而且這會加重操作系統的負擔,影響操作系統的健壯性。採用多線程來代替多進程可以提高程序的響應度,一是因爲線程的切換速度比進程快,二是線程的阻塞不會引起進程的停止,這樣會增強程序的健壯性。一個進程裏的所有線程共享進程的資源,這樣便於操作系統的資源分配,提高了資源的利用率。多線程的設計有利於多核程序的執行。


進程跟程序的區別:

1.程序儲存在磁盤上的,是靜態的,進程是是動態的,他是指程序在一個數據集合上的一次動態執行。

2.一個程序可以對應多個進程。數據可以不同,指令集合相同。

3.進程有生命週期,進程有併發性,和交互性。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章