Presto
Presto是一个由Opera Software开发的网页浏览器排版引擎,由Opera 7.0至12.18版本所使用。
开发者 | Opera Software ASA |
---|---|
当前版本 | 2.12.423(2015年3月16日[1]) |
编程语言 | C++[2] |
操作系统 | 跨平台 |
类型 | 应用程式框架/软件组件 |
许可协议 | 专有 |
网站 | dev.opera.com |
Presto取代了旧版Opera 4至6版本使用的Elektra排版引擎,包括加入动态功能,例如网页或其部分可随着DOM及Script语法的事件而重新排版。Presto在推出后不断有更新版本推出,使不少错误得以修正,以及阅读JavaScript性能得以优化。
2013年2月12日,Opera宣布将结束Presto引擎的开发,未来将以Webkit引擎为主[3]。
2016年2月15日,传出Opera被收购的消息,同日Presto内核版Opera更新到12.18。
JavaScript引擎
Opera的Pre-Presto版本使用了Linear A引擎。以Presto的Core fork为基础,Opera 7.0至9.27的Opera版本使用了Linear B引擎[4]。Futhark引擎使用在Presto的Core 2 fork的一些版本,即Opera 9.5至10.10版本。在当时,Futhark是世界上最快的引擎,但在2008年,新一代JavaScript引擎如Google(V8)、Mozilla(TraceMonkey)及Apple(SquirrelFish)已领先一步,加入了机器语言生成。这开辟了在客户端进行大量计算的可能性,Futhark虽然依旧快速和高效,但仍然无法企及。
2009年2月5日,Opera推出了Carakan引擎,拥有基于寄存器的字节码,机器语言生成,自动对象分类及整体性能改进[5][6]。
以Presto为基础的应用程式
网络浏览器
- Opera
- Opera 7至12版本
- Opera Mobile 9.5至12版本
- Opera Mini
- Nintendo
- Nintendo DS Browser(基于Opera)[7]
- Nintendo DSi Browser(基于Opera)[8]
- Wii Internet Channel浏览器(基于Opera)[9]
- Nokia 770浏览器(基于Opera)
- Sony Mylo COM-1's浏览器(基于Opera)[10]
HTML编辑器
- Adobe Dreamweaver MX至CS3版本(CS4及以后版本使用Webkit)
- Adobe Creative Suite 2[11]
- Adobe Creative Suite 3[12]
- Virtual Mechanics SiteSpinner Pro[13]
原始码泄漏
12.15版本的原始码被泄漏到GitHub[14][15][16][17][18][19]。2017年1月14日,在数字千年版权法的要求下被删除[20]。2017年1月18日,Opera软件公司已经确认了原始码的真实性[21]。
参考资料
- ^ Dev.Opera — Opera Mini server upgrade. dev.opera.com. [2015-12-28]. (原始内容存档于2016-01-27).
- ^ Lextrait, Vincent. The Programming Languages Beacon, v10.0. 2010-01 [2010-01-04]. (原始内容存档于2012-05-30).
- ^ 300 million users and move to WebKit. Opera Software. 2013-02-12 [2013-02-14]. (原始内容存档于2013-02-14).
- ^ Sivonen, Henri. Names of Browser Engines. 2006-11-23 [2007-01-03]. (原始内容存档于2011-08-26).
- ^ Lindström, Jens. Carakan - By Opera Core Concerns. Opera Software. 2009-02-05 [2009-02-05]. (原始内容存档于2009-02-06).
- ^ Lindström, Jens. Carakan Revisited - By Opera Core Concerns. Opera Software. 2009-12-22 [2009-12-26]. (原始内容存档于2009-12-25).
- ^ Surf in Bed: Nintendo DS Browser hits Japan (新闻稿). Opera Software ASA. 2006-07-24 [2008-11-02]. (原始内容存档于2006-08-14).
- ^ Operating Systems are Less Important: Opera. Techtree. 2008-10-08 [2009-02-25]. (原始内容存档于2008-10-12).
- ^ Play with the Web: Opera browser now available for download on Wii (新闻稿). Opera Software ASA. 2006-12-22 [2008-11-02]. (原始内容存档于2008-05-12).
- ^ Sony Electronics uses the Opera browser for its new mylo personal communicator (新闻稿). Opera Software ASA. 2006-08-23 [2008-11-02]. (原始内容存档于2008-08-29).
- ^ Powered by Opera: Opera Integrated with Adobe Creative Suite 2 (新闻稿). Opera Software ASA. 2005-04-04 [2008-11-02].[永久失效链接]
- ^ Adobe Creative Suite 3 (CS3)uses built-in Opera for rendering engine. 2007-03-28 [2008-04-20]. (原始内容存档于2008-03-03).
- ^ Design Web Pages for the Desktop and Mobile Devices (新闻稿). Virtual Mechanics Inc. 2008-11-18 [2008-11-18]. (原始内容存档于2009-01-09).
- ^ Presto Web rendering engine: Opera 12.15. GitHub. 2017-01-12. (原始内容存档于2017-01-13) (英语).
- ^ Opera Presto source code leaked • r/operabrowser. reddit. [2017-10-12]. (原始内容存档于2019-02-17) (英语).
- ^ Full source code of Opera Presto has been leaked • r/technology. reddit. [2017-10-12]. (原始内容存档于2019-02-17) (英语).
- ^ Presto engine source code available on GitHub • r/operabrowser. reddit. [2017-10-12]. (原始内容存档于2018-11-22) (英语).
- ^ Opera Presto Source Code Leaks Online. Bleeping Computer. [2017-10-12]. (原始内容存档于2017-03-29) (美国英语).
- ^ На GitHub появился странный репозиторий, похожий на исходники движка Opera Presto [закрыто правообладателями]. GeekTimes. [2017-10-12]. (原始内容存档于2017-10-13) (俄语).
- ^ 2017-01-12-Presto.md. GitHub. [2017-10-12]. (原始内容存档于2017-04-12).
- ^ Legacy Opera Presto source code appearance in online sharing sites - Opera Security. Opera Security. 2017-01-18 [2017-10-12]. (原始内容存档于2017-10-13) (美国英语).