Operating system 是否可以创建一个可以运行所有应用程序的操作系统?

Operating system 是否可以创建一个可以运行所有应用程序的操作系统?,operating-system,cross-platform,Operating System,Cross Platform,只是想一想,如果我们必须使我们的应用程序跨平台,那么有可能创建一个跨应用程序的操作系统吗 让我们假设你确实投入了巨大的努力来打造一个运行Mac应用程序、Linux应用程序、Unix应用程序、Android应用程序、iPhone应用程序、诺基亚应用程序、Symbian应用程序、SAP应用程序、Windows应用程序等的优步操作系统 那么,没有什么能阻止某人编写你不支持的新操作系统 另外,还有成百上千种不同的手持设备用于扫描产品、重量和测量等,其中许多都有自己的操作系统风格。不,但通过虚拟化,您可以

只是想一想,如果我们必须使我们的应用程序跨平台,那么有可能创建一个跨应用程序的操作系统吗

让我们假设你确实投入了巨大的努力来打造一个运行Mac应用程序、Linux应用程序、Unix应用程序、Android应用程序、iPhone应用程序、诺基亚应用程序、Symbian应用程序、SAP应用程序、Windows应用程序等的优步操作系统

那么,没有什么能阻止某人编写你不支持的新操作系统


另外,还有成百上千种不同的手持设备用于扫描产品、重量和测量等,其中许多都有自己的操作系统风格。

不,但通过虚拟化,您可以拥有一台可以运行任何应用程序的计算机。

您可以使用虚拟机,如软件,并在同一台物理机器上模拟多个操作系统。

可以运行所有应用程序的操作系统定义了什么

应用程序大多是用更高级的语言编写的,然后被翻译成二进制代码,这些二进制代码在机器体系结构(如Intel和PowerPC)和操作系统(如基于Windows或Unix的系统)之间有所不同

例如,Java只是跨平台的,因为语言本身不是跨平台的,任何高级语言都是跨平台的,而是因为存在用于不同体系结构和操作系统的Java虚拟机,这些虚拟机抽象了底层系统的异构性

这绝对不是理论上不可能的,除了一些数学问题,没有什么是不可能的,但是你能想象一个人必须做什么才能使这样的事情起作用吗?您基本上可以使用CygWin在Windows中运行Linux程序,也可以使用Wine在Linux中运行Windows程序。所有这些都试图将一个小型操作系统(例如Windows内核)创建到其他操作系统(例如Linux)中。这可能不是你想要的


总而言之,我无法想象有人真的想这么做。用世界上所有的钱,说真的。最好投资为您想要支持的操作系统编写本机应用程序。

技术上是的,只要您将所有应用程序的范围限制在主要操作系统上运行的所有应用程序上

从理论上讲,创建一个能够处理在4-5个最常见操作系统上运行的应用程序的操作系统是可能的,但所涉及的工作量将是巨大的


每次向任何操作系统添加新功能时,您也需要将其添加到您的操作系统中—因此几乎不可能构建,您需要一个足够大的开发团队,以领先于世界上4-5个最大的开发团队/团队。

首先,成功跟踪数量不定的操作系统的发展是不可能的。我们是否考虑了嵌入式操作系统?针对特定应用的一次性操作系统如何?没有文档访问权限的专有操作系统如何

此外,还有一个非常困难(如果不是不可能的话)的问题,那就是合并野外使用的各种范式。理想情况下,您会希望操作系统服务,如剪贴板、网络或。。。或以统一的方式工作,并允许应用程序像针对同一操作系统一样协作

我们甚至不必考虑各种依赖于硬件的应用程序

在这之后,你还应该考虑一下你自己的操作系统的应用程序开发会是什么样子……/P> 我想知道这是否是一个很好的例子:-

PS:也就是说,有相当多的项目试图弥合各种操作系统之间的差距:


好吧,公平地说,没有什么可以阻止他为Uber操作系统应用程序添加对Uber操作系统的支持。然后,我将创建一个具有许多隐藏的、难以找到的功能的“哈哈”操作系统:每次你制作一个防傻子的系统,整个宇宙都会创造一个更好的傻子足够了,先生,公平了。我只是想从理论上谈谈。理论上没有什么可以阻止它,但它违背了所有的实用性,只有当所有操作系统开始同质化时,它才能存在于现实世界中。@用户:即使操作系统开始同质化,您仍然会有一大堆遗留应用程序……是的,但尽管处理遗留应用程序很困难,但它仍然是可能的,而且将来不会有任何问题,因此,一旦处理完遗留应用程序,您就可以完成很多工作。这是不切实际的吗?难以置信地但是,如果不考虑未来的未知因素,这将更加可行。所以总结一下:在理论上?对在实践中?不,@Plasticfile ahem这是二进制的担忧,而不是担忧:@Binary的担忧者LMAO Touche和我的道歉。我没有喝咖啡