爲什麼在虛擬機上執行代碼時,爲不同的CPU體系結構(x86和ARM)提供了獨立版本的Windows(Windows 8和RT),可以將字節碼轉換爲體系結構特定的指令? 例如,Android基於在JVM上執行的Java,這就是爲什麼有ARM和Intel CPU的智能手機具有完全兼容性。什麼原因微軟沒有這樣做?.NET CLR和CPU體系結構依賴關係
1
A
回答
1
爲什麼在代碼在可以將字節碼轉換爲體系結構特定指令的虛擬機上執行代碼時,針對不同的CPU體系結構(x86和ARM),Windows有不同的版本(Windows 8和RT)?
在x86版本的Windows 8上,並非所有代碼都在虛擬機上執行。桌面模式應用程序以完整的x86或x64進程運行。這就是說,我相信這裏的一部分目標是有意限制和更改這些設備上的API,而不是提供全面的支持。 .NET框架中有許多類型和方法是爲「桌面」或「服務器」應用程序設計的。雖然(理論上)可以通過翻譯本地指令來實現這些工作,但總體架構並不適合這些設備。
提供一個新的API和Windows 8(和Windows Phone 8)專用的單獨「框架」允許框架將自己限制爲適當的API--適當的延遲(無同步方法),功耗或其他類似的問題。
即便如此,便攜式類庫也嘗試爲大多數「純粹」邏輯程序集創造橋樑。使用PCL可以編寫一個可在Windows 8上使用的程序集,包括桌面和RT,手機等。
相關問題
- 1. 類依賴關係和層次結構
- 2. 三層體系結構中的SQL依賴關係和SignalR
- 3. 瞭解Zope組件體系結構和組件依賴關係
- 4. 結構圖 - 具有依賴關係的安裝依賴關係
- 5. C編譯器對體系結構的依賴關係
- 6. .NET程序集和CPU體系結構之間的關係是什麼?
- 7. Mercurial,依賴關係,存儲庫結構
- 8. 依賴關係的nuget依賴關係
- 9. OpenJDK字體依賴關係
- 10. 實體依賴關係Symfony2
- 11. TFS構建依賴關係
- 12. C程序對CPU和操作系統的依賴關係
- 13. 模塊依賴關係和關係
- 14. 重構和依賴關係問題
- 15. Cordova構建和gradle依賴關係
- 16. 依賴關係
- 17. Android - MultipartEntity和依賴關係
- 18. maven和red5依賴關係
- 19. JMeterTest和JMeterTestManager依賴關係
- 20. Maven和依賴關係
- 21. Git-Flow和依賴關係
- 22. Teamviewer和依賴關係
- 23. MakeFiles和依賴關係
- 24. Maven和db4o依賴關係
- 25. GraphZoomScrollPane和VisualizationViewer依賴關係
- 26. spark和httpclient依賴關係
- 27. Subversion和依賴關係
- 28. Leiningen和Clojure依賴關係
- 29. 使用內置依賴關係構建
- 30. 三層體系結構:必須避免層之間的異常依賴關係?