Russian Qt Forum
Апрель 27, 2024, 18:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Библиотека Qt портирована для работы внутри web-браузера  (Прочитано 4702 раз)
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« : Декабрь 18, 2009, 23:57 »

Мортен Сорвиг (Morten Sorvig) из компании Nokia сообщил об успешном опыте портирования библиотеки Qt для работы под управлением фреймворка Google Native Client и запуске первых тестовых qt-виджетов в окне web-браузера. Например, продемонстрирован запуск небольшой игры, написанной с задействованием классов QWindowSurface и QGraphicsSystem. При создании порта использован представленный в октябре инструментарий Lighthouse, созданный с целью значительного упрощения переноса Qt на новые платформы.

В текущем состоянии Qt порт для Native Client находится на стадии, позволяющей скомпилировать модули QtCore и QtGui, работают таймеры, ввод данных через клавиатуру и мышь. Так как Native Client не поддерживает загрузку внешних шрифтов Qt может использовать лишь базовый системный шрифт. С небольшими ограничениями поддерживается работа виджетов, написанных с использованием классов QGraphicsView, QPainter, QThread. Из нерешенных пока проблем отмечается 100% загрузка CPU при выполнении Qt программ, что связано с поддержкой в Native Client только модели обработки событий через пуллинг. Для того, чтобы оценить новый порт в действии достаточно установить Native Client и собрать Qt из специальной ветки в Git-репозитории (git://gitorious.org/qt-labs/nacl.git), следуя подготовленному руководству.

Фреймворк Native Client позволяет выполнять в окне web-браузера обычные бинарные приложения, ограниченные в специальном изолированном окружении. В отличии от похожих проектов инструкции при работе программы в Native Client не преобразуются в байткод виртуальной машины, а выполняются как есть, с максимально возможной производительностью (потеря производительности не более 5%). Безопасность в Native Client достигается через изоляцию системных вызовов и прерываний - разрешено выполнение 46 системных вызовов, остальное либо запрещено, либо эмулируется специальным runtime кодом. Сетевые и дисковые функции, а также операции для работы с памятью, обрабатываются специальной подсистемой. Обращение за пределы дозволенных областей памяти блокируются через задействования системы обработки исключений CPU.

С точки зрения разработчика окружение Native Client выглядит как небольшая операционная система со своим, основанным на GCC, инструментарием для кросс-компиляции, частичной поддержкой POSIX и базовым мультимедийным API, который можно использовать для работы с аудио и видео, обрабатываться события от мыши и клавиатуры. Также доступен ряд свойственных web-приложениям функций, таких как загрузка внешней страницы. В этом плане Native Client позволяет организовать выполнение тех же функций, что может обычное web-приложение на JavaScript.

Ссылка на новость

Взято с opennet.ru
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Декабрь 19, 2009, 10:25 »

что-то сильно наворочено, я устал клонировать всё это добро.
QWebClient был заметно проще.
Записан

Юра.
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.103 секунд. Запросов: 23.