只是一個想法,如果我們必須使我們的應用程序跨平臺,那麼是否有可能創建一個跨應用程序的操作系統?是否可以創建一個可以運行所有應用程序的操作系統?
回答
從技術上講,只要您將範圍全部限制爲在主要操作系統上運行的所有應用程序。
理論上可以創建一個操作系統,該操作系統可以處理在4-5個最常見操作系統上運行的應用程序,但涉及的工作量將是巨大的。
每次向任何操作系統添加新功能時,您都需要將其添加到您的操作系統 - 因此,要構建幾乎不可能,您需要足夠大的開發團隊來留住領先於世界上最大的開發團隊/團體的4-5個。
號
比方說,你幹什麼去了,投資 - 的一個巨大的量 - 努力構建你尤伯杯-OS(將運行Mac應用程序,Linux應用程序,Unix的應用,Android應用,I-手機應用,諾基亞應用,Symbian應用,SAP應用,Windows應用等)。
然後,沒有什麼能阻止某人編寫您不支持的新操作系統。
P.S.並且有數百(如果不是數千)不同的手持設備用於掃描產品,重量和尺寸等,其中許多設備具有自己的操作系統風格。
不,但是通過虛擬化,您可以擁有一臺可以運行任何應用程序的單個計算機。
您可以做的是使用虛擬機(如VMWare's軟件),並在同一臺物理機器上模擬多個操作系統。
您可以運行的操作系統定義什麼全部應用程序?
應用程序主要是用更高級別的語言編寫的,然後翻譯成機器體系結構(如Intel和PowerPC)和操作系統(如Windows或基於Unix的系統)之間不同的二進制代碼。例如,Java僅僅是跨平臺的,因爲不是語言本身是跨平臺的(任何高級語言),但是因爲存在用於抽象底層系統的異構性的不同架構和操作系統的Java虛擬機。
絕對不是理論上不可能的(除了一些數學問題,沒有什麼是),但你能想象爲了使這樣的事情發揮作用而必須做些什麼嗎?你基本上可以用CygWin在Windows上運行Linux程序,你也可以用Wine在Linux上運行Windows程序。所有這些都試圖在你的其他操作系統(例如Linux)中創建一個小型操作系統(例如Windows核心)。這可能不是你想要的。
總而言之,我無法想象有人真的想這樣做。認真對待世界上所有的錢。更好地投資編寫您想要支持的操作系統的本地應用程序。
首先,實際上不可能成功地遵循無限數量的操作系統的發展。我們是否考慮嵌入式操作系統?對於特定應用的一次性操作系統如何?專有操作系統如何無法訪問文檔?
然後還有 - 非常困難,如果不是不可能的話,合併野外使用的各種範例的問題。理想情況下,您希望操作系統服務(如剪貼板,網絡或...或...)以統一的方式工作,並允許應用程序合作,就好像針對相同的操作系統一樣。
(我們甚至沒有想到的各種硬件相關的應用程序。)
這一切後,你還應該考慮應用開發自己的操作系統將是什麼樣的...
我不知道如果這是Gödel's incompleteness theorems :-)
PS一個很好的例子:這就是說,有相當多的項目,試圖彌合不同OS差距:
http://en.wikipedia.org/wiki/List_of_computer_system_emulators
http://en.wikipedia.org/wiki/List_of_emulators#Operating_System_emulators
- 1. Android,是否可以在任何類型的操作系統上運行Dalvik VM以運行Android應用程序?
- 2. 是否可以使用Python創建操作系統?
- 3. MFC應用程序可以在Windows以外的操作系統上運行嗎?
- 4. AIR應用程序可以找出它正在運行的操作系統嗎?
- 5. 是否可以在DOS系統下運行Java-GUI程序
- 6. C# - 是否有可能創建一個可以從命令行運行參數的Windows窗體應用程序?
- 7. 是否可以創建一個Windows 10 Snackbar應用程序?
- 8. 是否有可能使用操作系統線程創建自己的線程?
- 9. 是否可以在OSX 10.6系統上運行的其他OSX 10.6系統上構建32位應用程序?
- 10. 是否可以製作使用VB.NET的操作系統?
- 11. 可以在沒有操作系統的情況下運行java程序嗎?
- 12. 是否可以創建可在Chrome操作系統上運行的二進制擴展?
- 13. dropwizard應用程序可以在支持Java的所有操作系統上運行。
- 14. 是否可以爲每種類型的操作系統運行C++應用程序?
- 15. 可信1.5小程序是否可以執行系統命令?
- 16. 是否有iPhone應用程序可以觸發其他操作?
- 17. 是否可以在Linux上爲JSP Servlet應用程序創建FTP Debian操作系統
- 18. 是否可以創建「class」運行時?
- 19. Windows操作系統可以同時運行2個CLR嗎?
- 20. 是否可以創建命令行JDT應用程序?
- 21. 在所有操作系統上是否包含java可運行的C++代碼?
- 22. 是否可以製作應用程序
- 23. Yii2是否可以在應用程序本身內運行休息操作?
- 24. 是否可以爲php應用程序創建安裝程序?
- 25. 是否可以創建Android系統應用程序來授予系統權限,準確地說是MODIFY_PHONE_STATE?
- 26. 是否可以在Flex應用程序中運行Java程序?
- 27. 是否可以使用Cosmos開發移動操作系統?
- 28. 是否可以在Android Things上運行多個應用程序?
- 29. PyQt - 是否可以運行兩個應用程序?
- 30. 是否可以在多個域上運行Facebook應用程序?
好是公平的沒有什麼我們不會將尤伯杯-OS爲ScrewOverUber-OS操作系統的應用程序支持阻止他。 – user535617 2011-01-26 18:05:46
然後,我會創建一個'哈哈'操作系統與許多隱藏的,很難找到的功能:) *每次你做一個系統白癡證明,宇宙創造一個更好的白癡* – 2011-01-26 18:08:04