IT之家iOS 14.2 引入 JIT 编译支持,从而使仿真应用程序具有更佳性能
北京联盟_本文原题:iOS 14.2 引入 JIT 编译支持 , 从而使仿真应用程序具有更佳性能
IT之家11月7日消息 据外媒 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 中已被封杀 。
【IT之家iOS 14.2 引入 JIT 编译支持,从而使仿真应用程序具有更佳性能】而现在苹果在 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 进行调试时应用运行未签名代码的需求有关) , 但是我很想知道这种限制是否会长期存在 。 ”
IT之家提醒 , 以下是AltStore的讲解和演示视频:
本文插图
推荐阅读
- 苹果|改进AirTag功能!苹果发布iOS 15.4新版:iPhone SE3要来了
- 苹果|苹果加速开发中!iOS 16曝光:速度更快、UI改动明显
- 苹果|被苹果打入冷宫!最便宜iOS设备超1000天没更新 满满都是回忆
- 苹果|被苹果打入冷宫!最便宜iOS设备超3年没更新了 满满都是回忆
- Redmi|米粉在小米之家体验Redmi K50电竞版:直呼散热yyds
- 雷军|雷军:湖北首个双层小米之家落户武汉 开启试营业
- AMD|谨慎升级 AMD最新BIOS翻车:锐龙9 5950X遭遇降频等bug
- 谷歌|Google开放Android 12动态主题色彩系统源代码:iOS也能用!
- 苹果|慎重升级!苹果关闭iOS 15.3验证 没有后悔药
- 苹果|iPhone 13严重翻车 屏幕没法看!苹果着急将加快推iOS 15更新修复
