首頁(yè) 新聞 > 創(chuàng)新 > 正文

Google為L(zhǎng)inux提供內(nèi)核補(bǔ)丁 加快了服務(wù)器的關(guān)機(jī)速度

Google工程師的一個(gè)新的Linux內(nèi)核補(bǔ)丁解決了一個(gè)問題,這個(gè)問題是由我們?cè)S多人可能沒有體驗(yàn)過的情況引起的,那就是一臺(tái)服務(wù)器當(dāng)中插著太多的NVMe驅(qū)動(dòng)器……這個(gè)問題是由正確關(guān)閉一個(gè)驅(qū)動(dòng)器所需的相對(duì)較長(zhǎng)的時(shí)間引起的:顯然,單個(gè)最長(zhǎng)時(shí)間達(dá)4.5秒。

還記得Sun公司的X4500存儲(chǔ)服務(wù)器嗎,它的代號(hào)為Thumper,它出現(xiàn)時(shí)確實(shí)很激進(jìn):一個(gè)3U的雙處理器服務(wù)器密密麻麻裝了48個(gè)驅(qū)動(dòng)器托架。當(dāng)他們不得不重新啟動(dòng)時(shí),他們需要很長(zhǎng)的時(shí)間。

如果你有一個(gè)有16個(gè)驅(qū)動(dòng)器的存儲(chǔ)服務(wù)器,每次重啟都會(huì)浪費(fèi)72秒的時(shí)間。雖然也就是泡杯咖啡的時(shí)間,但仍然很煩人--因?yàn)檫@完全是不必要的。

問題主要出在內(nèi)核的驅(qū)動(dòng)器關(guān)閉功能是同步的:對(duì)于每個(gè)驅(qū)動(dòng)器,它都會(huì)等待關(guān)閉命令完成,然后再進(jìn)行下一個(gè)。新的內(nèi)核補(bǔ)丁做了完全相同的事情,但改變了調(diào)用的方式,使其成為異步的。它向第一個(gè)驅(qū)動(dòng)器發(fā)出調(diào)用,然后立即轉(zhuǎn)到下一個(gè),并按順序進(jìn)行。當(dāng)它們都返回所需的狀態(tài)時(shí),工作就完成了。

雖然這并不能直接幫助我們中的大多數(shù)人,但有時(shí)這類變化會(huì)產(chǎn)生非常令人愉快的作用。例如,有一個(gè)為內(nèi)核開發(fā)者提供的工具叫kexec,它允許一個(gè)內(nèi)核將另一個(gè)內(nèi)核加載到內(nèi)存中并啟動(dòng)它。不僅僅如此,這還可以加速Linux的重新啟動(dòng)。由于計(jì)算機(jī)在加載操作系統(tǒng)之前必須在其讀取固件過程中花費(fèi)一分鐘左右的時(shí)間,進(jìn)行一些自我測(cè)試等等,如果能繞過這一點(diǎn),直接從一個(gè)操作系統(tǒng)重啟到另一個(gè),就可以把時(shí)間縮短到幾秒鐘而不是幾分鐘。

來(lái)源:cnBeta.COM

關(guān)鍵詞: 這個(gè)問題 操作系統(tǒng) 服務(wù)器的 完全相同 不必要的

最近更新

關(guān)于本站 管理團(tuán)隊(duì) 版權(quán)申明 網(wǎng)站地圖 聯(lián)系合作 招聘信息

Copyright © 2005-2018 創(chuàng)投網(wǎng) - www.mallikadua.com All rights reserved
聯(lián)系我們:33 92 950@qq.com
豫ICP備2020035879號(hào)-12