为什么我不能在任何类型的设备上运行我想要的任何软件?

为什么我不能在任何类型的设备上运行我想要的任何软件?

我不明白这么简单的事情。为什么我不能在任何类型的设备上运行我想要的任何软件?我的意思是,为什么我不能在 iPhone 上运行(举例来说)Windows 操作系统?两者都有硬盘、RAM、显示器、输入等……

为什么我无法在 Android 设备上运行 Linux 操作系统?除非使用一些虚拟环境,例如 Linux Deploy 和 VNC Viewer(适用于 Android 设备)。Android 是 Linux,为什么我不能直接在手机上启动桌面 Ubuntu 或 Arch?

是否有可能让这些设备适应其他类型的软件?例如,也许可以更改一些二进制配置之类的?

我知道如何创建不同的 Web 应用程序,我知道如何使用(管理、配置)Arch Linux......我使用计算机已经很长时间了,但我仍然不明白这么简单的事情!

答案1

理论上,你可以做很多这样的事情。通过一些小技巧,人们已经让 Debian 和其他形式的 Linux 在 Android 手机上运行;这是数百万个视频中的一个,演示了这一点

您似乎特别提到了在移动设备上运行不同的操作系统。理论上,任何移动设备基本上都应该能够运行任何其他移动操作系统。它们都使用 ARM 处理器,除此之外,基本硬件也相同;当然,必须编写一些驱动程序才能使特定的专用组件工作,但这是一个相对较小的障碍。

更大的障碍是手机制造商不希望你这样做。除了谷歌的 Nexus 设备之外,几乎每个移动设备/平板电脑等都有一个锁定的引导加载程序。这意味着制造商已经采取措施防止安装不同的操作系统并防止操作系统被大幅修改。

有时,黑客可以绕过这些措施(这被称为“rooting”或“jailbreaking”,具体取决于具体操作方式),但这从来都不是一件特别容易的事情。我怀疑我们永远不会看到任何黑客在 iPhone/iPad 上安装 iOS 以外的任何东西,因为如果我没记错的话,Apple 在他们的设备中使用了定制 CPU 和许多其他定制部件,而且几乎没有关于这些部件的公开文档。您可能永远不会在移动设备上看到 Windows(无论如何是桌面 Windows),因为 Windows 是为 x86 处理器构建的,而移动设备几乎只使用 ARM 处理器(也就是说,Windows 8 的劣质表亲 Windows RT 在 ARM 上运行)。

总结:基本上,最大的限制是制造商不希望您重新利用他们的硬件。他们为此采取了预防措施,并且经常使用未记录的硬件和难以进行逆向工程的组件。

相关内容