Carakan:Opera开发的JavaScript引擎,从Opera 10.50开始正式采用,号称是目前最快的JavaScript引擎。Carakan一词来源于爪哇岛(Java)的文字,含义为最单纯的Java Script。
根据Opera的介绍,Carakan主要在如下方面进行改进:
1. 基于寄存器的字节码:之前的引擎“ECMAScript(编者注:ECMAScript也就是JavaScript。严格来说,JavaScript是ECMAScript的衍生语言)”使用的是基于堆栈字节码指令集,这种基于对堆栈存取的方法对于生成字节码是比较简单的。新引擎采用了基于寄存器的字节码指令集,这种方式采用了固定大小的寄存器,每次操作都可以访问任意的寄存器,更少的指令被执行并且不会拷贝大量的数据。
2. 本地代码生成:Opera将“ECMAScript”引擎编译到本地代码中以达到更快的执行速度。
3. 自动对象分类:在新引擎中每个对象都是被封装成类,以存取不同的数据,这些类的划分是与原型保持一致的。
此外,Opera团队在Carakan内存的占用方面也一直在进行更多的努力。
Opera 10.60号称比Opera 10.50的性能提升了50%,在新一轮浏览器JavaScript基准测试中独占鳌头。