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