Windows設(shè)計師:多核芯片要求全新操作系統(tǒng)
微軟Windows核心操作系統(tǒng)部門內(nèi)核設(shè)計師戴夫·普羅伯特(Dave Probert)表示,隨著處理器集成的內(nèi)核數(shù)量不斷增多,當(dāng)前操作系統(tǒng)的基本設(shè)計需要改變。
本文引用地址:http://butianyuan.cn/article/107117.htm普羅伯特說,當(dāng)前操作系統(tǒng)利用多核處理器處理能力的 方法非常復(fù)雜,不夠完美。關(guān)鍵問題不是在并行編程方面投入更多資源,而是重新考慮操作系統(tǒng)的基本設(shè)計。目前的計算機(jī)并沒有充分發(fā)揮多核處理器的處理能力。
普羅伯特在微軟的工作是開發(fā)新一代Windows,但他表示,這一觀點(diǎn)與其在微軟從事的工作沒有任何聯(lián)系,Windows內(nèi)核開發(fā)團(tuán)隊的許多其他設(shè)計師不同意其觀點(diǎn)。普羅伯特稱,新一代操作系統(tǒng)應(yīng)當(dāng)不同于Windows或Unix。
目前,普通桌面計算機(jī)都能同時運(yùn)行多個軟件,例如在上網(wǎng)沖浪或編輯電子郵件時播放音樂。普羅伯特說,“響應(yīng)速度最為重要,用戶非常重視響應(yīng)速度”,要解決響應(yīng)速度問題,操作系統(tǒng)就必須了解哪個任務(wù)具有更高的優(yōu)先性。例如,用戶不希望因為安全軟件在掃描系統(tǒng)就花數(shù)分鐘時間等待Word啟動。大多數(shù)操作系統(tǒng)都部分采用優(yōu)先權(quán)調(diào)度算法,但算法仍然相當(dāng)粗糙。
芯片廠商在生產(chǎn)多核處理器時一廂情愿地認(rèn)為,軟件開發(fā)者將為多核處理器開發(fā)軟件。普羅伯特說,問題是目前的桌面系統(tǒng)軟件不能有效地利用多核處理器的處理能力。開發(fā)者需要利用并行編程技術(shù)才能充分利用多核處理器的處理能力。除專業(yè)的科學(xué)計算軟件外,并行軟件并不普及,而且并行編程技術(shù)也相對難于掌握。
普羅伯特稱,一種更好的方法是重新考慮操作系統(tǒng)管理多核處理器的方式,“問題不在于并行編程,而在于操作系統(tǒng)如何管理處理器”。在計算技術(shù)發(fā)展的早期,一個處理器只運(yùn)行一個軟件。如果需要一個處理器運(yùn)行多個軟件,處理器就被分配給不同的進(jìn)程,使軟件“產(chǎn)生錯覺”:它們各自獨(dú)占一個處理器。當(dāng)操作系統(tǒng)開始管理同時運(yùn)行的多個軟件時,它就需要一個不受用戶和軟件干擾的受保護(hù)的空間,這就催生了內(nèi)核模式。內(nèi)核模式與用戶模式相互分離。普羅伯特說,內(nèi)核模式和用戶模式將一個處理器模擬成兩個處理器。
虛擬處理器會爭奪物理處理器資源,在不同虛擬處理器間切換的“費(fèi)用”也會不斷增長,并影響系統(tǒng)的響應(yīng)速度,特別是在配置多核處理器的系統(tǒng)中。普羅伯特指出,由于英特爾和AMD預(yù)計處理器內(nèi)核數(shù)量將繼續(xù)增長,操作系統(tǒng)社區(qū)需要放棄一些觀念,例如內(nèi)核模式和用戶模式,“如果系統(tǒng)中的內(nèi)核足夠多,每個軟件都可以獲得一個內(nèi)核”。
在這種模式中,操作系統(tǒng)更像是一位“管理者”。在虛擬系統(tǒng)中,“管理者”是虛擬機(jī)和硬件間的一個中間層。普羅伯特表示,軟件將負(fù)責(zé)更多的資源管理工作。操作系統(tǒng)負(fù)責(zé)將一個處理器內(nèi)核和一定量的內(nèi)存分配給一個軟件,軟件將利用編譯器產(chǎn)生的元數(shù)據(jù)充分利用獲得的資源。
普羅伯特表示,要對這種方法進(jìn)行測試很困難,因為它要求大量現(xiàn)有軟件,但這是值得的,“這種模式更靈活”。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論