Presto (движок браузера) - Presto (browser engine)

Престо
Presto.svg
Разработчики)Программное обеспечение Opera КАК
Стабильный выпуск
2.12.423 / 16 марта 2015 г.; 5 лет назад (2015-03-16)[1]
Написано вC ++[2]
Операционная системаLinux (несвободный репозитории) и Windows
Доступно варбия
ТипФреймворк приложения, Движок браузера
ЛицензияПроприетарный
Интернет сайтразработчик.opera.com

Престо был движок браузера из Веб-браузер Opera от выпуска Opera 7 28 января 2003 г. до выпуска Opera 15 2 июля 2013 г., когда Opera перешла на использование Мигать двигатель, который изначально создавался для Хром.[3] Presto также использовался для питания опера мини и Opera Mobile браузеры.

Presto - динамичный двигатель. веб-страница может быть полностью или частично перерисован в ответ на События DOM. Его выпуски увидели ряд исправление ошибок и оптимизации для повышения скорости ECMAScript (JavaScript ) двигатель. это проприетарный и доступен только в составе браузеров Opera.

Механизмы ECMAScript

С Opera использовалась последовательность движков ECMAScript. (О происхождении их имен см. Культурные заметки ниже). В версиях Opera, предшествующих Presto, использовался движок Linear A. Версии Opera на базе Core вилка Престо, Опера 7.0–9.27 использовался двигатель Linear B.[4] Движок Futhark используется в некоторых версиях форка Core 2 Presto, а именно от Opera 9.5 до Opera 10.10.[5] На момент выпуска это был самый быстрый движок, но в 2008 году новое поколение движков ECMAScript от Google (V8 ), Mozilla (ПаукОбезьяна ), и яблоко (WebKit ) сделал еще один шаг, представив генерацию собственного кода. Это открывало возможности для тяжелых вычислений на стороне клиента, и Futhark, хотя и оставался быстрым и эффективным, не мог за ним угнаться.

В начале 2009 года Opera представила движок Carakan. Он показал на основе регистров байт-код, генерация собственного кода, автоматическая классификация объектов и общие улучшения производительности.[6][7] Ранний доступ в пре-альфа Opera 10.50 показал, что он работает так же быстро, как и самые быстрые конкуренты, будучи победителем в 2 из 3 наиболее часто используемых ориентиры.[8]

История и развитие

Версия PrestoECMAScript движокКодовое имя браузераБраузер OperaOpera MobileДругое использованиеНовые возможности
pre Prestoниктобезымянный3.5
pre PrestoЛинейное письмо АЭлектра /безымянный [9][примечание 1]4.0
1.0Линейное письмо Bбезымянный7.0совершенно новый движок рендеринга, Фавикон поддерживать[10]
8.5Версия "Bolton": 1-я полностью бесплатная загружаемая версия (панель инструментов без рекламы)
2.0Мерлин9.0Интернет-канал[11]Холст, Кислота2 Тест: пройден, редактирование форматированного текста, XSLT и XPath
2.1ФутаркПустельга9.59.5[12]Браузер Nintendo DSiSVG Tiny 1.2, SVG как CSS, SVG как , аудиообъект
2.1.19.6Scope API,[13] SVG как Фавикон
2.2Сапсан9.7[14]
2.2.1510.0
10.1
9.8[15]Кислота3 тест: 100/100, до пикселя, веб-шрифты, CSS Selectors API, RGBA & HSLA непрозрачность, TLS 1.2.,[16] FPS в SVG, шрифты SVG в HTML
2.3SDK для устройств Opera 10CSS3: border-image, border-radius (закругленные углы), box-shadow, переходы; HTML5: элементы
2.410CSS2.1: видимость: коллапс; CSS3: трансформирует; HTML5: тени, веб-база данных, Веб-хранилище, window.btoa и window.atob
2.5.24CarakanEvenes10.510.1опера мини серверCSS3: несколько фонов; HTML5: Текст
2.6.3010.6WebM; HTML5: AppCache, Геолокация, Веб-воркеры[17]
2.7.62Кьевик11.011.0Расширения, WebSocket
2.8.131Барракуда11.111.1Сервер Opera Mini 4.27WebP, Файловый API, Градиенты CSS3 (только для фон и фоновая картинка properties): -o-linear-gradient (), -o-repeat-linear-gradient (); Поддержка для <color-stop> добавлен.
2.9.168рыба-меч11.5Управление историей сеансов, classList (DOMTokenList)
2.9.20111.50 для AndroidECMAscript строгий режим
2.10.229Туннель11.611.6HTML5 Парсер, полная поддержка CSS градиенты, Типизированные массивы, единица CSS "rem"
2.10.254Wahoo12.0WebGL и аппаратное ускорение[18]
2.10.28912.0
2.11.355Марлин12.1 для AndroidSPDY, CSS3 Flexbox [19]
2.12.38812.10–12.17
  1. ^ Электра изначально был кодовым названием Opera 4.0, но позже стал относиться к механизму компоновки, используемому в версиях с 3.5 по 6.

Приложения на основе Presto

Веб-браузеры

Редакторы HTML

Утечка исходного кода

Исходный код версии 12.15 просочился в GitHub 11 февраля 2016 г.[27] Он оставался незамеченным до 12 января 2017 г., а через два дня был снят в ответ на DMCA запрос.[28][29] Программное обеспечение Opera подтвердил подлинность исходного кода.[30]

Культурные заметки

Механизмы ECMAScript, используемые с Opera, были названы в честь древних и традиционных письменных сценариев, включая древнегреческие. Линейное письмо А и Линейное письмо B, Рунический Футарк, и Яванский каракан.

Смотрите также

Рекомендации

  1. ^ «Dev.Opera - обновление сервера Opera Mini». dev.opera.com. Получено 2015-12-28.
  2. ^ Лекстрейт, Винсент (январь 2010 г.). "Маяк языков программирования, v10.0". Архивировано из оригинал 30 мая 2012 г.. Получено 4 января 2010.
  3. ^ Лоусон, Брюс (12 февраля 2013 г.). «300 миллионов пользователей и переходите на WebKit». Программное обеспечение Opera. Получено 2013-02-13.
  4. ^ Сивонен, Анри (23 ноября 2006 г.). «Имена браузерных движков». Получено 2007-01-03.
  5. ^ Боинтон, Маркус (19 декабря 2006 г.). "SunSpider Benchmarks: WebKit Rocks". Пиксели домашних животных. Архивировано из оригинал на 2011-08-20. Получено 2007-01-03.
  6. ^ Линдстрем, Йенс (05.02.2009). "Carakan - Основные проблемы Opera". Программное обеспечение Opera. Архивировано из оригинал на 2009-02-06. Получено 2009-02-05.
  7. ^ Линдстрем, Йенс (22 декабря 2009 г.). «Возвращение к Чаракану - основные опасения Opera». Программное обеспечение Opera. Архивировано из оригинал на 2009-12-25. Получено 2009-12-26.
  8. ^ Фултон, Скотт М. III (22 февраля 2009 г.). «Король прошлого и будущего: тестовая сборка Opera сокрушает Chrome в Windows 7». Betanews. Получено 2009-02-26.
  9. ^ «Opera публикует историю версий, переписывает историю». Архивировано из оригинал 21 февраля 2014 г.
  10. ^ «История изменений Opera 7 для Windows». Программное обеспечение Opera. Архивировано из оригинал 6 июля 2017 г.. Получено 28 февраля 2011.
  11. ^ "Документация Opera Dragonfly". Программное обеспечение Opera. Архивировано из оригинал на 2009-02-25. Получено 2009-02-27.
  12. ^ "Руководство для обозревателя Opera Mobile 9.5 Beta". Программное обеспечение Opera. Архивировано из оригинал на 2010-02-20. Получено 2009-02-27.
  13. ^ Лоусон, Брюс (10 сентября 2008 г.). «Opera Presto 2.1 - веб-стандарты, поддерживаемые ядром Opera». Программное обеспечение Opera. Получено 2009-02-27.
  14. ^ «Opera анонсирует новую версию Opera Mobile 9.7 на выставке CTIA Wireless 2009 - полноценный веб-интерфейс с серверным ускорением для смартфонов и мобильных устройств» (Пресс-релиз). Программное обеспечение Opera. 2009-03-26. Архивировано из оригинал на 2011-08-26. Получено 2009-06-11.
  15. ^ «Opera Software растет в Польше: международная компания-производитель веб-браузеров отмечает открытие офиса в Варшаве» (Пресс-релиз). Программное обеспечение Opera. 2009-06-02. Архивировано из оригинал на 2010-02-27. Получено 2009-06-11.
  16. ^ Петтерсен, Ингве Нисетер (25 февраля 2009 г.). «Новое в Opera Presto 2.2: поддержка TLS 1.2». Программное обеспечение Opera. Архивировано из оригинал на 2009-03-04. Получено 2009-02-27.
  17. ^ Kleinhout, Huib (1 июля 2010 г.). "Opera 10.60 выходит в финал". Моя опера. Программное обеспечение Opera. Архивировано из оригинал 2 июля 2010 г.. Получено 2 июля 2010.
  18. ^ «Представляем Opera 12 Alpha». Моя опера. Программное обеспечение Opera. 13 октября 2011. Архивировано с оригинал 15 октября 2011 г.. Получено 28 января 2012.
  19. ^ «Opera Mobile 12.1: с SPDY, WebSockets, Flexbox и др.». Моя опера. Программное обеспечение Opera. 9 октября 2012. Архивировано с оригинал 10 октября 2012 г.. Получено 10 октября 2012.
  20. ^ "Серфинг в постели: браузер Nintendo DS в Японии" (Пресс-релиз). Программное обеспечение Opera ASA. 2006-07-24. Архивировано из оригинал на 2006-08-14. Получено 2008-11-02.
  21. ^ Рахул Шринивас и Йон С. фон Течнер (2008-10-08). «Операционные системы менее важны: Opera». Techtree. Архивировано из оригинал 15 апреля 2012 г.. Получено 2009-02-25.
  22. ^ «Играйте в Интернете: браузер Opera теперь доступен для загрузки на Wii» (Пресс-релиз). Программное обеспечение Opera ASA. 2006-12-22. Архивировано из оригинал на 2008-05-12. Получено 2008-11-02.
  23. ^ «Sony Electronics использует браузер Opera для своего нового персонального коммуникатора mylo» (Пресс-релиз). Программное обеспечение Opera ASA. 2006-08-23. Архивировано из оригинал на 2008-08-29. Получено 2008-11-02.
  24. ^ «На платформе Opera: Opera, интегрированная с Adobe Creative Suite 2» (Пресс-релиз). Программное обеспечение Opera ASA. 2005-04-04. Получено 2008-11-02.[постоянная мертвая ссылка ]
  25. ^ «Adobe Creative Suite 3 (CS3) использует встроенную Opera для механизма рендеринга». 2007-03-28. Архивировано из оригинал на 2008-03-03. Получено 2008-04-20.
  26. ^ «Дизайн веб-страниц для настольных и мобильных устройств» (Пресс-релиз). Virtual Mechanics Inc. 18 ноября 2008 г. Архивировано из оригинал на 2009-01-09. Получено 2008-11-18.
  27. ^ "Механизм веб-рендеринга Presto: Opera 12.15". GitHub. 2017-01-12. Архивировано из оригинал на 2017-01-13.
  28. ^ "2017-01-12-Presto.md". GitHub. Получено 2017-10-12.
  29. ^ Чимпану, Каталин. "Утечка исходного кода Opera Presto в Интернете". Пищевой компьютер. Получено 2017-10-12.
  30. ^ «Появление устаревшего исходного кода Opera Presto на сайтах обмена в Интернете - Opera Security». Opera Security. 2017-01-18. Получено 2017-10-12.

внешняя ссылка