進(jìn)程和線程區(qū)別
匯集很多博客于一體的,大概就這些
1.調(diào)度
在傳統(tǒng)的操作系統(tǒng)中,擁有資源的基本單位和獨(dú)立調(diào)度、分派的基本單位都是進(jìn)程。而在引入線程的操作系統(tǒng)中,則把線程作為調(diào)度和分派的基本單位。而把進(jìn)程作 為資源擁有的基本單位,使傳統(tǒng)進(jìn)程的兩個(gè)屬性分開(kāi),線程便能輕裝運(yùn)行,從而可顯著地提高系統(tǒng)的并發(fā)程度。
在同一進(jìn)程中,線程的切換不會(huì)引起進(jìn)程的切換,在 由一個(gè)進(jìn)程中的線程切換到另一個(gè)進(jìn)程中的線程時(shí),將會(huì)引起進(jìn)程的切換。
2.并發(fā)性
在引入線程的操作系統(tǒng)中,不僅進(jìn)程之間可以并發(fā)執(zhí)行,而且在一個(gè)進(jìn)程中的多個(gè)線程之間,亦可并發(fā)執(zhí)行,因而使操作系統(tǒng)具有更好的并發(fā)性,從而能更有效地使 用系統(tǒng)資源和提高系統(tǒng)吞吐量。提高吞吐量
3.擁有資源
不論是傳統(tǒng)的操作系統(tǒng),還是設(shè)有線程的操作系統(tǒng),進(jìn)程都是擁有資源的一個(gè)獨(dú)立單位,它可以擁有自己的資源。一般地說(shuō),線程自己不擁有系統(tǒng)資源(也有一點(diǎn)必 不可少的資源),但它可以訪問(wèn)其隸屬進(jìn)程的資源。亦即,一個(gè)進(jìn)程的代碼段、數(shù)據(jù)段以及系統(tǒng)資源,如已打開(kāi)的文件、I/O設(shè)備等,可供問(wèn)一進(jìn)程的其它所有線 程共享。
4.系統(tǒng)開(kāi)銷(xiāo)
由于在創(chuàng)建或撤消進(jìn)程時(shí),系統(tǒng)都要為之分配或回收資源,如內(nèi)存空間、I/o設(shè)備等。因此,操作系統(tǒng)所付出的開(kāi)銷(xiāo)將顯著地大于在創(chuàng)建或撤消線程時(shí)的開(kāi)銷(xiāo)。類 似地,在進(jìn)行進(jìn)程切換時(shí),涉及到整個(gè)當(dāng)前進(jìn)程CPU環(huán)境的保存以及新被調(diào)度運(yùn)行的進(jìn)程的CPU環(huán)境的設(shè)置。而線程切換只須保存和設(shè)置少量寄存器的內(nèi)容,并 不涉及存儲(chǔ)器管理方面的操作??梢?jiàn),進(jìn)程切換的開(kāi)銷(xiāo)也遠(yuǎn)大于線程切換的開(kāi)銷(xiāo)。此外,由于同一進(jìn)程中的多個(gè)線程具有相同的地址空間,致使它們之間的同步和通信的實(shí)現(xiàn),也變得比較容易。在有的系統(tǒng)中,線程的切換、同步和通信都無(wú)須
5:宏觀狀態(tài)
進(jìn)程的執(zhí)行過(guò)程是線狀的,盡管中間會(huì)發(fā)生中斷或暫停,但該進(jìn)程所擁有的資源只為該線狀執(zhí)行過(guò)程服務(wù)。一旦發(fā)生進(jìn)程上下文切換,這些資源都是要被保護(hù)起來(lái)的。這是進(jìn)程宏觀上的執(zhí)行過(guò)程。而進(jìn)程又可有單線程進(jìn)程與多線程進(jìn)程兩種。我們知道,進(jìn)程有 一個(gè)進(jìn)程控制塊 PCB ,相關(guān)程序段 和 該程序段對(duì)其進(jìn)行操作的數(shù)據(jù)結(jié)構(gòu)集 這三部分,單線程進(jìn)程的執(zhí)行過(guò)程在宏觀上是線性的,微觀上也只有單一的執(zhí)行過(guò)程;而多線程進(jìn)程在宏觀上的執(zhí)行過(guò)程同樣為線性的,但微觀上卻可以有多個(gè)執(zhí)行操作(線程),如不同代碼片段以及相關(guān)的數(shù)據(jù)結(jié)構(gòu)集。線程的改變只代表了 CPU 執(zhí)行過(guò)程的改變,而沒(méi)有發(fā)生進(jìn)程所擁有的資源變化。出了 CPU 之外,計(jì)算機(jī)內(nèi)的軟硬件資源的分配與線程無(wú)關(guān),線程只能共享它所屬進(jìn)程的資源。
6:PCB,TCB
與進(jìn)程控制表和 PCB 相似,每個(gè)線程也有自己的線程控制表 TCB ,而這個(gè) TCB 中所保存的線程狀態(tài)信息則要比 PCB 表少得多,這些信息主要是相關(guān)指針用堆棧(系統(tǒng)棧和用戶棧),寄存器中的狀態(tài)數(shù)據(jù)。


浙公網(wǎng)安備 33010602011771號(hào)