为 ARM 编写的原生 android 代码如何在 x86 上运行? [英] How does native android code written for ARM run on x86?

查看:31
本文介绍了为 ARM 编写的原生 android 代码如何在 x86 上运行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

摩托罗拉刚刚发布了一款基于 x86 的 Android 手机.我对为 ARM(例如 netflix)编写的本机应用程序/库如何在这款手机上运行感到有些困惑.

Motorola just released an x86 based Android phone. I'm a little confused as to how native apps/libraries written for ARM(netflix for example) can run on this phone.

如果有人能解释一下,我将不胜感激.

I'd be grateful if someone could explain.

推荐答案

是的,ARM 本机代码使用名为 Houdini

Yes, ARM native code runs on Intel x86 using an emulation feature named Houdini

这个库的作用是动态读取 ARM 指令并将它们转换为等效的 x86 指令.这就是为什么许多应用程序可以在 x86 上按原样运行而无需实际构建等效库的原因.

What this library does is reads ARM instructions on the fly and converts them to equivalent x86 instructions. This is the reason why many apps may work as is on x86 without actually having to build an equivalent library.

这篇关于为 ARM 编写的原生 android 代码如何在 x86 上运行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆