欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

既然在Linux中程序不是進(jìn)程,那么什么才算是進(jìn)程?線程呢?

2021-03-09    分類: 網(wǎng)站建設(shè)

C語(yǔ)言程序員編寫的代碼可以編譯為程序,程序通常存放在磁盤等存儲(chǔ)介質(zhì)中。在 Linux 中,處于運(yùn)行期的程序被稱作“進(jìn)程”。

處于運(yùn)行期的程序被稱作“進(jìn)程”

空間

、要處理的數(shù)據(jù)、掛起的信號(hào)、打開(kāi)的文件,可能還會(huì)包括多個(gè)執(zhí)行線程等等。

事實(shí)上,進(jìn)程是 Linux 操作系統(tǒng)抽象概念的最基本的一種,Linux 最基礎(chǔ)最重要的工作之一就是管理系統(tǒng)中繁雜的各種進(jìn)程。

“執(zhí)行線程”通常被簡(jiǎn)稱為“線程”

上面提到的“執(zhí)行線程”通常被簡(jiǎn)稱為“線程”,它被進(jìn)程包含,同一個(gè)進(jìn)程可能有多個(gè)線程,每個(gè)線程都有自己獨(dú)立的程序計(jì)數(shù)器、進(jìn)程棧以及相關(guān)的進(jìn)程寄存器。雖說(shuō) Linux 內(nèi)核管理的是進(jìn)程,但其實(shí)最小的調(diào)度單位是線程。

早期傳統(tǒng)的 Unix 系統(tǒng)中,一個(gè)進(jìn)程只能包含一個(gè)線程,所以當(dāng)時(shí)進(jìn)程調(diào)度和線程調(diào)度其實(shí)結(jié)果是一致的。

線程不過(guò)是一種比較特殊的進(jìn)程而已

包括 Linux,現(xiàn)代操作系統(tǒng)一般都會(huì)為進(jìn)程提供兩種虛擬機(jī)制:虛擬處理器和虛擬內(nèi)存。讀者應(yīng)注意“虛擬”一詞,多個(gè)進(jìn)程可能共同使用一個(gè) CPU 和內(nèi)存,但是“虛擬機(jī)制”會(huì)讓進(jìn)程活在楚門的世界一樣,自以為自己獨(dú)占 CPU 和全部?jī)?nèi)存。

應(yīng)注意,線程之間可以共享虛擬內(nèi)存,但是它們?nèi)匀粨碛懈髯缘奶摂M CPU。

到這里,讀者應(yīng)該明白了,編譯器生成的C語(yǔ)言程序本身并不是進(jìn)程。進(jìn)程實(shí)際上是處于運(yùn)行期的程序,與相關(guān)資源的總和。

事實(shí)上,無(wú)論是程序不同,還是執(zhí)行時(shí)的數(shù)據(jù)不同,都會(huì)產(chǎn)生不同的進(jìn)程。舉例來(lái)說(shuō),同樣一個(gè)C語(yǔ)言程序,是可以產(chǎn)生兩個(gè)不同的進(jìn)程的——它們的運(yùn)行資源可能是不同的。反過(guò)來(lái)也是一樣的,多個(gè)不同的進(jìn)程也可以共享同一份資源,例如打開(kāi)同一個(gè)文件,映射同一塊內(nèi)存空間等。

進(jìn)程實(shí)際上是處于運(yùn)行期的程序,與相關(guān)資源的總和

fork() 調(diào)用結(jié)束時(shí),會(huì)從 Linux 內(nèi)核返回兩次

不過(guò)一般來(lái)說(shuō),如果有需求創(chuàng)建新的進(jìn)程,一般都是為了執(zhí)行不同的新的程序。這一過(guò)程通過(guò) exec() 函數(shù)族可以方便實(shí)現(xiàn),它們可以為新程序創(chuàng)建新的地址空間,然后加載程序執(zhí)行。

Linux 操作界面的 shell 終端其實(shí)也是一個(gè)進(jìn)程,通過(guò) shell 輸入的執(zhí)行新程序命令(如 ./a.out )產(chǎn)生的新進(jìn)程其實(shí)都是對(duì)應(yīng) shell 終端的子進(jìn)程。

程序既然有新生,也就會(huì)有死亡,程序運(yùn)行結(jié)束后,通過(guò) exit() 系統(tǒng)調(diào)用退出運(yùn)行,這個(gè)函數(shù)會(huì)殺死進(jìn)程,并且將其占用的資源釋放,通知其父進(jìn)程“死亡信息”。父進(jìn)程則可以通過(guò) wait() 函數(shù)族接收子進(jìn)程的“死亡信息”,并著手為子進(jìn)程做后續(xù)的“收尸工作”,避免子進(jìn)程編程“僵尸進(jìn)程(zombie)”。

“僵尸進(jìn)程”很難殺死,但是留著“僵尸進(jìn)程”又會(huì)白白浪費(fèi)系統(tǒng)資源。

點(diǎn)個(gè)贊再走吧

歡迎在評(píng)論區(qū)一起討論,質(zhì)疑。文章都是手打原創(chuàng),每天最淺顯的介紹C語(yǔ)言、linux等嵌入式開(kāi)發(fā),喜歡我的文章就關(guān)注一波吧,可以看到最新更新和之前的文章哦。

新聞名稱:既然在Linux中程序不是進(jìn)程,那么什么才算是進(jìn)程?線程呢?
分享網(wǎng)址:http://aaarwkj.com/news12/104862.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、定制網(wǎng)站、品牌網(wǎng)站制作云服務(wù)器、網(wǎng)站維護(hù)做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)
中文字幕一区二区三区精彩视频| 人人澡人人看人人妻| 激情亚洲不卡一区二区| 午夜福利视频在线一区| 久久尤物av天堂日日综合| 色噜噜色一区二区三区| 国产精品国产三级国产av野外| 91久久精品人妻一区二区| 亚洲中文字幕在线不卡| 日韩熟女av中文字幕| 国产亚洲一区二区三区日韩| 精品人妻av区天天看片| 日本一区中文字幕欧美| 日韩精品中文字幕电影| 91久久国产免费网站| 国产精品国产三级国产专用| 韩国电视剧大全免费国语观看| 怡红院怡春院视频免费看| 日韩av在线观看大全| 日本不卡高清视频在线播放| 国产精品麻豆一区二区三区| 精品欧美不卡在线播放| 日本免费一区二区三个| 久久99国产综合精品女同| 日本人妻久久中文字幕| 91免费在线观看高清| av中文资源在线观看| 超碰91人人草人人干| 国产性生活大片免费看| 91狠狠综合久久精品| 久久国产精品午夜亚洲欧美| 98精品偷拍视频一区二区三区| 蜜臀人妻久久一区二区三| 亚洲第一女人天堂av| 美女高潮啪啪啪91| 91伊人日本在线视频| 国产成人三级在线影院| 国产l精品国产亚洲区久久| 日本写真视频一区二区三区| 亚洲国产成人一区二区精品区| 久久精品性少妇一区=区三区|