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

问题描述 投票:0回答:7

想一想,如果我们必须让我们的应用程序跨平台,那么是否可以创建一个跨应用程序的操作系统?

operating-system cross-platform
7个回答
2
投票

没有。

假设你确实投入了大量的精力来构建你的 Uber-OS(它将运行 Mac 应用程序、Linux 应用程序、Unix 应用程序、Android 应用程序、iPhone 应用程序、诺基亚应用程序、Symbian 应用程序, SAP 应用程序、Windows 应用程序等)。

那么就没有什么可以阻止某人编写你不支持的新操作系统。

附注有数百种(如果不是数千种)不同的手持设备用于扫描产品、重量和尺寸等,其中许多都有自己的操作系统风格。


1
投票

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

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

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


1
投票

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


1
投票

首先,成功地跟踪无限数量的操作系统的演变实际上是不可能的。我们是否考虑嵌入式操作系统?针对特定应用程序的一次性操作系统怎么样?无法访问文档的专有操作系统怎么样?

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

(我们甚至不要考虑各种依赖于硬件的应用程序。)

在这一切之后,您还应该考虑为您自己的操作系统开发应用程序会是什么样子......

我想知道这是否是哥德尔不完备定理的一个好例子:-)

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

http://en.wikipedia.org/wiki/List_of_computer_system_emulators

http://en.wikipedia.org/wiki/List_of_emulators#Operating_System_emulators


0
投票

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


0
投票

您对可以运行所有应用程序的操作系统有何定义?

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

以Java为例,它只是跨平台的,并不是因为语言本身是跨平台的(任何高级语言都是),而是因为存在针对不同架构和操作系统的Java虚拟机,抽象了底层系统的异构性。

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

总而言之,我无法想象有人真正尝试这样做。认真地说,拥有世界上所有的钱。更好地投资于为您想要支持的操作系统编写本机应用程序。


0
投票

但我们的想法应该是为那些厌倦了吃微软的狗屎并且不想受到苹果缺乏兼容性的限制的人创造一个选择

如果有人能创建一个 .exe 兼容的操作系统,而没有那些狗屎 Windows 所拥有的一切,加上告诉比尔去吸一个大黑 D 的快乐,那将没有价格,我保证创建它的人将成为一个非常富有的人

© www.soinside.com 2019 - 2024. All rights reserved.