据外媒 9to5mac 报道,ios 14.2 现已引入 jit编译支持。
什么是 jit?
正如字面意思,jit—— just in time,即时编译。如果一个程序在它运行的时候创建并且运行了全新的代码,而非那些最初作为这个程序的一部分保存在硬盘上的固有的代码,即为 jit。
说人话:jit可以在固有代码的基础上生成新的代码,并自己运行新生成的代码。
有什么意义?
虽然苹果没有特意提到,但通过外媒 9to5mac 今日报道,可确认 ios 14.2 中已引入 jit编译支持特性。
在此之前,网传最广的说法是,由于审查等敏感问题,苹果不提供修改内存页面的访问权限的 api,也禁止对 posix 函数 mprotect()的调用,所以也无法实现 jit。简单来说,ios 封禁了内存(或者堆)的可执行权限,从而从根本上干掉了 jit的存在。
虽然苹果一直不支持 jit,但一些开发人员已实现通过 hack 途径达成 jit的特性,但这会影响 app 运行的效率并带来玄学 bug。此外,这种漏洞在 ios 14 中已被封杀。
而现在苹果在 ios 14.2 中默默推出 jit的原因是?
不知道,但不可否认的是,这将为仿真应用(非官方 app)在 iphone 和 ipad 上全速运行提供了可能。
正文
外媒就此采访了开发者 testut,她表示苹果实际上已在 beta 版本中加入了 jit支持,且保留到正式版本中,虽然一句话没有提,但这大概率是苹果官方表态而非 bug。
借助 ios 14.2 上的 jit编译支持,仿真应用现在可以在 ios 中全速运行,而不会受到攻击和其他损失。
“例如,jitdelta 可以模拟更强大的系统,比如?ps2,gamecube 和 wii。如果没有 jit,开发者们将需要再等几年,才能使硬件具备此功能。起初我对此表示怀疑,但现在更倾向于认为这是苹果有意的更改。”
但是,这并不意味着用户会在 app store 中看到仿真应用,用户甚至看不到任何使用 jit的应用程序。testut 表示,当前的实现方法仅适用于侧面加载的应用,这些应用通常是通过 xcode 和其他开发人员工具而非 app store 安装的。换句话说,这是供专门的开发人员调试 app 所使用的功能。
“我怀疑将 jit限制为仅侧加载的应用是其背后的意图(而且更可能与使用 xcode 进行调试时应用运行未签名代码的需求有关),但是我很想知道这种限制是否会长期存在。”
5G手机市场华为荣耀优势明显,vivo超过OPPO
导热胶粘剂全面提升电动汽车电池技术的创新能力
一次消谐器是避雷器吗
你知道PLC和PAC有什么区别在哪吗?PLC和PAC的区别解析
如何制作使用555定时器的自动水龙头
iOS 14.2 引入JIT编译 仿真应用可具有更佳性能
工控显示模组厂家有哪些?想定制、交期快认准KTC优质源头厂家
差分信号线布线用在电路板中有什么优势
零度智控裁员百人 无人机表面繁荣退潮
云的潜在的推动因素有哪一些
达尔优lk200新型无线键盘已正式发布
AR工厂数字化远程运维系统:实时监控设备状态,及时发现潜在问题
【产品应用】GLCOM-NET网关一分钟实现LoRa转MQTT(初阶版)
“人工智能+养老”能否满足老人从身体到精神的多层次需求?
立得空间与华为携手发布智慧城市湖北生态联盟
流场形貌的控制是微流控领域一个基础研究问题
诺基亚已完成向加拿大Volaris出售其IP视频业务
智能制造来了 相关专业也在全面调整
DC-DC电路常常被你“忽略”的电感
企业实施物联网项目的三大目标