重要:進(jìn)程與線程的區(qū)別

一锁孟、進(jìn)程與線程的區(qū)別:

1、進(jìn)程是資源分配的最小單位仿贬,線程是程序執(zhí)行的最小單位(資源調(diào)度的最小單位)
2纽竣、進(jìn)程有自己的獨(dú)立地址空間,每啟動(dòng)一個(gè)進(jìn)程茧泪,系統(tǒng)就會(huì)為它分配地址空間蜓氨,建立數(shù)據(jù)表來(lái)維護(hù)代碼段、堆棧段和數(shù)據(jù)段队伟,這種操作非常昂貴穴吹。
而線程是共享進(jìn)程中的數(shù)據(jù)的,使用相同的地址空間嗜侮,因此CPU切換一個(gè)線程的花費(fèi)遠(yuǎn)比進(jìn)程要小很多港令,同時(shí)創(chuàng)建一個(gè)線程的開(kāi)銷(xiāo)也比進(jìn)程要小很多啥容。
3、線程之間的通信更方便顷霹,同一進(jìn)程下的線程共享全局變量咪惠、靜態(tài)變量等數(shù)據(jù),而進(jìn)程之間的通信需要以通信的方式(IPC)進(jìn)行淋淀。不過(guò)如何處理好同步與互斥是編寫(xiě)多線程程序的難點(diǎn)遥昧。
4、但是多進(jìn)程程序更健壯朵纷,多線程程序只要有一個(gè)線程死掉渠鸽,整個(gè)進(jìn)程也死掉了,而一個(gè)進(jìn)程死掉并不會(huì)對(duì)另外一個(gè)進(jìn)程造成影響柴罐,因?yàn)檫M(jìn)程有自己獨(dú)立的地址空間。
參考:https://www.cnblogs.com/zhehan54/p/6130030.html

二憨奸、進(jìn)程與線程的資源:

1革屠、堆與棧

堆: 是大家共有的空間,分全局堆和局部堆排宰。全局堆就是所有沒(méi)有分配的空間似芝,局部堆就是用戶分配的空間。堆在操作系統(tǒng)對(duì)進(jìn)程初始化的時(shí)候分配板甘,運(yùn)行過(guò)程中也可以向系統(tǒng)要額外的堆党瓮,但是記得用完了要還給操作系統(tǒng),要不然就是內(nèi)存泄漏盐类。
棧:是個(gè)線程獨(dú)有的寞奸,保存其運(yùn)行狀態(tài)和局部自動(dòng)變量的。棧在線程開(kāi)始的時(shí)候初始化在跳,每個(gè)線程的椙固眩互相獨(dú)立,因此猫妙,棧是 thread safe的瓷翻。操作系統(tǒng)在切換線程的時(shí)候會(huì)自動(dòng)的切換棧,就是切換「钭埂SS/ESP寄存器齐帚。棧空間不需要在高級(jí)語(yǔ)言里面顯式的分配和釋放彼哼。

2对妄、其他

線程共享的環(huán)境包括:進(jìn)程代碼段、進(jìn)程的公有數(shù)據(jù)(利用這些共享的數(shù)據(jù)沪羔,線程很容易的實(shí)現(xiàn)相互之間的通訊)饥伊、進(jìn)程打開(kāi)的文件描述符象浑、信號(hào)的處理器、進(jìn)程的當(dāng)前目錄和進(jìn)程用戶ID與進(jìn)程組ID琅豆。
進(jìn)程擁有這許多共性的同時(shí)愉豺,還擁有自己的個(gè)性。有了這些個(gè)性茫因,線程才能實(shí)現(xiàn)并發(fā)性蚪拦。這些個(gè)性包括:
1.線程ID
每個(gè)線程都有自己的線程ID,這個(gè)ID在本進(jìn)程中是唯一的冻押。進(jìn)程用此來(lái)標(biāo)
識(shí)線程驰贷。
2.寄存器組的值
由于線程間是并發(fā)運(yùn)行的,每個(gè)線程有自己不同的運(yùn)行線索洛巢,當(dāng)從一個(gè)線
程切換到另一個(gè)線程上時(shí)括袒,必須將原有的線程的寄存器集合的狀態(tài)保存,以便
將來(lái)該線程在被重新切換到時(shí)能得以恢復(fù)稿茉。
3.線程的堆棧
堆棧是保證線程獨(dú)立運(yùn)行所必須的锹锰。
線程函數(shù)可以調(diào)用函數(shù),而被調(diào)用函數(shù)中又是可以層層嵌套的漓库,所以線程
必須擁有自己的函數(shù)堆棧恃慧,使得函數(shù)調(diào)用可以正常執(zhí)行,不受其他線程的影
響渺蒿。
4.錯(cuò)誤返回碼
由于同一個(gè)進(jìn)程中有很多個(gè)線程在同時(shí)運(yùn)行痢士,可能某個(gè)線程進(jìn)行系統(tǒng)調(diào)用
后設(shè)置了errno值,而在該線程還沒(méi)有處理這個(gè)錯(cuò)誤茂装,另外一個(gè)線程就在此時(shí)
被調(diào)度器投入運(yùn)行怠蹂,這樣錯(cuò)誤值就有可能被修改。
所以训唱,不同的線程應(yīng)該擁有自己的錯(cuò)誤返回碼變量褥蚯。
5.線程的信號(hào)屏蔽碼
由于每個(gè)線程所感興趣的信號(hào)不同,所以線程的信號(hào)屏蔽碼應(yīng)該由線程自
己管理况增。但所有的線程都共享同樣的信號(hào)處理器赞庶。
6.線程的優(yōu)先級(jí)
由于線程需要像進(jìn)程那樣能夠被調(diào)度,那么就必須要有可供調(diào)度使用的參
數(shù)澳骤,這個(gè)參數(shù)就是線程的優(yōu)先級(jí)歧强。
參考:https://blog.csdn.net/shuilan0066/article/details/7683315

3、進(jìn)程與線程的同步

進(jìn)程:無(wú)名管道为肮、有名管道摊册、信號(hào)、共享內(nèi)存颊艳、消息隊(duì)列茅特、信號(hào)量
進(jìn)程:互斥量忘分、讀寫(xiě)鎖、自旋鎖白修、線程信號(hào)妒峦、條件變量

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市兵睛,隨后出現(xiàn)的幾起案子肯骇,更是在濱河造成了極大的恐慌,老刑警劉巖祖很,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件笛丙,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡假颇,警方通過(guò)查閱死者的電腦和手機(jī)胚鸯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)笨鸡,“玉大人蠢琳,你說(shuō)我怎么就攤上這事【当” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵蓝牲,是天一觀的道長(zhǎng)趟脂。 經(jīng)常有香客問(wèn)我,道長(zhǎng)例衍,這世上最難降的妖魔是什么昔期? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮佛玄,結(jié)果婚禮上硼一,老公的妹妹穿的比我還像新娘。我一直安慰自己梦抢,他們只是感情好般贼,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著奥吩,像睡著了一般哼蛆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上霞赫,一...
    開(kāi)封第一講書(shū)人閱讀 51,301評(píng)論 1 301
  • 那天腮介,我揣著相機(jī)與錄音,去河邊找鬼端衰。 笑死叠洗,一個(gè)胖子當(dāng)著我的面吹牛甘改,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播灭抑,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼十艾,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了名挥?” 一聲冷哼從身側(cè)響起疟羹,我...
    開(kāi)封第一講書(shū)人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎禀倔,沒(méi)想到半個(gè)月后榄融,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡救湖,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年愧杯,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鞋既。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡力九,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出邑闺,到底是詐尸還是另有隱情跌前,我是刑警寧澤,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布陡舅,位于F島的核電站抵乓,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏靶衍。R本人自食惡果不足惜灾炭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望颅眶。 院中可真熱鬧蜈出,春花似錦、人聲如沸涛酗。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)商叹。三九已至眷蜈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間沈自,已是汗流浹背酌儒。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留枯途,地道東北人忌怎。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓籍滴,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親榴啸。 傳聞我的和親對(duì)象是個(gè)殘疾皇子孽惰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容