Presto(ブラウザエンジン)

プレスト
開発者オペラソフトウェアASA
安定版リリース
2.12.423 / 2015年3月16日[ 1 ] (2015年3月16日
書かれたC++ [ 2 ]
オペレーティング·システムLinux非フリーリポジトリ)とWindows
タイプアプリケーションフレームワークブラウザエンジン
ライセンス独自の
Webサイトdev.opera.com

Prestoは、2003年1月28日のOpera 7のリリースから2013年7月2日のOpera 15のリリースまで、Operaウェブブラウザブラウザエンジンでした。Operaは、その時点で元々Chromium用に作成されたBlinkエンジンを使用するように切り替えました。[ 3 ] Prestoは、 Opera MiniおよびOpera Mobileブラウザの動作にも使用されました。

Prestoは動的エンジンです。DOMイベントに応じて、 Webページ全体または一部を再レンダリングできます。リリースでは、 ECMAScriptJavaScript )エンジンの速度向上のため、多数のバグ修正と最適化が行われています。Prestoは独自仕様であり、Operaブラウザの一部としてのみ利用可能です。

ECMAScriptエンジン

Opera では、一連の ECMAScript エンジンが使用されてきた (名前の由来については、以下の文化的な注記を参照)。Presto より前のバージョンの Opera では Linear A エンジンが使用されていた。PrestoのCoreフォークに基づく Opera バージョン ( Opera 7.0 から 9.27) では Linear B エンジンが使用されていた。[ 4 ] Futhark エンジンは Presto の Core 2 フォークの一部のバージョン (Opera 9.5 から Opera 10.10) で使用されている。[ 5 ]リリース時には最速のエンジンであったが、2008 年にGoogle ( V8 )、Mozilla ( SpiderMonkey )、およびApple ( JavaScriptCore ) の新しい世代の ECMAScript エンジンがさらに進歩し、ネイティブ コード生成を導入した。これにより、クライアント側で大量の計算が行われる可能性があり、Futhark は依然として高速で効率的であったものの、追いつくことができなかった。

2009年初頭、OperaはCarakanエンジンを導入しました。このエンジンは、レジスタベースのバイトコード、ネイティブコード生成、自動オブジェクト分類、そして全体的なパフォーマンスの向上を特徴としていました。[ 6 ] [ 7 ] Opera 10.50プレアルファ版の早期アクセスでは、Carakanは競合製品と同等の速度を示し、最もよく使われている3つのベンチマークのうち2つでトップに輝きました。[ 8 ]

歴史と発展

プレストバージョン ECMAScriptエンジンブラウザのコード名 OperaブラウザOperaモバイルその他の用途 新機能
プレプレスト 名前なし名前なし3.0 JavaScriptをサポートした最初のバージョン[ 9 ]
プレプレスト 線文字A エレクトラ/無名[ 10 ] [注 1 ]4.0
1.0 線文字B 名前なし7.0 完全に新しいレンダリングエンジン、ファビコンのサポート[ 11 ]
8.5 「ボルトン」バージョン:最初の完全無料ダウンロードバージョン(広告なしツールバー)
2.0 マーリン 9.0 インターネットチャンネル[ 12 ]Canvas、Acid2テスト: 合格、リッチ テキスト編集、XSLT、XPath
2.1 フサルク チョウゲンボウ 9.5 9.5 [ 13 ]ニンテンドーDSiブラウザSVG Tiny 1.2、CSS としての SVG、<img> としての SVG、オーディオオブジェクト
2.1.1 9.6 スコープAPI[ 14 ] SVGをファビコンとして
2.2 ハヤブサ 9.7 [ 15 ]
2.2.15 10.0 10.1 9.8 [ 16 ]Acid3テスト: 100/100、ピクセルパーフェクト、Webフォント、CSSセレクタAPI、RGBAおよびHSLA不透明度、TLS 1.2、[ 17 ] SVGのFPS、HTMLのSVGフォント
2.3 Opera デバイス SDK 10 CSS3: border-image、border-radius(角丸)、box-shadow、transitions; HTML5: <audio> および <video> 要素
2.4 10 CSS2.1: visibility:collapse; CSS3: transforms; HTML5: <canvas> の影、Web データベース、Web ストレージ、window.btoa、window.atob
2.5.24 カラカン エヴェネス 10.5 10.1 Opera Miniサーバー CSS3: 複数の背景; HTML5: <canvas> テキスト
2.6.30 10.6 WebM、HTML5: AppCacheジオロケーションWebワーカー[ 18 ]
2.7.62 ケヴィク 11.0 11.0 拡張機能WebSocket
2.8.131 バラクーダ 11.1 11.1 Opera Mini サーバー 4.27 WebPFile API 、CSS3 グラデーション ( backgroundおよびbackground-imageプロパティのみ): -o-linear-gradient()、-o-repeating-linear-gradient(); <color-stop>のサポートが追加されました。
2.9.168 メカジキ 11.5 セッション履歴管理、classList (DOMTokenList)
201年2月9日 Android版11.50 ECMAscript厳密モード
2.10.229 マグロ 11.6 11.6 HTML5パーサー、 CSS グラデーション、型付き配列、CSS ユニット「rem」 を完全サポート
2.10.254 ワフー12.0 WebGLハードウェアアクセラレーション[ 19 ]
2.10.289 12.0
2.11.355 マーリンAndroid用12.1 SPDY、CSS3フレックスボックス[ 20 ]
2.12.388 12.10~12.18
  1. ^ Elektra は元々 Opera 4.0 のコードネームでしたが、後にバージョン 3.5 から 6 で使用されていたレイアウト エンジンを指すようになりました。

Prestoベースのアプリケーション

ウェブブラウザ

HTMLエディター

ソースコードの漏洩

バージョン12.15のソースコードは2016年2月11日にGitHubに流出した。 [ 27 ] 2017年1月12日まで気づかれず、2日後にDMCAの要請に応じて削除された。[ 28 ] [ 29 ] Opera Softwareはソースコードの真正性を確認した。[ 30 ]

現在、 https://git.drk.sc/presto/prestoで入手できます。

文化的なメモ

Operaで使用されているECMAScriptエンジンは、解読されていない線文字A、古代ギリシャ線文字B、ルーン文字のフサルクジャワ文字のカラカンなど、古代および伝統的な文字にちなんで名付けられています。[ 6 ]

参照

参考文献

  1. ^ 「Dev.Opera — Opera Miniサーバーのアップグレード」 . dev.opera.com . 2015年12月28日閲覧。
  2. ^ Lextrait, Vincent (2010年1月). 「The Programming Languages Beacon, v10.0」 . 2012年5月30日時点のオリジナルよりアーカイブ2010年1月4日閲覧。
  3. ^ Lawson, Bruce (2013年2月12日). 「3億人のユーザーとWebKitへの移行」 . Opera Software . 2013年2月13日閲覧。
  4. ^ Sivonen, Henri (2006年11月23日). 「ブラウザエンジンの名前」 . 2007年1月3日閲覧
  5. ^ Bointon, Marcus (2006年12月19日). 「SunSpiderベンチマーク:WebKit Rocks」 . Pet Pixels . 2011年8月20日時点のオリジナルよりアーカイブ2007年1月3日閲覧。
  6. ^ a b Lindström, Jens (2009年2月5日). 「Carakan – By Opera Core Concerns」 . Opera Software . 2009年2月6日時点のオリジナルよりアーカイブ。 2009年2月5日閲覧
  7. ^ Lindström, Jens (2009年12月22日). 「Carakan再考 – Opera Core Concernsより」 . Opera Software . 2009年12月25日時点のオリジナルよりアーカイブ2009年12月26日閲覧。
  8. ^ Fulton, Scott M. III (2009年2月22日). 「かつての王者、そして未来の王者:OperaのテストビルドがWindows 7でChromeを圧倒」 . betanews . 2009年2月26日閲覧
  9. ^ 「Operaのアーカイブバージョン履歴 1-12」 . Opera Software. 2013年2月5日. 2025年9月23日閲覧
  10. ^ 「Operaがバージョン履歴を公開、歴史を書き換える」 。2014年2月21日時点のオリジナルよりアーカイブ
  11. ^ 「Opera 7 for Windows の変更ログ」。Opera Software。2017年7月6日時点のオリジナルよりアーカイブ2011年2月28日閲覧。
  12. ^ 「Opera Dragonfly ドキュメント」 . Opera Software . 2009年2月25日時点のオリジナルよりアーカイブ2009年2月27日閲覧。
  13. ^ 「Opera Mobile 9.5 Beta レビューガイド」Opera Software . 2010年2月20日時点のオリジナルよりアーカイブ2009年2月27日閲覧。
  14. ^ Lawson, Bruce (2008年9月10日). 「Opera Presto 2.1 – OperaのコアでサポートされるWeb標準」 . Opera Software . 2009年2月25日時点のオリジナルよりアーカイブ。 2009年2月27日閲覧
  15. ^ 「Opera、CTIA Wireless 2009で新版Opera Mobile 9.7を発表。スマートフォンとモバイルデバイス向けにサーバーアクセラレーションによる完全なWebエクスペリエンスを提供」(プレスリリース)。Opera Software 。2009年3月26日。 2011年10月4日時点のオリジナルよりアーカイブ。 2009年6月11日閲覧
  16. ^ 「Opera Software、ポーランドで成長:国際ウェブブラウザ企業、ワルシャワオフィス開設を祝う」(プレスリリース)Opera Software 2009年6月2日。 2010年2月27日時点のオリジナルよりアーカイブ。 2009年6月11日閲覧
  17. ^ Pettersen、Yngve Nysæter (2009-02-25)。「Opera Presto 2.2 の新機能: TLS 1.2 サポート」オペラソフトウェア2009 年 3 月 4 日にオリジナルからアーカイブされました2009 年 2 月 27 日に取得
  18. ^ Kleinhout, Huib (2010年7月1日). 「Opera 10.60 goes final」 . My Opera . Opera Software . 2010年7月2日時点のオリジナルよりアーカイブ。 2010年7月2日閲覧
  19. ^ 「Opera 12 Alpha の紹介」 My OperaOpera Software 、2011年10月13日。 2011年10月15日時点のオリジナルよりアーカイブ。 2012年1月28日閲覧
  20. ^ 「Opera Mobile 12.1: SPDY、WebSocket、Flexboxなどを搭載」 My OperaOpera Software、2012年10月9日。2012年10月10日時点のオリジナルよりアーカイブ。 2012年10月10日閲覧
  21. ^ 「ベッドでサーフィン:ニンテンドーDSブラウザが日本に登場」(プレスリリース)Opera Software ASA 2006年7月24日。 2006年8月14日時点のオリジナルよりアーカイブ。 2008年11月2日閲覧
  22. ^ Rahul SrinivasJon S. von Tetzchner (2008年10月8日). 「Operating Systems are Less Important: Opera」 . Techtree . 2012年4月15日時点のオリジナルよりアーカイブ。 2009年2月25日閲覧
  23. ^ 「Webで遊ぼう:OperaブラウザがWiiでダウンロード可能に」(プレスリリース)Opera Software ASA 2006年12月22日。 2008年5月12日時点のオリジナルよりアーカイブ。 2008年11月2日閲覧
  24. ^ 「ソニーエレクトロニクス、新型パーソナルコミュニケーター「mylo」にOperaブラウザを採用」(プレスリリース)Opera Software ASA 2006年8月23日。 2008年8月29日時点のオリジナルよりアーカイブ。 2008年11月2日閲覧
  25. ^ 「Powered by Opera: Opera が Adob​​e Creative Suite 2 と統合」(プレスリリース)Opera Software ASA 2005年4月4日2008年11月2日閲覧
  26. ^ 「Adobe Creative Suite 3 (CS3) はレンダリングエンジンとしてOperaを内蔵」 2007年3月28日. 2008年3月3日時点のオリジナルよりアーカイブ。 2008年4月20日閲覧
  27. ^ 「Presto Webレンダリングエンジン:Opera 12.15」。GitHub 。2017年1月12。2017年1月13日時点のオリジナルよりアーカイブ
  28. ^ "2017-01-12-Presto.md" . GitHub . 2017年10月12日閲覧
  29. ^ Cimpanu, Catalin. 「Opera Prestoのソースコードがオンラインで流出」 Bleeping Computer . 2017年10月12日閲覧
  30. ^ 「オンライン共有サイトに旧Opera Prestoのソースコードが登場 – Opera Security」 . Opera Security . 2017年1月18日. 2017年10月12日閲覧