Presto是一個由Opera Software開發的網頁瀏覽器排版引擎,由Opera 7.0至12.18版本所使用。

Presto
開發者Opera Software ASA
目前版本2.12.423(2015年3月16日,​9年前​(2015-03-16[1]
程式語言C++[2]
作業系統跨平台
類型應用程式框架英語Application framework軟件元件
許可協定專有
網站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引擎GoogleV8)、MozillaTraceMonkey)及AppleSquirrelFish)已領先一步,加入了機器語言生成。這開闢了在客戶端進行大量計算的可能性,Futhark雖然依舊快速和高效,但仍然無法企及。

2009年2月5日,Opera推出了Carakan引擎,擁有基於暫存器的位元組碼,機器語言生成,自動對象分類及整體效能改進[5][6]

以Presto為基礎的應用程式

網絡瀏覽器

HTML編輯器

原始碼洩漏

12.15版本的原始碼被洩漏到GitHub[14][15][16][17][18][19]。2017年1月14日,在數碼千禧年版權法案的要求下被刪除[20]。2017年1月18日,Opera軟件公司已經確認了原始碼的真實性[21]

參考資料

  1. ^ Dev.Opera — Opera Mini server upgrade. dev.opera.com. [2015-12-28]. (原始內容存檔於2016-01-27). 
  2. ^ Lextrait, Vincent. The Programming Languages Beacon, v10.0. 2010-01 [2010-01-04]. (原始內容存檔於2012-05-30). 
  3. ^ 300 million users and move to WebKit. Opera Software. 2013-02-12 [2013-02-14]. (原始內容存檔於2013-02-14). 
  4. ^ Sivonen, Henri. Names of Browser Engines. 2006-11-23 [2007-01-03]. (原始內容存檔於2011-08-26). 
  5. ^ Lindström, Jens. Carakan - By Opera Core Concerns. Opera Software. 2009-02-05 [2009-02-05]. (原始內容存檔於2009-02-06). 
  6. ^ Lindström, Jens. Carakan Revisited - By Opera Core Concerns. Opera Software. 2009-12-22 [2009-12-26]. (原始內容存檔於2009-12-25). 
  7. ^ Surf in Bed: Nintendo DS Browser hits Japan (新聞稿). Opera Software ASA. 2006-07-24 [2008-11-02]. (原始內容存檔於2006-08-14). 
  8. ^ Operating Systems are Less Important: Opera. Techtree. 2008-10-08 [2009-02-25]. (原始內容存檔於2008-10-12). 
  9. ^ Play with the Web: Opera browser now available for download on Wii (新聞稿). Opera Software ASA. 2006-12-22 [2008-11-02]. (原始內容存檔於2008-05-12). 
  10. ^ Sony Electronics uses the Opera browser for its new mylo personal communicator (新聞稿). Opera Software ASA. 2006-08-23 [2008-11-02]. (原始內容存檔於2008-08-29). 
  11. ^ Powered by Opera: Opera Integrated with Adobe Creative Suite 2 (新聞稿). Opera Software ASA. 2005-04-04 [2008-11-02]. [永久失效連結]
  12. ^ Adobe Creative Suite 3 (CS3)uses built-in Opera for rendering engine. 2007-03-28 [2008-04-20]. (原始內容存檔於2008-03-03). 
  13. ^ Design Web Pages for the Desktop and Mobile Devices (新聞稿). Virtual Mechanics Inc. 2008-11-18 [2008-11-18]. (原始內容存檔於2009-01-09). 
  14. ^ Presto Web rendering engine: Opera 12.15. GitHub. 2017-01-12. (原始內容存檔於2017-01-13) (英語). 
  15. ^ Opera Presto source code leaked • r/operabrowser. reddit. [2017-10-12]. (原始內容存檔於2019-02-17) (英語). 
  16. ^ Full source code of Opera Presto has been leaked • r/technology. reddit. [2017-10-12]. (原始內容存檔於2019-02-17) (英語). 
  17. ^ Presto engine source code available on GitHub • r/operabrowser. reddit. [2017-10-12]. (原始內容存檔於2018-11-22) (英語). 
  18. ^ Opera Presto Source Code Leaks Online. Bleeping Computer. [2017-10-12]. (原始內容存檔於2017-03-29) (美國英語). 
  19. ^ На GitHub появился странный репозиторий, похожий на исходники движка Opera Presto [закрыто правообладателями]. GeekTimes. [2017-10-12]. (原始內容存檔於2017-10-13) (俄語). 
  20. ^ 2017-01-12-Presto.md. GitHub. [2017-10-12]. (原始內容存檔於2017-04-12). 
  21. ^ Legacy Opera Presto source code appearance in online sharing sites - Opera Security. Opera Security. 2017-01-18 [2017-10-12]. (原始內容存檔於2017-10-13) (美國英語).