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





評論