日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
我是虛擬機(jī)內(nèi)核我困惑?!

虛擬化 內(nèi)核是個(gè)大管家,想象你的機(jī)器上跑著很多的程序,有word,有excel,看著視頻,聽(tīng)著音樂(lè),每個(gè)程序都要使用CPU和內(nèi)存,都要上網(wǎng),都要存硬盤(pán),如果沒(méi)有一個(gè)大管家管著,大家隨便用,就亂了。所以需要管家來(lái)協(xié)調(diào)調(diào)度整個(gè)資源,誰(shuí)先用,誰(shuí)后用,誰(shuí)用多少,誰(shuí)放在這里,誰(shuí)放在那里,都需要管家操心。

樂(lè)都ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書(shū)銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書(shū)合作)期待與您的合作!

內(nèi)核,是指的操作系統(tǒng)內(nèi)核。

所有的操作系統(tǒng)都有內(nèi)核,無(wú)論是Windows還是Linux,都管理著三個(gè)重要的資源:計(jì)算,網(wǎng)絡(luò),存儲(chǔ)。

計(jì)算指CPU和內(nèi)存,網(wǎng)絡(luò)即網(wǎng)絡(luò)設(shè)備,存儲(chǔ)即硬盤(pán)之類的。

內(nèi)核是個(gè)大管家,想象你的機(jī)器上跑著很多的程序,有word,有excel,看著視頻,聽(tīng)著音樂(lè),每個(gè)程序都要使用CPU和內(nèi)存,都要上網(wǎng),都要存硬盤(pán),如果沒(méi)有一個(gè)大管家管著,大家隨便用,就亂了。所以需要管家來(lái)協(xié)調(diào)調(diào)度整個(gè)資源,誰(shuí)先用,誰(shuí)后用,誰(shuí)用多少,誰(shuí)放在這里,誰(shuí)放在那里,都需要管家操心。

所以在這個(gè)計(jì)算機(jī)大家庭里面,管家有著比普通的程序更高的權(quán)限,運(yùn)行在內(nèi)核態(tài),而其他的普通程序運(yùn)行在用戶態(tài),用戶態(tài)的程序一旦要申請(qǐng)公共的資源,就需要向管家申請(qǐng),管家?guī)退峙浜?,它才能用?/p>

為了區(qū)分內(nèi)核態(tài)和用戶態(tài),CPU專門(mén)設(shè)置四個(gè)特權(quán)等級(jí)0,1,2,3 來(lái)做這個(gè)事情。

當(dāng)時(shí)寫(xiě)Linux內(nèi)核的時(shí)候,估計(jì)大牛們還不知道將來(lái)虛擬機(jī)會(huì)大放異彩,大牛們想,一共兩級(jí)特權(quán),一個(gè)內(nèi)核態(tài),一個(gè)用戶態(tài),卻有四個(gè)等級(jí),好奢侈,好富裕,就敞開(kāi)了用,內(nèi)核態(tài)運(yùn)行在第0等級(jí),用戶態(tài)運(yùn)行在第3等級(jí),占了兩頭,太不會(huì)過(guò)日子了。

大牛們?cè)趯?xiě)Linux內(nèi)核的時(shí)候,如果用戶態(tài)程序做事情,就將扳手掰到第3等級(jí),一旦要申請(qǐng)使用更多的資源,就需要申請(qǐng)將扳手掰到第0等級(jí),內(nèi)核才能在高權(quán)限訪問(wèn)這些資源,申請(qǐng)完資源,返回到用戶態(tài),扳手再掰回去。

這個(gè)程序一直非常順利的運(yùn)行著,直到虛擬機(jī)的出現(xiàn)。

如果大家用過(guò)Vmware桌面版,或者Virtualbox桌面版,你可以用這個(gè)虛擬化軟件創(chuàng)建虛擬機(jī),在虛擬機(jī)里面安裝一個(gè)Linux或者windows,外面的操作系統(tǒng)也可以是Linux或者Windows。

當(dāng)你使用虛擬機(jī)軟件的時(shí)候,和你的excel一樣,都是在你的任務(wù)欄里面并排的放著,是一個(gè)普通的應(yīng)用。

當(dāng)你進(jìn)入虛擬機(jī)的時(shí)候,虛擬機(jī)里面的excel也是一個(gè)普通的應(yīng)用。

但是當(dāng)你設(shè)身處地的站在虛擬機(jī)里面的內(nèi)核的角度思考一下人生,你就困惑了,我到底個(gè)啥?

在硬件上的操作系統(tǒng)來(lái)看,我是一個(gè)普通的應(yīng)用,只能運(yùn)行在用戶態(tài)??墒谴笈兩业臅r(shí)候,我的每一行代碼,都告訴我,我是個(gè)內(nèi)核啊,應(yīng)該運(yùn)行在內(nèi)核態(tài),當(dāng)虛擬機(jī)里面的excel要訪問(wèn)網(wǎng)絡(luò)的時(shí)候,向我請(qǐng)求,我的代碼就要努力的去操作網(wǎng)絡(luò)資源,我努力,但是我做不到,我沒(méi)有權(quán)限!

我分裂了。

虛擬化層,也就是Vmware或者Virtualbox需要幫我解決這個(gè)問(wèn)題。

***種方式,完全虛擬化,其實(shí)就是騙我。虛擬化軟件模擬假的CPU,內(nèi)存,網(wǎng)絡(luò),硬盤(pán)給我,讓我自我感覺(jué)良好,終于又像個(gè)內(nèi)核了。

真正的工作模式是這樣的。

虛擬機(jī)內(nèi)核:我要在CPU上跑一個(gè)指令!

虛擬化軟件:沒(méi)問(wèn)題,你是內(nèi)核嘛,可以跑

虛擬化軟件轉(zhuǎn)過(guò)頭去找物理機(jī)內(nèi)核:報(bào)告管家,我管理的虛擬機(jī)里面的一個(gè)要執(zhí)行一個(gè)CPU指令,幫忙來(lái)一小段時(shí)間空閑的CPU時(shí)間,讓我代他跑個(gè)指令。

物理機(jī)內(nèi)核:你等著,另一個(gè)跑著呢。好嘞,他終于跑完了,該你了。

虛擬化軟件:我代他跑,終于跑完了,出來(lái)結(jié)果了

虛擬化軟件轉(zhuǎn)頭給虛擬機(jī)內(nèi)核:哥們,跑完了,結(jié)果是這個(gè),我說(shuō)你是內(nèi)核吧,絕對(duì)有權(quán)限,沒(méi)問(wèn)題,下次跑指令找我啊。

虛擬機(jī)內(nèi)核:看來(lái)我真的是內(nèi)核呢。可是哥,好像這點(diǎn)指令跑的有點(diǎn)慢啊。

虛擬化軟件:這就不錯(cuò)啦,好幾個(gè)排著隊(duì)跑呢。

內(nèi)存的申請(qǐng)模式如下。

虛擬機(jī)內(nèi)核:我啟動(dòng)需要4G內(nèi)存,我好分給我上面的應(yīng)用。

虛擬化軟件:沒(méi)問(wèn)題,才4G,你是內(nèi)核嘛,馬上申請(qǐng)好。

虛擬化軟件轉(zhuǎn)頭給物理機(jī)內(nèi)核:報(bào)告,管家,我啟動(dòng)了一個(gè)虛擬機(jī),需要4G內(nèi)存,給我4個(gè)房間唄。

物理機(jī)內(nèi)核:怎么又一個(gè)虛擬機(jī)啊,好吧,給你90,91,92,93四個(gè)房間。

虛擬化軟件轉(zhuǎn)頭給虛擬機(jī)內(nèi)核:哥們,內(nèi)存有了,0,1,2,3這個(gè)四個(gè)房間都是你的,你看,你是內(nèi)核嘛,獨(dú)占資源,從0編號(hào)的就是你的。

虛擬機(jī)內(nèi)核:看來(lái)我真的是內(nèi)核啊,能從頭開(kāi)始用。那好,我就在房間2的第三個(gè)柜子里面放個(gè)東西吧。

虛擬化軟件:要放東西啊,沒(méi)問(wèn)題。心里想:我查查看,這個(gè)虛擬機(jī)是90號(hào)房間開(kāi)頭的,他要在房間2放東西,那就相當(dāng)于在房間92放東西。

虛擬化軟件轉(zhuǎn)頭給物理機(jī)內(nèi)核:報(bào)告,管家,我上面的虛擬機(jī)要在92號(hào)房間的第三個(gè)柜子里面放個(gè)東西。

好了,說(shuō)完了CPU和內(nèi)存的例子,不細(xì)說(shuō)網(wǎng)絡(luò)和硬盤(pán)了,也是類似,都是虛擬化軟件模擬一個(gè)給虛擬機(jī)內(nèi)核看的,其實(shí)啥事兒都需要虛擬化軟件轉(zhuǎn)一遍。

這種方式一個(gè)壞處,就是慢,往往慢到不能忍受。

于是虛擬化軟件想,我能不能不當(dāng)傳話筒,還是要讓虛擬機(jī)內(nèi)核正視自己的身份,別說(shuō)你是內(nèi)核,你還真喘上了,你不是物理機(jī),你是虛擬機(jī)。

但是怎么解決權(quán)限等級(jí)的問(wèn)題呢?于是Intel的VT-x和AMD的AMD-V從硬件層面幫上了忙。當(dāng)初誰(shuí)讓你們這些寫(xiě)內(nèi)核的大牛用等級(jí)這么奢侈,用完了0,就是3,也不省著點(diǎn)用,沒(méi)辦法,只好另起爐灶弄一個(gè)新的標(biāo)志位,表示當(dāng)前是在虛擬機(jī)狀態(tài)下,還是真正的物理機(jī)內(nèi)核下。

對(duì)于虛擬機(jī)內(nèi)核來(lái)講,只要將標(biāo)志位設(shè)為虛擬機(jī)狀態(tài),則可以直接在CPU上執(zhí)行大部分的指令,不需要虛擬化軟件在中間轉(zhuǎn)述,除非遇到特別敏感的指令,才需要將標(biāo)志位設(shè)為物理機(jī)內(nèi)核態(tài)運(yùn)行,這樣大大提高了效率。

所以安裝虛擬機(jī)的時(shí)候,務(wù)必要將物理CPU的這個(gè)標(biāo)志位打開(kāi),是否打開(kāi)對(duì)于Intel可以查看grep "vmx" /proc/cpuinfo,對(duì)于AMD可以查看grep "svm" /proc/cpuinfo

這叫做硬件輔助虛擬化。

另外就是訪問(wèn)網(wǎng)絡(luò)或者硬盤(pán)的時(shí)候,為了取得更高的性能,也需要讓虛擬機(jī)內(nèi)核加載特殊的驅(qū)動(dòng),也是讓虛擬機(jī)內(nèi)核從代碼層面就重新定位自己的身份,不能像訪問(wèn)物理機(jī)一樣訪問(wèn)網(wǎng)絡(luò)或者硬盤(pán),而是用一種特殊的方式:我知道我不是物理機(jī)內(nèi)核,我知道我是虛擬機(jī),我沒(méi)那么高的權(quán)限,我很可能和很多虛擬機(jī)共享物理資源,所以我要學(xué)會(huì)排隊(duì),我寫(xiě)硬盤(pán)其實(shí)寫(xiě)的是一個(gè)物理機(jī)上的文件,那我的寫(xiě)文件的緩存方式是不是可以變一下,我發(fā)送網(wǎng)絡(luò)包,根本就不是發(fā)給真正的網(wǎng)絡(luò)設(shè)備,而是給虛擬的設(shè)備,我可不可以直接在內(nèi)存里面拷貝給他,等等等等。

一旦我知道我不是物理機(jī)內(nèi)核,痛定思痛,只好重新認(rèn)識(shí)自己,反而能找出很多方式來(lái)優(yōu)化我的資源訪問(wèn)。

這叫做類虛擬化或者半虛擬化。


本文名稱:我是虛擬機(jī)內(nèi)核我困惑?!
當(dāng)前地址:http://www.dlmjj.cn/article/djiidhh.html