程序、線程、進程

01. 程序(programm)
概念:是爲完成特定任務、用某種語言編寫的一組指令的集合。即指一段靜態的代碼。
 
02. 進程(process)
概念:程序的一次執行過程,或是正在運行的一個程序
說明:進程作爲資源分配的單位,系統在運行時會爲每個進程分配不同的內存區域
 
03. 線程(thread)
概念:進程可進一步細化爲線程,是一個程序內部的一條執行路徑。
說明:線程作爲調度和執行的單位,每個線程擁獨立的運行棧和程序計數器(pc),線程切換的開銷小。
 
補充:
內存結構:
進程可以細化爲多個線程。
每個線程,擁有自己獨立的:棧、程序計數器
多個線程,共享同一個進程中的結構:方法區、堆。
 
 
線程和進程:
    與進程相比,線程更加“輕量級”,創建、撤銷一個線程比啓動、撤銷一個進程開銷要小。一個進程中的所有線程共享此進程的所有資源;
    沒有進程就沒有線程,進程一旦終止,其內的線程也將不復存在;
    進程是操作系統資源調度的基本單位,進程可以獨享資源。線程需要依託進程提供的資源,無法獨立申請操作系統資源,是OS任務執行的基本單位。
 
 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章