搞砸Firefox Javascript解释器有多容易?

时间:2011-05-01 03:57:04

标签: javascript firefox open-source interpreter

因为Firefox是开源的,理论上我应该可以破解解释器的行为。让我们说也许我可以构建自己的探查器,或者对浏览器中允许和不允许的javascript行为引入更细粒度的限制。或者什么,不管......

那么在实践中这种事情有多容易?这是通过某种插件可以实现的吗?或者我需要重新编译解释器源?或者重新编译整个浏览器?

无论如何,翻译来源有多大?对于那些在大学里建造玩具编译器的人来说,这是一件很难的事吗?

2 个答案:

答案 0 :(得分:5)

如果你只限于翻译,那么事情也不算太糟糕。如果你想处理两个JIT,那么显然更多的工作。在代码化方面,看起来我们正在谈论180k行代码(头文件和C ++文件),不包括正则表达式引擎和jits。

理解翻译并不是那么糟糕;一方面,http://developer.mozilla.org提供了大量文档,#jsapi irc.mozilla.org频道上的人通常很乐意回答问题。

如果你想要分析而不会过多地扰乱系统,你可能需要破解源代码的东西。对于支持功能方面的实验,您希望使用https://mozillalabs.com/zaphod/,我怀疑。

答案 1 :(得分:2)

Firefox JS引擎名为SpiderMonkey。你可以在那里找到有关它的信息: http://www.mozilla.org/js/spidermonkey/

我没有太多关注它,但它是用C语言写的,看起来足够容易。