0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

iOS 14.2 引入JIT编译 仿真应用可具有更佳性能

工程师邓生 来源:IT之家 作者:问舟 2020-11-07 09:30 次阅读

据外媒 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 进行调试时应用运行未签名代码的需求有关),但是我很想知道这种限制是否会长期存在。”

责任编辑:PSY

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    50

    文章

    4044

    浏览量

    133419
  • iOS
    iOS
    +关注

    关注

    8

    文章

    3393

    浏览量

    150451
  • 源代码
    +关注

    关注

    96

    文章

    2944

    浏览量

    66670
  • JIT
    JIT
    +关注

    关注

    0

    文章

    7

    浏览量

    9726
收藏 人收藏

    评论

    相关推荐

    如何通过建模与仿真提升电力电子组件的设计与性能?

    建模过程被称为建模,而仿真被定义为使用模型研究实际或理论系统的行为和性能的过程。在仿真中,模型可以用于研究系统的现有或拟议特性。对于大型互联系统的仿真,建模方法被证明是非常有效的。这篇
    的头像 发表于 11-25 11:35 58次阅读
    如何通过建模与<b class='flag-5'>仿真</b>提升电力电子组件的设计与<b class='flag-5'>性能</b>?

    【产品介绍】Simcenter Amesim系统仿真软件

    SimcenterAmesimSimcenterAmesim是一款前沿集成式扩展机电一体化系统仿真平台,提高系统仿真效率。支持设计工程
    的头像 发表于 11-12 16:11 204次阅读
    【产品介绍】Simcenter Amesim系统<b class='flag-5'>仿真</b>软件

    示波器探头在测试的时候会引入什么负载效应

    在进行电子测试时,示波器探头作为一种重要的测量工具,其性能对测量结果的准确性具有重要影响。然而,在使用示波器探头进行测量时,探头本身也会引入一定的负载效应,影响测试结果。 一、示波器探头的基本原理
    的头像 发表于 08-09 14:30 346次阅读

    编译components文件夹内容引入的头文件不对怎么处理?

    最近在移植LVGL,需要自己写RGB驱动 我把LVGL放在components文件夹中,但编译的时候提示缺少esp_lcd下头文件的引用 仔细找了一下发现,编译components内容的时候只引入
    发表于 06-17 07:35

    主流电路仿真软件有哪些

    Program with Integrated Circuit Emphasis) SPICE是最早也是最为广泛使用的电路仿真软件之一。它由加州大学伯克利分校开发,可用于模拟和分析各种电子电路,包括模拟电路、混合信号电路和数字电路等。SPICE具有强大的
    的头像 发表于 04-21 10:23 2429次阅读

    苹果承诺:2025年秋季iOS与Android数据互换

    该公司已在最新发布的“DMA合规报告非机密摘要”中展示了未来几周将对iOS系统做出的调整,其重心便是提升iOS与其它操作系统之间用户数据的“迁移性”。
    的头像 发表于 03-08 11:06 618次阅读

    如何提高Simulink仿真性能呢?有哪些使用技巧?

    无论模型的复杂程度如何,每个 Simulink 用户都希望提高仿真性能。本文介绍了许多实用技巧和技术,来帮助您在仿真工作流中获得最佳的性能
    的头像 发表于 01-18 10:01 962次阅读
    如何提高Simulink<b class='flag-5'>仿真性能</b>呢?有哪些使用技巧?

    Multisim14.2中CD4538高电平输出为什么只有5V?

    在Multisim仿真过程中发现CD4538在采用10V供电电源、输入信号均为10V的情况下高电平输出只有4.5V,如下图所示。 仿真用了Multisim14.0、Multisim14.2两个版本
    发表于 01-17 10:24

    VCS 仿真option 解析

    VCS的仿真选项分编译(compile-time)选项和运行(run-time)选项。编译选项用于RTL/TB的编译,一遍是编译了就定了,不
    的头像 发表于 01-06 10:19 2484次阅读

    使用仿真模型进行拓扑分析

    过去,仿真的基础是行为和具有基本结构的模型,它们主要适用于简单集成电路技术中使用的器件。但是,当涉及到功率器件时,这些简单的模型通常无法预测与为优化器件所做的改变相关的现象。现在,通过引入物理和
    的头像 发表于 01-05 10:04 884次阅读
    使用<b class='flag-5'>仿真</b>模型进行拓扑分析

    使用Cauer网络仿真热行为与对开关损耗影响的评估

    过去,仿真的基础是行为和具有基本结构的模型,它们主要适用于简单集成电路技术中使用的器件。但是,当涉及到功率器件时,这些简单的模型通常无法预测与为优化器件所做的改变相关的现象。现在,通过引入物理和
    的头像 发表于 12-29 16:02 1652次阅读
    使用Cauer网络<b class='flag-5'>仿真</b>热行为与对开关损耗影响的评估

    SiC仿真攻略手册——详解物理和扩展仿真模型功能!

    点击蓝字 关注我们 过去,仿真的基础是行为和具有基本结构的模型。这些模型使用的公式我们在学校都学过,它们主要适用于简单集成电路技术中使用的器件。但是,当涉及到功率器件时,这些简单的模型通常无法预测
    的头像 发表于 12-25 19:10 1119次阅读
    SiC<b class='flag-5'>仿真</b>攻略手册——详解物理和<b class='flag-5'>可</b>扩展<b class='flag-5'>仿真</b>模型功能!

    Triton编译器的原理和性能

    Triton是一种用于编写高效自定义深度学习原语的语言和编译器。Triton的目的是提供一个开源环境,以比CUDA更高的生产力编写快速代码,但也比其他现有DSL具有更大的灵活性。Triton已被采用
    的头像 发表于 12-16 11:22 2745次阅读
    Triton<b class='flag-5'>编译</b>器的原理和<b class='flag-5'>性能</b>

    通过转移到SiC技术来获得暖通空调更佳的SEER等级

    通过转移到SiC技术来获得暖通空调更佳的SEER等级
    的头像 发表于 11-28 16:56 494次阅读
    通过转移到SiC技术来获得暖通空调<b class='flag-5'>更佳</b>的SEER等级

    .NET8为什么要引入Non-GC Heap这种机制呢?

    .NET8里面JIT引入了一个新的机制,叫做Non-GC Heap。JIT可以确保相关对象分配在Non-GC Heap上,该堆像其名称一样,不受GC管理。
    的头像 发表于 11-28 10:38 636次阅读