Престо (браузерный движок)
Разработчик(и) | Программное обеспечение Opera ASA |
---|---|
Стабильная версия | 2.12.423 / 16 марта 2015 г [1] |
Написано в | С++ [2] |
Операционная система | Linux ( несвободные репозитории) и Windows |
Тип | Платформа приложения , Движок браузера |
Лицензия | Собственный |
Веб-сайт | разработчик |
Presto был браузерным движком с веб-браузера Opera момента выпуска Opera 7 28 января 2003 года до выпуска Opera 15 2 июля 2013 года, после чего Opera перешла на использование движка Blink , который изначально был создан для Chromium . [3] Presto также использовался для работы браузеров Opera Mini и Opera Mobile .
Presto — динамичный двигатель. Веб-страницы могут полностью или частично перерисовываться в ответ на события DOM . В его выпусках исправлен ряд ошибок и проведена оптимизация для повышения скорости движка ECMAScript ( JavaScript ). Он является проприетарным и доступен только как часть браузеров Opera.
Механизмы ECMAScript
[ редактировать ]В Opera использовалось несколько движков ECMAScript. (Происхождение их названий см. в разделе «Заметки о культуре» ниже.) В версиях Opera до Presto использовался движок Linear A. Версии Opera, основанные на базовой вилке Presto, Opera с 7.0 по 9.27, использовали движок Linear B. [4] Движок Futhark используется в некоторых версиях вилки Presto Core 2, а именно от Opera 9.5 до Opera 10.10. [5] На момент выпуска это был самый быстрый движок, но в 2008 году новое поколение движков ECMAScript от Google ( V8 ), Mozilla ( SpiderMonkey ) и Apple ( JavaScriptCore ) сделало еще один шаг, представив собственную генерацию кода. Это открывало возможности для тяжелых вычислений на стороне клиента, и Футарк, хотя и оставался быстрым и эффективным, не мог справиться с ним.
В начале 2009 года Opera представила движок Carakan. Он включал байт -код на основе регистров , генерацию собственного кода, автоматическую классификацию объектов и общее улучшение производительности. [6] [7] Ранний доступ в пре-альфа Opera 10.50 показал, что она не уступает по скорости самым быстрым конкурентам, став победителем в 2 из 3 наиболее часто используемых тестов . [8]
История и развитие
[ редактировать ]Престо Версия | Механизм ECMAScript | Кодовое имя браузера | Браузер Опера | Опера Мобайл | Другое использование | Новые возможности |
---|---|---|---|---|---|---|
до скорого | никто | безымянный | 3.5 | |||
до скорого | Линейное письмо А | Электра/ безымянный [9] [примечание 1] | 4.0 | |||
1.0 | Линейное письмо Б | безымянный | 7.0 | совершенно новый движок рендеринга, Favicon поддержка [10] | ||
8.5 | Версия «Болтон»: первая полностью бесплатная версия для скачивания (панель инструментов без рекламы). | |||||
2.0 | Мерлин | 9.0 | Интернет-канал [11] | Canvas, тест Acid2 : пройден, расширенное редактирование текста, XSLT и XPath | ||
2.1 | Футарк | Пустельга | 9.5 | 9.5 [12] | Браузер Nintendo DSi | SVG Tiny 1.2, SVG как CSS, SVG как <img>, аудиообъект |
2.1.1 | 9.6 | Область API , [13] SVG как фавикон | ||||
2.2 | Перегрин | 9.7 [14] | ||||
2.2.15 | 10.0 10.1 | 9.8 [15] | Тест Acid3 : 100/100, пиксельная точность, веб-шрифты, API селекторов CSS, RGBA и HSLA непрозрачность , TLS 1.2., [16] FPS в SVG, шрифты SVG в HTML | |||
2.3 | SDK 10 для устройств Opera | CSS3: border-image, border-radius (закругленные углы), box-shadow, переходы; HTML5: элементы <audio> и <video> | ||||
2.4 | 10 | CSS2.1: видимость: свернуть; CSS3: преобразует; HTML5: тени <canvas>, веб-база данных, веб-хранилище , window.btoa и window.atob. | ||||
2.5.24 | Как это сделать | Эвены | 10.5 | 10.1 | Опера Мини Сервер | CSS3: несколько фонов; HTML5: <canvas> Текст |
2.6.30 | 10.6 | ВебМ ; HTML5: AppCache , геолокация , веб-воркеры [17] | ||||
2.7.62 | Кжевик | 11.0 | 11.0 | Расширения , WebSocket | ||
2.8.131 | Барракуда | 11.1 | 11.1 | Сервер Опера Мини 4.27 | WebP , File API , градиенты CSS3 (только для свойств фона и фонового изображения ): -o-linear-gradient(), -o-repeating-linear-gradient(); Добавлена поддержка <color-stop> . | |
2.9.168 | рыба-меч | 11.5 | Управление историей сеансов, classList (DOMTokenList) | |||
2.9.201 | 11.50 для Android | ECMAscript Строгий режим | ||||
2.10.229 | Тунец | 11.6 | 11.6 | HTML5 Parser, полная поддержка CSS-градиентов , типизированных массивов, CSS-модуля «rem». | ||
2.10.254 | Ваху | 12.0 | WebGL и аппаратное ускорение [18] | |||
2.10.289 | 12.0 | |||||
2.11.355 | Марлин | 12.1 для Андроид | SPDY , CSS3 Flexbox [19] | |||
2.12.388 | 12.10–12.18 |
- ^ Первоначально Elektra была кодовым названием Opera 4.0, но позже стала относиться к более общему механизму компоновки, используемому в версиях с 3.5 по 6.
Приложения на базе Presto
[ редактировать ]Веб-браузеры
[ редактировать ]- Опера
- Опера с 7 до 12
- Опера Мобайл с 9,5 до 12
- Opera Mini (продолжает использовать рендеринг Presto на промежуточном сервере на телефонах с клавиатурой и в режиме Extreme на устройствах Android)
- Нинтендо
- Браузер Nintendo DS (на основе Opera) [20]
- Браузер Nintendo DSi (на основе Opera) [21]
- Wii Браузер интернет-каналов (на основе Opera) [22]
- Браузер Nokia 770 (на базе Opera)
- Sony Mylo COM-1's Browser (based on Opera) [23]
HTML-редакторы
[ редактировать ]- Macromedia Dreamweaver MX для Dreamweaver CS3 (CS4/CS5 использует WebKit )
- Adobe Creative Suite 2 [24] и 3 [25]
Утечка исходного кода
[ редактировать ]Исходный код версии 12.15 попал на GitHub 11 февраля 2016 года. [26] Он оставался незамеченным до 12 января 2017 года и был удален через два дня в ответ на запрос DMCA . [27] [28] Opera Software подтвердила подлинность исходного кода. [29]
Культурные заметки
[ редактировать ]Движки ECMAScript, используемые в Opera, были названы в честь древних и традиционных письменностей, включая нерасшифрованное линейное письмо A , древнегреческое линейное письмо B , рунический Футарк и яванский каракан .
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Dev.Opera — Обновление сервера Opera Mini» . dev.opera.com . Проверено 28 декабря 2015 г.
- ^ Лекстрейт, Винсент (январь 2010 г.). «Маяк языков программирования, v10.0» . Архивировано из оригинала 30 мая 2012 года . Проверено 4 января 2010 г.
- ^ Лоусон, Брюс (12 февраля 2013 г.). «300 миллионов пользователей и переход на WebKit» . Программное обеспечение Опера . Проверено 13 февраля 2013 г.
- ^ Сивонен, Анри (23 ноября 2006 г.). «Имена браузерных движков» . Проверено 3 января 2007 г.
- ^ Бойнтон, Маркус (19 декабря 2006 г.). «Тесты SunSpider: WebKit просто потрясающий» . Пиксели домашних животных . Архивировано из оригинала 20 августа 2011 г. Проверено 3 января 2007 г.
- ^ Линдстрем, Йенс (5 февраля 2009 г.). «Каракан - основные проблемы Opera» . Программное обеспечение Опера . Архивировано из оригинала 06 февраля 2009 г. Проверено 5 февраля 2009 г.
- ^ Линдстрем, Йенс (22 декабря 2009 г.). «Возвращение к Каракану – основные проблемы Opera» . Программное обеспечение Опера . Архивировано из оригинала 25 декабря 2009 г. Проверено 26 декабря 2009 г.
- ^ Фултон, Скотт М. III (22 февраля 2009 г.). «Король прошлого и будущего: тестовая сборка Opera сокрушает Chrome в Windows 7» . бетаньюс . Проверено 26 февраля 2009 г.
- ^ «Опера публикует историю версий, переписывает историю» . Архивировано из оригинала 21 февраля 2014 г.
- ^ «Журнал изменений Opera 7 для Windows» . Программное обеспечение Опера. Архивировано из оригинала 6 июля 2017 года . Проверено 28 февраля 2011 г.
- ^ «Документация Opera Dragonfly» . Программное обеспечение Опера . Архивировано из оригинала 25 февраля 2009 г. Проверено 27 февраля 2009 г.
- ^ «Руководство рецензента по бета-версии Opera Mobile 9.5» . Программное обеспечение Опера . Архивировано из оригинала 20 февраля 2010 г. Проверено 27 февраля 2009 г.
- ^ Лоусон, Брюс (10 сентября 2008 г.). «Opera Presto 2.1 — веб-стандарты, поддерживаемые ядром Opera» . Программное обеспечение Опера . Архивировано из оригинала 25 февраля 2009 г. Проверено 27 февраля 2009 г.
- ^ «На выставке CTIA Wireless 2009 компания Opera анонсирует новую версию Opera Mobile 9.7 – полнофункциональную веб-версию с серверным ускорением для смартфонов и мобильных устройств» (пресс-релиз). Программное обеспечение Опера . 26 марта 2009 г. Архивировано из оригинала 4 октября 2011 г. Проверено 11 июня 2009 г.
- ^ «Программное обеспечение Opera растет в Польше: международная компания-производитель веб-браузеров празднует открытие офиса в Варшаве» (пресс-релиз). Программное обеспечение Опера . 02.06.2009. Архивировано из оригинала 27 февраля 2010 г. Проверено 11 июня 2009 г.
- ^ Петтерсен, Ингве Нюсетер (25 февраля 2009 г.). «Новое в Opera Presto 2.2: поддержка TLS 1.2» . Программное обеспечение Опера . Архивировано из оригинала 4 марта 2009 г. Проверено 27 февраля 2009 г.
- ^ Кляйнхаут, Хуиб (1 июля 2010 г.). «Опера 10.60 выходит в финал» . Моя Опера . Программное обеспечение Опера . Архивировано из оригинала 2 июля 2010 года . Проверено 2 июля 2010 г.
- ^ «Представляем Opera 12 Alpha» . Моя Опера . Программное обеспечение Опера . 13 октября 2011 года. Архивировано из оригинала 15 октября 2011 года . Проверено 28 января 2012 г.
- ^ «Opera Mobile 12.1: с SPDY, WebSockets, Flexbox и многим другим» . Моя Опера . Программное обеспечение Опера . 9 октября 2012 года. Архивировано из оригинала 10 октября 2012 года . Проверено 10 октября 2012 г.
- ^ «Серфинг в постели: браузер Nintendo DS выходит в Японию» (пресс-релиз). Программное обеспечение Opera ASA . 24 июля 2006 г. Архивировано из оригинала 14 августа 2006 г. Проверено 2 ноября 2008 г.
- ^ Рахул Сринивас и Джон С. фон Течнер (08 октября 2008 г.). «Операционные системы менее важны: Opera» . Технодерево . Архивировано из оригинала 15 апреля 2012 года . Проверено 25 февраля 2009 г.
- ^ «Играйте через Интернет: браузер Opera теперь доступен для загрузки на Wii» (пресс-релиз). Программное обеспечение Opera ASA . 22 декабря 2006 г. Архивировано из оригинала 12 мая 2008 г. Проверено 2 ноября 2008 г.
- ^ «Sony Electronics использует браузер Opera для своего нового персонального коммуникатора mylo» (Пресс-релиз). Программное обеспечение Opera ASA . 23 августа 2006 г. Архивировано из оригинала 29 августа 2008 г. Проверено 2 ноября 2008 г.
- ^ «На платформе Opera: Opera интегрирована с Adobe Creative Suite 2» (пресс-релиз). Программное обеспечение Opera ASA . 4 апреля 2005 г. Проверено 2 ноября 2008 г. [ постоянная мертвая ссылка ]
- ^ «Adobe Creative Suite 3 (CS3) использует встроенный механизм Opera для рендеринга» . 28 марта 2007 г. Архивировано из оригинала 3 марта 2008 г. Проверено 20 апреля 2008 г.
- ^ «Механизм веб-рендеринга Presto: Opera 12.15» . Гитхаб . 12 января 2017 г. Архивировано из оригинала 13 января 2017 г.
- ^ "2017-01-12-Presto.md" . Гитхаб . Проверено 12 октября 2017 г.
- ^ Чимпану, Каталин. «Исходный код Opera Presto попал в сеть» . Пипящий компьютер . Проверено 12 октября 2017 г.
- ^ «Появление устаревшего исходного кода Opera Presto на сайтах обмена файлами в Интернете – Opera Security» . Безопасность Оперы . 18 января 2017 г. Проверено 12 октября 2017 г.