面試問題之操作系統:進程與線程的區別


進程與線程的區別:

  1、進程是資源分配的最小單位,線程是CPU調度的最小單位。

  2、線程依賴於進程而存在,一個線程只能屬於一個進程,一個進程可以有一個線程或者多個線程。

  3、進程在執行過程中擁有獨立的內存單元,而多個線程共享進程的內存。(資源分配給進程,同一進程的所有線程共享該進程的所有資源。同一進程中的多個線程共享代碼段(代碼和常量)、數據段(全局變量和靜態變量)、擴展段(堆存儲)。但是每個線程擁有自己的棧段,棧段又叫運行時段,用來存放所有局部變量和臨時變量)

  4、進程編程調試簡單可靠性高,但是創建銷毀開銷大;線程正相反,開銷小,切換速度快,但是編程調試相對復雜。

  5、進程間不會相互影響;而一個線程掛掉將導致整個進程掛掉。

  6、進程適應於多核、多機分布;線程適用於多核

  


免責聲明!

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



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