如果 Android 在幕后是 Linux,那我们为什么还需要 root?

If Android is Linux under the hood, why do we need to root at all?

当运行宁Linux时,您不需要在有根或无根系统之间进行选择;您只需 sudosu -,输入您的密码,您就可以以 root 身份执行 运行 命令。

为什么 Android 不同?为什么你必须刷一个特殊版本并跳过箍才能让你的phone?

我的理解是 Android 运行s Linux,那么为什么 phone 不能在应用程序需要 root 访问权限时提示您输入密码?

让它变得更复杂对 OS 和用户有什么好处,为什么 root phone 不提示输入密码以获得 root 权限,它只是弹出一个授予或拒绝 root 权限的问题?

虽然Android在Linux上运行,但这仅仅意味着它使用Linux作为它的核心。

首先,必须解决一个基本差异 - Linux 本身只是一个内核。它处理基本的 input/output 系统、线程、电源管理等...

Android,因此,仅使用 GNU/Linux 项目的这些部分。它使用摄像头驱动程序、蓝牙驱动程序、显示驱动程序等...(你懂的)

除此之外,Android 添加了一组有用的库,用于字体渲染、音频管理、数据库等。

并且只有在这些库内部是 Android 运行时 (ART),它曾经以 Dalvik VM 为特色,现在使用 ART。因此 Android 能够在 运行 时间内 "sandbox" 一个用户。

这是有意为之,以防止开发人员在 Android 系统上执行恶意代码。每个应用程序都有一组必须遵守的能力。这主要是为了安全

编辑:更新

一般来说,这是 "modern" OS 似乎最近才开始流行的方法。具体来说——每个应用程序都在它自己的沙盒环境和文件系统中运行——这是其他人无法访问的。目标是让 "ordinary" 用户无法 运行 root 访问软件。由于大多数安全漏洞都是 - 以某种方式 - 用户错误