微軟在研發Windows操作系統時需要和英特爾AMD合作嗎?
微軟在研發Windows操作系統時需要和英特爾、AMD、英偉達等硬體廠商合作嗎,還是閱讀CPU、GPU的開發手冊就行或者有行業兼容標準?
謝邀。先說結論,操作系統廠商和硬體廠商的合作十分緊密,尤其是和Intel/AMD,新功能往往是合作開發的。
微軟和硬體廠商合作方式和該硬體是不是核心硬體緊密相關。
一般硬體廠商
如顯卡等等PCIe卡廠商,微軟並不參與硬體的enabling。廠商自行根據Windows的驅動模型開發驅動,再和硬體一起送去微軟做WHQL認證,從而得到windows的背書。
核心硬體
如CPU和內存控制器的新功能等等,因為CPU並沒有驅動模型,改動很有可能就在HAL裡面,AMD和Intel並不能涉及。為什麼沒有驅動詳見:
為什麼顯卡、音效卡甚至滑鼠鍵盤有驅動,而CPU、內存沒有驅動?驅動程序又是什麼??www.zhihu.com而該新功能往往不在任何公開的資料中,微軟也無力自行支持。這就形成了先有雞還是先有蛋的問題。
Intel和AMD都想硬體新功能得到廣泛支持,藉以領先對手半個身位。而微軟希望Windows跑得越來越快,越來越好。雙方利益訴求是一致的。所以硬體廠商甚至在設計新功能的時候就會考慮OS廠商的反應,並在有樣品後第一時間邀請微軟來一起支持這個新功能,雙方會相互簽署NDA等等協議。Intel/AMD甚至會提供樣常式序,然後雙方一起來吧功能做好。
實際上在大家在Windows新版或者新的updata裡面發現支持某些CPU新功能的時候,雙方已經在一起工作好久了。
Linux怎麼玩?
Linux界就不一樣了,有了Linux core的source code, Intel/AMD會自行在內核裡面加入新功能,並試圖upstream到http://kernel.org的trunk裡面,當然這需要module owner的approve了。
歡迎大家關注我的專欄和用微信掃描下方二維碼加入微信公眾號"UEFIBlog",在那裡有最新的文章。同時歡迎大家給本專欄和公眾號投稿!
就拿CPU來說,雖然Intel IA32 programmer manual 有超過3000頁的文檔,但也只是比較 high level的,有很多有用的技術細節或者沒有公開,或者沒說詳細,或者公開的較晚。Windows的開發過程中會通過和硬體廠商交流來獲得更多信息。另外微軟或者其它平台廠商,如Sony,還會向硬體廠商提出新功能的要求,比如在x86 ISA中添加新的指令,來提高自己OS的性能。
肯定要合作的啊~~比如新版的CPU必須只能在最新版的windows下用,不然怎麼賣最新版的Windows~
在64位晶元出來以前,微軟和因特爾被稱為wintel,微軟的系統對因特爾的晶元做了優化,因特爾的晶元也對微軟的系統做了優化,這樣PC陣營勝過了蘋果陣營。
有個詞叫作Wintel聯盟
百度百科裡竟然有
謝邀(OAO第一次被邀請答題好激動)
(下列言論因並非專業 涉獵不深 如有疏漏處 望大牛指正)
emmm當然是。。。非特殊情況下不需要的
舉個栗子:基本上廠商之間,淺顯的架構協議是互通有無的,深度的構架和設計則屬於機密,微軟就是想要也沒有。
那麼Windows系統是怎麼開發的呢,當然是利用已經開源化的架構來進行設計,至於驅動嚴格意義上則不屬於系統本體,他們的作用是運行、調用硬體,就是所謂的CPU、GPU、ROM、RAM驅動.....
然後每段時間的驅動更新,是要建立在硬體更新跟系統更新的前提上的,如果系統不兼容更新後的新驅動(就算這個驅動更有利於硬體運行)也是會....
讓你看見屏幕上蔚藍的天空(誤)
(~藍屏啦~錯誤代碼:LUANGENGXIN)
如上
如果是驅動的話就是由微軟和廠商協商然後提供通用介面讓廠商實現對應的功能
推薦閱讀:
TAG:微軟Microsoft | MicrosoftWindows | 英特爾Intel | 中央處理器CPU | AMD超微半導體 |