2010-03-02 65 views

回答

0

不是苹果允许的,而且我相信它在物理上防止,代码空间不能被修改,代码无法从数据空间中运行。 (越狱可以修复这个)然而,

1

标准的iPhone应用程序无法将内存页面设置为可执行文件。所以,在运行时修改自己的代码或生成代码是不可能的(即:Just In Time编译)。

越狱设备将允许你有这样的页面。

+0

谢谢。 我的目标是找到一种方法来保护我的应用程序所编译的库。任何想法 ? – thierryb 2010-03-02 22:32:18

+0

您想混淆库中的代码,以免人们对其进行反向工程? – JPD002 2010-03-02 23:50:58

+0

是的,这是我需要做的 – thierryb 2010-03-03 14:08:03

-3
Three things that are most trecherous: 
Connectors that corrode 
Recursive algorithms 
And self modifying code 
     -- traditional programmer's chanty 

自我修改代码是使代码行为完全不可预知的最简单可靠的方法。这在学术上是有趣的,但它很少是一个实用的工具。

就我所知,它的主要用途是当你知道你会被解雇时向雇主报复。

+1

这个“传统”就是动力。 – blucz 2011-07-30 21:38:22

+0

小心支持? – TechZen 2011-07-31 14:45:42

+3

第一个支撑 - 腐蚀的连接器不好。其他人不。自修改代码经常使用,没有普遍的弊端。基于JIT的虚拟机非常依赖它。 DTrace,虚拟化软件和许多调试器可以自由地对代码进行修补,PIC是动态VM的常用优化技术。最后,递归算法形成理论计算机科学的基础,通常比迭代替代方案更适合正式推理。这个引用在30年前可能有意义,但它今天已经过时了。 – blucz 2011-08-01 07:46:29