上一篇文章為:→2.1.1進(jìn)程
多任務(wù)的概念
什么叫“多任務(wù)”呢锅锨?簡單地說,就是操作系統(tǒng)可以同時運(yùn)行多個任務(wù)恋沃。打個比方必搞,你一邊在用瀏覽器上網(wǎng),一邊在聽MP3囊咏,一邊在用Word趕作業(yè)恕洲,這就是多任務(wù)塔橡,至少同時有3個任務(wù)正在運(yùn)行。還有很多任務(wù)悄悄地在后臺同時運(yùn)行著霜第,只是桌面上沒有顯示而已葛家。
day14_進(jìn)程-01.png
現(xiàn)在,多核CPU已經(jīng)非常普及了泌类,但是癞谒,即使過去的單核CPU,也可以執(zhí)行多任務(wù)刃榨。由于CPU執(zhí)行代碼都是順序執(zhí)行的弹砚,那么,單核CPU是怎么執(zhí)行多任務(wù)的呢枢希?
答案就是操作系統(tǒng)輪流讓各個任務(wù)交替執(zhí)行桌吃,任務(wù)1執(zhí)行0.01秒,切換到任務(wù)2晴玖,任務(wù)2執(zhí)行0.01秒读存,再切換到任務(wù)3,執(zhí)行0.01秒……這樣反復(fù)執(zhí)行下去呕屎。表面上看让簿,每個任務(wù)都是交替執(zhí)行的,但是秀睛,由于CPU的執(zhí)行速度實在是太快了尔当,我們感覺就像所有任務(wù)都在同時執(zhí)行一樣。
真正的并行執(zhí)行多任務(wù)只能在多核CPU上實現(xiàn)蹂安,但是椭迎,由于任務(wù)數(shù)量遠(yuǎn)遠(yuǎn)多于CPU的核心數(shù)量,所以田盈,操作系統(tǒng)也會自動把很多任務(wù)輪流調(diào)度到每個核心上執(zhí)行畜号。
day14_進(jìn)程-02.jpg
day14_進(jìn)程-03.gif
day14_進(jìn)程-04.gif