EA006814B1 - Система и способ использования множества приложений - Google Patents

Система и способ использования множества приложений Download PDF

Info

Publication number
EA006814B1
EA006814B1 EA200401224A EA200401224A EA006814B1 EA 006814 B1 EA006814 B1 EA 006814B1 EA 200401224 A EA200401224 A EA 200401224A EA 200401224 A EA200401224 A EA 200401224A EA 006814 B1 EA006814 B1 EA 006814B1
Authority
EA
Eurasian Patent Office
Prior art keywords
server
user
machine
platform
application
Prior art date
Application number
EA200401224A
Other languages
English (en)
Other versions
EA200401224A1 (ru
Inventor
Чандрасекар с/о Ратакришнан
Конг Лум Хон
Original Assignee
Радикс Пте Лтд.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Радикс Пте Лтд. filed Critical Радикс Пте Лтд.
Publication of EA200401224A1 publication Critical patent/EA200401224A1/ru
Publication of EA006814B1 publication Critical patent/EA006814B1/ru

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72445User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting Internet browser applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/549Remote execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

Система потоковой передачи данных с сервера на машину пользователя, отличающаяся тем, что информацию направляют на машину пользователя в виде потока данных, которые должны быть выведены на дисплей машины пользователя с разрешением, определяемым способностью машины пользователя выводить данные на дисплей. Указанная информация включает в себя данные, которые могут быть использованы в машине пользователя для управления работой приложения, причем это приложение исполняют на сервере, который посылает на машину пользователя данные, необходимые ей для управления работой приложения и вывода результатов на дисплей. Машина пользователя имеет дисплей, на который выводят данные в соответствии c его разрешением и который действует как дисплей сервера. Чтобы сервер мог исполнять приложение с выводом результатов на дисплей, используют операционную систему, выполненную в архитектуре одного операционного уровня на машине пользователя. Упомянутые данные могут представлять собой файл формата HTML, выводимый на дисплей машины пользователя, причем сервер преобразует этот файл из мультимедийного формата в универсальный мультимедийный формат, согласованный между сервером и машиной пользователя, и/или изменяет его размер перед потоковой отправкой на машину пользователя. Приложение исполняют в защищенном окружении, в котором предусмотрены средства контроля доступа, ограничивающие доступ приложения по меньшей мере к одной защищенной области системы. Сервер может послать на машину пользователя дистрибутив с командами для автоматической установки, причем указанные команды перед отправкой упакованы вместе с дистрибутивом таким образом, что после их получения машина пользователя сама сможет распаковать дистрибутив и команды, выполнить эти команды и запустить программу установки дистрибутива на машине пользователя.

Description

Область изобретения
Настоящее изобретение относится к системе и способу использования множества приложений и, в частности, но не только, к указанным системе и способу для их использования в рабочем окружении мобильных компьютеров.
Терминология
В контексте настоящего описания под машиной подразумеваются: персональный компьютер (ПК), настольный компьютер, дорожный компьютер, ноутбук, ΡΌΑ (Рег8оиа1 ЭщЦа1 ΛδδίδΙαηΙ - карманный компьютер) и мобильный/сотовый/ручной телефон (мобильный телефон).
Предпосылки изобретения
Большинство компьютерных приложений предназначено для использования на персональных или настольных компьютерах. Указанные приложения часто включают файлы очень большого объема и занимают значительный объем оперативной памяти. Для того чтобы машина пользователя могла осуществлять нормальные функции связи с внешними системами, например, прием и отправку электронной почты, работу в Интернете или воспроизведение разного рода мультимедийных файлов, на ней должно быть установлено несколько приложений, возможно, работающих одновременно. Для большинства ПК, имеющих жесткий диск и ВАМ, обычно это не составляет проблемы. Однако для многих ноутбуков, а тем более ΡΌΑ и мобильных телефонов, это может стать серьезной проблемой. Нередко подобные системы либо используют усеченные версии соответствующих приложений, либо вообще не могут использовать все необходимые приложения. Все это создает определенные трудности, особенно, когда необходимо установить связь с ПК с помощью мобильного телефона, ΡΌΑ и т.п. Это также означает, что возможности ΡΌΑ или мобильных телефонов ограничены теми приложениями, которые они способны выполнять. Не все машины способны обеспечить взаимодействие между приложениями, разработанными для разных операционных сред, внутри одной операционной системы. Обычно каждое приложение разрабатывают для одного определенного окружения, что исключает возможность их взаимодействия.
Уровень техники
Существующее операционное окружение для портативных компьютерных систем не содержит решений, способных реально удовлетворить требованиям практики. Программное обеспечение, способное в полной мере использовать потенциал мобильных устройств, в настоящее время отсутствует, что существенно ограничивает возможности последних, особенно по сравнению с настольными компьютерами. На практике в мобильные устройства были встроены усеченные версии операционных систем настольных компьютеров. С точки зрения функциональности они унаследовали недостатки операционных систем. Среди существующих систем такого рода можно назвать \νίη СЕ, Ραίιη 08, 8ушЫап и 1ауа 08. Практически эти усеченные операционные системы отличаются между собой только названиями фирмразработчиков.
Все эти системы имеют одинаковую архитектуру, отличаясь лишь интерфейсами. Названные встроенные операционные системы построены по образу и подобию операционных систем настольных компьютеров, в которых доступ к приложениям осуществляется из соответствующего рабочего окружения, свойственного настольным компьютерам, а исполнение приложений происходит на другом уровне. Именно таким образом строилась архитектура νίηάον и Мас 08 для персонального рабочего окружения. Эта модель вполне подходила для окружения персонального компьютера, имеющего возможность использования большой вычислительной мощности и высокопроизводительного аппаратного обеспечения, в том числе, например, жестких дисков, больших модулей памяти, мощных видеокарт и высококачественных звуковых карт. Ограниченное пространство мобильных устройств не позволяет использовать подобные возможности аппаратного обеспечения. В ограниченном пространстве мобильных устройств возможности аппаратного обеспечения существенно меньше. Для встроенного аппаратного обеспечения этих устройств характерны более низкая вычислительная мощность, а также относительно малые объемы дисковой и оперативной памяти. Полномасштабные версии операционных систем не дают пользователю возможности оптимизировать работу своего компьютера даже при использовании продвинутого программного обеспечения. В частности, нередки случаи аварийной остановки системы, снижения ее быстродействия; часто приходится иметь дело с различными файловыми форматами, что требует применения различных проигрывателей от различных производителей.
Все это приводит к тому, что приходится пользоваться усеченными версиями, не обеспечивающими нужного уровня качества работы. В результате такие усеченные версии не позволяют достичь провозглашаемой их разработчиками цели - обеспечить пользователям возможность работы на компьютере на ходу.
Использование многоуровневых полномасштабных операционных систем, встраиваемых в мобильные устройства в качестве усеченных версий, представляет собой компромиссное решение.
Поэтому главной целью настоящего изобретения является создание системы и способа использования множества полномасштабных приложений на машинах пользователей, в первую очередь - на мобильных машинах, например, таких как ΡΌΑ или мобильные телефоны, где исполнение приложений происходит не на машине пользователя, а на сервере. При этом управление работой приложений может также осуществляться с машины пользователя.
- 1 006814
Еще одной целью настоящего изобретения является создание такой системы, в которой дисплей машины пользователя действует в качестве дисплея сервера, обеспечивая тем самым возможность нормального управления работой приложений с машины пользователя.
И, наконец, еще одной целью настоящего изобретения является создание такой системы, с помощью которой сервер посылает данные для вывода на дисплей машины пользователя с автоматическим приведением разрешения в соответствие с разрешающей способностью дисплея.
Сущность изобретения
Имея в виду вышеперечисленные и другие цели, в настоящем изобретении предложена система для потоковой передачи данных с сервера на машину пользователя, отличающаяся тем, что данные передают на машину пользователя в виде потока данных для вывода на ее дисплей с разрешением, определяемым способностью машины пользователя выводить данные на дисплей. Данные включают байты компьютерных кодов.
Другая форма реализации настоящего изобретения представляет собой систему, позволяющую серверу обеспечить управление работой приложения с машины пользователя, в то время как исполнение приложения происходит на сервере, а данные, необходимые для того, чтобы машина пользователя могла управлять исполнением приложения и выводить соответствующую информацию на дисплей, передаются на машину пользователя в виде потока данных для вывода на дисплей машины пользователя с разрешением, определяемым способностью машины пользователя управлять исполнением приложения и выводить данные на дисплей.
Настоящее изобретение представляет также операционную систему для провайдера услуги, использующей приложение, отличающуюся тем, что это приложение исполняется на сервере, причем сервер служит для потоковой передачи данных для вывода на дисплей машины пользователя, причем данные передают с разрешением, соответствующим разрешению этого дисплея, который при этом действует в качестве дисплея сервера. На сервере можно исполнять множество различных приложений под одной операционной системой, обеспечивая потоковую передачу данных для вывода на дисплей без необходимости запуска множества приложений или наличия их родных операционных систем.
Еще одна форма реализации настоящего изобретения представляет собой систему программного обеспечения, позволяющую серверу исполнять приложение для вывода на дисплей машины пользователя, откуда можно управлять исполнением приложения, причем упомянутая система программного обеспечения на машине пользователя выполнена в архитектуре одного операционного уровня. Система программного обеспечения может включать в себя платформу для работы на машине пользователя, причем эта платформа включает в себя машину платформы, действующую как операционная система. Желательно, чтобы операционная система обеспечивала безопасность, поддержку драйверов, управление питанием, работу загрузчика и файловую систему. На сервере также может быть использована архитектура с одним операционным уровнем.
Настоящее изобретение также предлагает систему, позволяющую серверу обеспечить потоковую передачу данных на машину пользователя таким образом, чтобы на ее дисплей выводились любые мультимедийные файлы, с преобразованием любых таких мультимедийных файлов из оригинального формата в универсальный мультимедийный формат, согласованный между сервером и машиной пользователя. Для обеспечения потоковой передачи данных в реальном масштабе времени преобразование осуществляют с постоянными значениями степени компрессии.
Настоящее изобретение также предлагает систему, позволяющую серверу обеспечить потоковую передачу данных на машину пользователя таким образом, чтобы на ее дисплее могли отображаться НТМЬ файлы, причем упомянутый сервер включает в себя сервер для изменения размера НТМЬ файлов перед отправкой их на машину пользователя. Размеры любых изображений в НТМЬ файлах могут быть изменены таким образом, чтобы они полностью отображались на дисплее машины пользователя. Для того чтобы мультимедийный НТМЬ файл мог быть выведен на дисплей машины пользователя, выполняют анализ данного файла и модифицируют его код. Указанный процесс происходит автоматически.
Еще одна форма реализации настоящего изобретения включает систему, позволяющую серверу обеспечить машине пользователя возможность управлять исполнением приложения на сервере, причем это исполнение происходит в защищенном окружении, в котором предусмотрены средства контроля доступа, ограничивающие доступ приложения по меньшей мере к одной защищенной области системы. Приложение может быть скопировано в защищенное окружение перед исполнением.
И, наконец, еще одна форма реализации настоящего изобретения представляет собой систему, предусматривающую наличие на сервере дистрибутива для установки на машине пользователя, причем сервер посылает упомянутый дистрибутив на машину пользователя с командами для его автоматической установки на машине пользователя, указанные команды перед отправкой упаковывают вместе с дистрибутивом таким образом, чтобы машина пользователя смогла распаковать дистрибутив и команды, выполнить эти команды и запустить программу установки дистрибутива на машине пользователя. Дистрибутив может содержать драйвер устройства; в этом случае файлы драйвера устройства копируются в область расположения системных файлов и происходит обновление настроек системы. Можно организовать регистрацию процесса установки драйверов устройств, используемых на машине пользователя, с
- 2 006814 тем, чтобы наиболее часто используемые драйверы устройств хранились в памяти сервера. В качестве памяти может быть использовано постоянное запоминающее устройство.
Дистрибутив может содержать также обновление операционной системы, работающей на машине пользователя; в этом случае новый файл при установке копируется на сервер.
Настоящее изобретение включает в себя все возможные комбинации всех форм его реализации.
Описание чертежей
Для того чтобы настоящее изобретение могло бы быть наиболее полным образом понято и оперативно внедрено в практику, далее раскрыта его предпочтительная реализация - в качестве примера, который никоим образом не ограничивает объем настоящего изобретения; при этом выполнены ссылки на следующие прилагаемые иллюстративные материалы.
На фиг. 1 изображена общая диаграмма платформы, применяемой на машине пользователя;
на фиг. 2 - схема аутентификации пользователя в соответствии с фиг. 1;
на фиг. 3 - схема визуализации НТМЬ файла в соответствии с фиг. 1;
на фиг. 4 - схема запуска мультимедийного плагина согласно фиг. 1;
на фиг. 5 - схема запуска удаленного приложения в соответствии с фиг. 1;
на фиг. 6 - схема обновления системы в соответствии с фиг. 11;
на фиг. 7 - общая схема ответа платформы на входной сигнал;
на фиг. 8 - последовательность операций при наличии входа от пользователя в соответствии с фиг. 7; на фиг. 9 - последовательность операций при наличии входа от системы в соответствии с фиг. 7; на фиг. 10 - последовательность операций при наличии входа от сервера в соответствии с фиг. 7; на фиг. 11 - общая схема работы сервера (начальная стадия);
на фиг. 12 - общая схема работы сервера (конечная стадия);
на фиг. 13 - схема процесса аутентификации пользователя в соответствии с фиг. 11 и 12;
на фиг. 14 - схема процесса изменения размера и кэширования НТМЬ файла в соответствии с фиг. 11 и 12;
на фиг. 15 - схема передачи потока мультимедийных данных в соответствии с фиг. 11 и 12;
на фиг. 16 - схема процесса запуска приложения (начальная стадия);
на фиг. 17 - схема процесса запуска приложения (конечная стадия);
на фиг. 18 - схема обработки запроса на загрузку драйвера устройства в соответствии с фиг. 11 и 12; на фиг. 19 - схема процесса обновления операционной системы в соответствии с фиг. 11 и 12;
на фиг. 20 - схема архитектуры платформы;
на фиг. 21 - схема архитектуры машины сервера;
на фиг. 22 - схема хостинга приложения.
Описание предпочтительной формы реализации изобретения
Хотя нижеследующее описание относится к мобильному компьютерному окружению (например, мобильный телефон, ΡΌΑ и т.п.), настоящее изобретение может быть использовано применительно к любой машине, способной поддерживать соединение с сервером через телекоммуникационную сеть.
В номерах ссылок в нижеследующем описании первые две цифры обозначают номер чертежа, на котором находится описываемый объект/блок. Например, ссылка под номером 0605 означает блок 5 на фиг. 6, а ссылка под номером 0700 относится к фиг. 7.
Обратившись вначале к фиг. 20, мы видим, что платформа построена на основе архитектуры с одним операционным уровнем (8ОЬА - 8шд1е Орегайид Ьауег АгсЫ1ес1иге) и включает управляющую программу машины 2001, а также приемник информации машины 2020. Управляющая программа машины 2001 обеспечивает программный интерфейс 2002, в том числе интерфейс Интернета и интерфейс удаленного приложения. Приемник информации машины обеспечивает поддержку интерфейса родного аппаратного обеспечения.
Платформа имеет только собственную машину. Исходно предусмотрена визуализация оболочки, обеспечиваемой машиной платформы, с помощью упомянутой машины платформы. Машина платформы обеспечивает вывод НТМЬ и мультимедийных файлов в качестве исходно предусмотренной поддержки ввода/вывода. Не предусмотрено никаких ΑΡΙ (программных интерфейсов приложений); т.е. уровень приложений как таковой отсутствует. Это, в частности, снижает вероятность получения прямого аппаратного доступа со стороны приложений, разработанных третьей стороной. Такой подход позволяет машине платформы обнаруживать любые попытки доступа с использованием родного интерфейса. Исполнение приложений поверх машины платформы исключено. Вместо этого создают сеансы для работы с приложениями, которые исполняются на удаленном сервере.
Любые обращения приложений к какому-либо ΑΡΙ исключаются, иначе говоря, программный уровень также отсутствует. Вместо этого ΑΡΙ, вызываемые внешними приложениями, преобразуют в команды, идущие как в машину сервера, так и в машину платформы. Именно поэтому исполнение приложений поверх машины платформы исключено. В любой момент времени машина платформы получает команды только от пользователя и сервера. Кроме того, веб-контент имеет возможность вызова команд, которые могут быть использованы для выполнения задач аппаратной обработки. Подобные вызовы отличаются от
- 3 006814 вызовов ΑΡΙ, поскольку при каждом вызове команд они анализируются, так что веб-контент и удаленные приложения не имеют прямого доступа к аппаратным ресурсам.
Поскольку исполнение приложений происходит на сервере, они не обязательно должны представлять собой усеченную версию существующей операционной системы. Необходимые данные машина платформы получает от машины сервера. Эти данные выводятся на дисплей (например, экран) машины пользователя. Способность поддерживать веб-контент формата НТМЬ 4.0 означает, что платформа предоставляет пользователю, работающему на мобильной машине, возможность использовать ресурсы Интернета в полном объеме. При первом соединении с сервером платформа сообщает ему сведения о машине пользователя (включая разрешение дисплея) с тем, чтобы все данные, посылаемые на машину пользователя, могли быть обработаны платформой и выведены на дисплей машины пользователя.
Универсальный мультимедийный формат 2004 дает пользователю возможность запрашивать любой мультимедийный контент в любом файловом формате и проигрывать преобразованные версии данного контента; при этом устраняется необходимость в различных плагинах, что повышает эффективность использования оперативной памяти (КАМ) машины. Универсальный мультимедийный формат 2004 обеспечивает совместимость алгоритма компрессии, и тем самым - совместимость всех сжатых мультимедийных файлов, независимо от того, кто был разработчиком исходного программного обеспечения. Это, в свою очередь, гарантирует эффективность использования пропускной способности системы в любой момент времени.
Описываемая система обеспечивает ускорение работы приложений за счет более быстрого их запуска, управления их исполнением, а также многозадачного режима работы удаленных приложений, поскольку приложения исполняются не на локальном терминале. Управление и контроль работы приложений, напротив, осуществляются локально. При этом переход от одного приложения к другому происходит относительно быстро, поскольку операционная система на локальном терминале не требует страничной организации памяти или переключения программ.
Наличие поддержки внешних периферийных устройств и средств автоматической установки означает, что пользователям не нужно знать, какие требуются драйверы и команды для установки. Платформа сама запрашивает необходимые драйверы и устанавливает их автоматически. Тем самым обеспечивается целостность системных драйверов, поскольку сервер знает, какое программное обеспечение поддерживается платформой, и сообщает ей данные, необходимые для его автоматической установки. Платформа может осуществлять автоматическую установку драйверов периферийных устройств.
Управляющая программа машины платформы определяет возможности программного обеспечения, а машина-приемник информации определяет возможности аппаратного обеспечения.
Наличие собственного синтаксического анализатора НТМЬ 2003 означает способность платформы машины анализировать НТМЬ файлы собственными средствами. В отличие от других операционных систем, использующих средства браузеров для синтаксического анализа и визуализации вывода контента НТМЬ, платформа машины анализирует и визуализирует его собственными средствами. Тем самым обеспечивается стандартный вывод контента НТМЬ и совместимость форматов для всех мобильных устройств.
Стандарт, использованный для построения собственного синтаксического анализатора НТМЬ 2003, основан на стандартах ΝΟ8Α Мокаю (ТМ) и АЗС. Однако собственный модуль НТМЬ браузера способен считывать любой мультимедийный контент без использования внешних проигрывателей или плагинов. Получив адрес ИКЬ, браузер генерирует запрос на изменение размера оригинального контента, направляя заданные значения разрешения экрана и насыщенности цвета дисплея машины пользователя на сервер. Получив НТМЬ файл с измененными размерами, браузер проверяет его на наличие контента в виде приложенных мультимедийных форматов. Если таковые обнаружены, браузер запускает универсальный мультимедийный плагин 2004, который извлечет из сервера мультимедийный контент в универсальном формате.
Термин плагин использован ввиду характера функции, выполняемой этим элементом, поскольку он находится внутри анализатора НТМЬ и его используют по мере необходимости. Однако это не то же самое, что стандартный плагин, устанавливаемый в браузерах или приложениях. По требованию этот плагин формирует запрос на изменение размера и преобразование формата мультимедийного файла в универсальный мультимедийный формат, направляя на сервер значение разрешения на машине пользователя. Универсальный мультимедийный формат - это стандартный мультимедийный формат, который в предпочтительном варианте имеет высокую степень компрессии для обеспечения потоковой передачи данных в реальном времени. Поскольку процесс от формата не зависит, то это может быть любой формат, заранее определенный для платформы и сервера.
Тем самым устраняется необходимость в использовании нескольких различных платанов, поскольку в итоге восстанавливается только один формат. Тем самым обеспечивается совместимость по форматам мультимедийных файлов, управлению разрешением и значениям степени компрессии.
Машина платформы не допускает работы приложения поверх нее. Следовательно, машина платформы должна обеспечить основные интерфейсы ввода-вывода, включая клавиатуру, аудиовыход и поддержку И8В. Однако машина платформы допускает создание сессий приложений с тем, чтобы эта маши
- 4 006814 на могла управлять исполнение приложений на сервере. Такова технология работы в сети, используемая в БОБА, которая позволяет оптимизировать использование памяти и обеспечить многозадачный режим. Одним словом, интерфейс удаленных приложений дает возможность запуска, исполнения, управления, контроля работы и остановки приложений на сервере с машины пользователя.
Получив адрес иКЬ приложения, интерфейс удаленных приложений посылает серверу значение экранного разрешения на машине пользователя одновременно с запросом на удаленный запуск приложения. В ответ интерфейс удаленных приложений получает команды ОИ1 (дгарЫса1 иксг йИсгГасс - графического интерфейса пользователя), чтобы вывести компоненты ОИ1 на дисплей машины пользователя после того, как приложение успешно запущено и исполнено. Получив команды ОИ1, интерфейс удаленных приложений создает компоненты ОИ1 и обеспечивает возможность их локального взаимодействия без вмешательства сервера. Интерфейс удаленных приложений только тогда посылает сигнал о необходимости исполнения определенной части программы на сервере, когда возникает необходимость запуска какого-либо процесса, например сортировки или сохранения файлов. В ответ сервер посылает интерфейсу удаленных приложений команды ОИ1, чтобы обновить его порт визуализации. Кроме того, интерфейс удаленных приложений проверяет, не запрашивает ли исполняемое на сервере приложение каких-либо команд или каких-либо устройств. Каждая из машин - сервера и платформы - переадресует другой машине принадлежащие ей команды.
Машина платформы имеет встроенные интерфейсы устройств и не требует расширений, поскольку эта машина представляет собой встроенное рабочее окружение. Более того, наличие возможности выбора поддерживаемых аппаратных расширений снижает защищенность операционной системы. Машина платформы распознает программно заложенное в ней аппаратное обеспечение и не будет работать с несанкционированным аппаратным обеспечением, поставляемым третьей стороной. Тем самым предотвращается возможность использования хакерами аппаратного обеспечения, поставляемого третьей стороной, для проникновения в машину пользователя.
Собственный интерфейс поддержки аппаратного обеспечения является приемником информации машины платформы. Его основными задачами являются наблюдение за работой аппаратного обеспечения и выявление сбоев. Приемник информации машины запрограммирован на отслеживание (прослушивание) определенных категорий устройств. Поскольку различные устройства используют различные драйверы, приемник информации машины образует уровень драйверов, обеспечивающий доступ к стандартным устройствам.
Существуют лишь два возможных способа доступа к устройствам. Первый из них состоит в вызове команд. При каждом вызове команды ее анализируют и интерпретируют таким образом, что ни приложения, ни веб-контент не имеют прямого доступа к аппаратным ресурсам. Второй способ - это вызов обычных ΑΡΙ операционной системы. Когда подмножество ΑΡΙ преобразуется в команды, то тем самым создается возможность доступа к аппаратным ресурсам. Однако поскольку лишь подмножество ΑΡΙ может быть преобразовано в команды, доступ к устройствам с помощью вызова обычных ΑΡΙ разрешен не всегда. Все вызовы ΑΡΙ, содержащие ссылки на адреса и распределение сегментов памяти, прямые обращения к портам, аппаратную передачу двоичных кодов, программирование перехватчиков и прерываний, относятся к категории небезопасных вызовов ΑΡΙ и не преобразуются в команды. Машина платформы поддерживает преобразование вызовов ΑΡΙ более высокого уровня, таких как, например, выдвижение диска из привода СИ-КОМ, регулировка громкости, распечатка документов и т.п. Преобразование обычных ΑΡΙ в команды осуществляется на сервере.
Все устройства поддержки радиосвязи определяются и самоустанавливаются, поскольку машина платформы обеспечивает поддержку родного встроенного аппаратного обеспечения. Эти процессы происходят при участии сервера. Сервер помогает машине платформы идентифицировать команды по установке обнаруженных устройств. Этот процесс происходит без вмешательства пользователя.
Как видно из фиг. 21, работа сервера осуществляется на одном уровне - том же самом, что и работа платформы. Однако поскольку операционная система сервера устроена значительно сложнее и не связана со встроенным окружением, для сервера предусмотрены расширения. Все компоненты, входящие в машину сервера 2122, сами являются отдельными серверами, за исключением того, что они запрограммированы на отслеживание команд, вызываемых из машины сервера. Машина сервера, кроме того, координирует операции и переадресует их на соответствующие серверы.
Сервер также прослушивает платформу и реагирует на ее сигналы. Таким образом, машина сервера представляет собой переднюю линию. Сама по себе машина сервера не обеспечивает поддержки всех его сервисов, но она выполняет роль интерфейса всех его сервисов. Каждый из сервисов обеспечивается соответствующими серверами. Эти серверы либо являются частью серверного пула, либо приобретаются у внешних поставщиков. Например, вместо сервера хранения баз данных серверного пула может быть использован сервер баз данных Огас1с. Однако сервер хранения баз данных серверного пула должен быть оставлен, поскольку на нем установлены расширения, обеспечивающие возможность его соединения с сервером баз данных внешнего поставщика. Все серверы пула объединены в серверную машину, поскольку они взаимодействуют друг с другом. Единственным исключением является случай, когда требуются серверы от третьей стороны. В этом случае, как уже говорилось выше, на соответст
- 5 006814 вующем сервере устанавливаются расширения для соединения с внешними серверами. Это относится, в частности, к серверам электронной почты 2124, хранения баз данных 2123, администрирования 2125, Интернет-шлюза 2126 и аутентификации пользователя 2127.
Хранение данных на стороне сервера устраняет необходимость синхронизации данных, поскольку они доступны в реальном времени. За счет переноса обработки данных на сервер мобильные машины получают возможность запуска приложений, созданных для ПК с большими объемами оперативной и дисковой памяти, использующими процессоры с большой тактовой частотой ядра и шины. Кроме того, разделение операций снижает объем трафика между сервером и машиной пользователя.
Многосеансовый режим означает, что сервер может поддерживать работу большего числа пользователей по сравнению с обычными серверами приложений, поскольку в этом случае сервер обрабатывает данные сеанса, а не приложения, что требует меньших ресурсов. К тому же исполнение приложений на сервере исключает возможность прямой вирусной атаки машины пользователя, поскольку приложения на ней не работают, а вирус обычно прикрепляется к намеченной части приложения. Поскольку общение пользователя с сервером происходит через Интернет-шлюз, уровень безопасности повышается, т. к. сервер может отслеживать работу этих каналов связи с помощью методов контроля целостности пакетов и использовать брандмауэр.
Сервер идентифицирует каждого пользователя с помощью информации Μ8Ι8ΌΝ, которая является уникальной и безопасной. Подобная система мониторинга в принципе может быть использована при организации системы идентификации и начисления платы. Кроме того, она обеспечивает пользователю доступ к серверу из любой сети, при условии, что пользователь сохраняет тот же самый идентификатор Μ8Ι8ΌΝ.
Сервер 2128 изменения размеров и преобразования НТМЬ файлов является одним из серверов серверного пула. Он представляет собой сервер обработки данных, поскольку в его функции входит извлечение из Интернета веб-контента и изменение его размеров. Этот сервер использует готовые сценарии, которые представляют собой команды по изменению размеров документов в формате НТМЬ.
Когда на сервер поступают сведения об ПКЕ НТМЬ документа и разрешении машины пользователя, он проверяет, нет ли требуемого документа в его кэше. Отсутствующие в кэше документы будут получены из Интернета. После получения документа из Интернета сервер, помимо регистрации своих операций в файле журнала, прикрепляет теги АГОТН (ширина) и НЕЮНТ (высота) к тем НТМЬ документам, которые этих тегов не имеют. Затем он изменяет значения тегов АГОТН и НЕЮНТ таким образом, чтобы эти документы можно было просматривать на дисплее машины пользователя с запрошенным разрешением. Для этого первоначальное значение АГОТН делят на 800 и умножают на ширину требуемого разрешения. В большинстве случаев значения тегов НЕЮНТ не изменяются, если нет соответствующего запроса от пользователя. Если такой запрос поступил, значение НЕЮНТ делят на 600 и умножают на высоту требуемого разрешения. Для изменения размера текста НТМЬ документа либо изменяется значение параметра 8ΙΖε (размер) в теге ΡΟNТ (шрифт) путем деления его на 4, либо добавляются вложенные таблицы стилей, в результате чего отменяется действие всех тегов ΡΟΝΈ а размер шрифта документа становится равным 1. Поскольку значения параметров АГОТН и НЕЮНТ тегов изображений изменились, отправка пользователю оригинальных графических файлов не требует столь же значительных ресурсов (в смысле использования полосы пропускания), как если бы посылался больший файл. Следовательно, если к НТМЬ документу прикрепляют оригинальный графический файл меньшего размера, размер документа будет изменен таким образом, чтобы файл стал меньше. Изменение размера графического файла зависит от его формата. Графический файл может быть сжат в формате 1РЕС или ΟΙΡ. Изменение размера графического файла производят таким образом, чтобы его разрешение позволяло вывести его на дисплей. Файлы слишком большого размера не посылают. Дальнейшие изменения НТМЬ кода производят, когда сервер изменяет значения тегов размеров таблиц, внедренных объектов, форм, входов, и других тегов, поддерживаемых платформой 0100. Перекодировки при этом не происходит, никакие изображения не теряются, а структура НТМЬ документа полностью сохраняет оригинальный вид. Все результаты изменения размеров кэшируются для дальнейшего использования.
Преимущество изменения размеров НТМЬ документов и выполнения преобразований на сервере заключается в возможности использования препроцессоров, чтобы гарантировать, что пользователь получит НТМЬ контент, отвечающий параметрам дисплея его машины. Еще одно преимущество состоит в том, что такая технология позволяет производить сжатие изображений перед их отправкой пользователю; при этом изображение сжимают до меньшего разрешения с тем, чтобы оно соответствовало параметрам дисплея машины пользователя.
Сервер 2129 преобразования мультимедийных файлов и потоковой передачи данных является совмещенным сервером преобразования и передачи данных, хотя фактически обработка информации может вестись на разных машинах для обеспечения большей эффективности. Операции преобразования по своей природе связаны с интенсивной обработкой данных, тогда как потоковая передача данных предъявляет повышенные требования к пропускной способности системы и ее способности ведения мониторинга сеансов.
- 6 006814
Существуют два способа преобразования мультимедийных форматов в универсальный мультимедийный формат. Универсальный мультимедийный формат - это формат промышленного стандарта, согласованный между сервером и платформой 0100 в качестве единственного используемого ими формата с целью устранения необходимости в плагинах для воспроизведения файлов различных форматов. Критерии для выбора универсального мультимедийного формата состоят в том, что это должен быть формат потоковой передачи данных, который должен обеспечить постоянные значения степени компрессии, позволяющие осуществлять потоковую передачу данных в реальном времени.
Первый способ основан на использовании существующих технологий перекодировки для перевода одного мультимедийного формата в другой. Перекодировка может быть использована не для всех видов преобразования форматов, поскольку асимметричная компрессия и кодирование в некоторых форматах не применяются. Поэтому в случае невозможности использования первого способа должен быть использован второй способ. Второй способ занимает больше времени и требует большей вычислительной мощности. Он основан на декодировании и декомпрессии оригинального мультимедийного формата в сырые данные, например, растровые кадры или сигналы кодово-импульсной модуляции. К тому же, учитывая, что каждый мультимедийный формат имеет свои алгоритмы кодирования и декодирования, преобразование не ставит целью улучшение компрессии или кодирования мультимедийных файлов. В данном случае преобразование осуществляют с целью обеспечения постоянных значений степени компрессии и устранения множества плагинов на платформе 0100, с тем, чтобы дать ей возможность распознавать различные форматы.
Предусмотрено также изменение размеров файлов, чтоб сервер передавал на платформу 0100 файлы меньшего размера. Все результаты преобразований и изменения размеров автоматически кэшируют для дальнейшего использования. После преобразований и изменения размеров файла сервер выполняет его потоковую передачу на платформу 0100.
Сервер хостинга и исполнения приложений образует окружение хостинга и исполнения системного сервера. Поскольку платформа 0100 не создает локального окружения хостинга и исполнения, то для запуска и исполнения приложений она использует средства сервера хостинга и исполнения, входящего в состав системного сервера. См. также описание к фиг. 16 и 17.
Сервер электронной почты - это стандартный сервер электронной почты, работающий с машиной сервера. Он также позволяет расширениям сценариев и программирования соединяться с другими серверами электронной почты. Тем самым обеспечивается совместимость сервера с другими серверами электронной почты.
Нормальные операции сервер электронной почты выполняет так же, как и стандартные серверы. Однако когда нужно отправить или принять электронную почту, сервер электронной почты проверяет профиль пользователя, чтобы определить, является ли он абонентом сервера электронной почты третьей стороны. Если это так, сервер электронной почты сначала использует сценарии расширений, написанные для сервера электронной почты третьей стороны, затем регистрирует пользователя в системе по его идентификатору и паролю, после чего отправляет или принимает электронную почту. Если принимается электронная почта, сервер сохраняет ее содержимое в учетной записи электронной почты пользователя. После этого сервер отключается от учетной записи пользователя сервера электронной почты третьей стороны.
Сервер электронной почты обеспечивает не только доступ к электронной почте, но и совместимость расширений, так, чтобы пользователи могли подключаться с регистрацией к различным серверам.
Сервер хранения баз данных - это хост-сервер, который использует базу данных для распределения квот и применяет средства контроля доступа к пространству, выделенному для пользователя. Главная его задача - обеспечить доступ к диску пользователям платформы 0100.
База данных, отвечающая за распределения квот и применение средств контроля доступа, имеет, по меньшей мере, пять следующих полей: идентификатор пользователя, лимит квоты, пароль, директории персонального доступа и директории общего доступа. Для входа в директории персонального доступа и директории общего доступа нужны различные права доступа, и к ним, соответственно, предусмотрен различный порядок доступа. Директория персонального доступа - это директория, доступная только для просмотра, в которой пользователь может открывать защищенные авторскими правами файлы, но не может ни пересылать их третьей стороне, ни копировать их в другие директории. Директория персонального доступа размещается в директории, куда провайдеры контента могут выкладывать свои мультимедийные файлы, защищенные авторскими правами, если пользователь является их абонентом или купил у них контент. Директория общего доступа - это часть обычного дискового пространства, где пользователь может создавать, копировать, удалять и открывать файлы. Она не имеет ограничений доступа, а пользователи могут открывать приложения, использующие файлы, которые хранятся в этой директории.
Сервер установки программного обеспечения 2130 и обновления операционной системы 2131 - это сервер баз данных, на котором хранятся драйверы всех устройств и все обновления операционной системы. По запросу, поступающему от платформы 0100, сервер производит поиск подходящих драйверов устройств или пакетов обновления операционной системы и посылает их пользователю. Такие пакеты, отправленные пользователю, могут быть использованы исключительно платформой 0100, поскольку в
- 7 006814 ней находятся сценарии с командами для платформы по установке драйверов или обновлений операционной системы, поэтому пользователю нет необходимости вмешиваться в этот процесс. См. также описание к фиг. 18 и 19.
Сервер аутентификации пользователя описан применительно к фиг. 13.
Сервер Интернет-шлюза - это стандартный шлюзовый сервер или промежуточный сервер. Он может включать разного рода системы массового обслуживания и брандмауэры. Сервер-администратор представляет собой главное хранилище журналов операций, панели конфигурации и механизмов мониторинга. Администратор сети может: инициировать очередные обновления операционной системы; проверять, не требуются ли пользователям драйверы устройств, отсутствующие в базе данных; следить за состоянием базы данных информации; конфигурировать сервер приложений; создавать учетные записи пользователей; генерировать отчеты об использовании ресурсов и начислении платы; устанавливать правила безопасности; производить обновления сервера и модифицировать установки конфигурации всех серверов.
На фиг. 1 изображена платформа 0100. Она представляет собой резидентную операционную систему машины пользователя. Платформа связана и взаимодействует с сервером в процессах регистрации пользователя в системе, формирования запроса на получение мультимедийного контента из Интернета работы приложений и обновления системы. Под телефонными функциями подразумевают основные функции телефонной связи, такие как, например, вызовы по мобильному телефону, 8М8, адресные книги, контакты, календарь и т. п.
Машина представляет собой интерпретатор команд; вызов машины 0130 производится с целью выполнения всех требуемых локальных операций и управления сетью. Машина 0130 управляет всеми операциями и вступает в действие только при наличии триггера. Затем она инициирует различные сервисы, предлагаемые системой машины. К числу сервисов, предлагаемых машиной, относятся: управление Интернет-соединениями, воспроизведение мультимедийного веб-контента, удаленный запуск приложений, выполнение настроек системы и поддержка периферийных устройств. Машина объединяет разные уровни традиционной операционной системы, обеспечивая целостность и необходимую скорость исполнения операций, а также эффективное управление памятью.
Триггер платформы 0131 - это триггер, вызываемый на стороне пользователя. Он включает пользовательский ввод с помощью сенсорного экрана, клавиатуры, команды или входного сигнала от системы.
Платформа 0131 загружается и запускается. После инициализации телефонных функций происходит запуск машины платформы 0100. Затем машина платформы 0100 формирует изображение и открывает пользовательский интерфейс. Машина платформы 0100 начинает отслеживание триггеров платформы. При наличии триггера платформы будет выполнен процесс его идентификации, чтобы определить, какой тип триггера запущен. Если это триггер регистрации на сервере 0132, то запускается процесс аутентификации пользователя 0200. Если это запрос содержимого НТМЬ 0133, то запускается процесс 0300 визуализации НТМЬ. Если это запрос потоковой передачи мультимедийного контента 0134, то запускается процесс 0400 запуска мультимедийного плагина. Если триггер представляет собой запрос на исполнение приложения 0135, то инициируется процесс 0500 запуска удаленного приложения. Если это обновление системы 0136, то запускается процесс 0600 обновления системы. Если триггер вызван сигналами на входах локальных устройств 0137, то будет обработан аппаратный триггер 0138. Платформа 0100 будет продолжать циклический процесс поиска платформенных триггеров, пока не будет отключена.
Как видно из фиг. 2, после запуска платформы 0100 и регистрации пользователя вызывается процесс аутентификации пользователя 0200. Этот процесс включает в себя извлечение ΜδΙδΌΝ из модуля 81М карты, идентификатора и пароля пользователя для ΡΚΙ и передачу их на сервер 0201. Идентификатор и пароль пользователя извлекают из флэш-ПЗУ машины пользователя. Идентификатор и пароль пользователя направляют на сервер для аутентификации 0204. Запускают процесс 1300 аутентификации пользователя на сервере. Когда процесс 1300 аутентификации пользователя установит, что пользователь является законным пользователем 0205, он организует 88Н соединение 0206 между пользователем и сервером. Начальная аутентификация пользователя с использованием 81М карты обеспечивает повышенную безопасность. В этом случае канал аутентификации и безопасности защищен лучше, чем в случае обычного 88Ь соединения. Более того, в случае применения логина второго уровня с использованием идентификатора и пароля пользователя процессы шифровки и сжатия происходят поверх соответствующих процессов, обеспечиваемых провайдером телекоммуникационной услуги. Если пользователь не является законным пользователем 0207, он не будет допущен в систему, а платформа выведет на дисплей машины пользователя сообщение обратитесь к оператору.
Процесс визуализации НТМЬ файла показан на фиг. 3.
Хотя процесс открытия НТМЬ файла происходит так же, как и в обычном НТМЬ браузере, модуль НТМЬ браузера может читать весь мультимедийный контент без внешних проигрывателей или внешних плагинов. Получив адрес иВЬ 0301, браузер посылает запрос на передачу НТМЬ контента с сервера 0302. Получив НТМЬ контент, сервер изменяет его размер и помещает его в кэш 1400. Затем браузер проверяет, имеется ли какой-либо мультимедийный контент, который должен быть прикреплен на осно
- 8 006814 ве НТМЬ файла измененного размера 0303. Если таковой имеется, браузер запускает свой мультимедийный плагин 0400. Это внутренний плагин, извлекающий мультимедийный контент с сервера в универсальном формате. Описанный выше процесс показан на фиг. 4.
Мультимедийный плагин 0400 - это плагин общего назначения для различных мультимедийных форматов, который извлекает универсальный формат для видео- и аудиоконтента. Подобный метод устраняет необходимость в наборе плагинов для различных мультимедийных форматов. Сервер преобразует все обычные мультимедийные форматы в универсальный мультимедийный формат. Мультимедийный плагин - это, главным образом, плагин потоковой передачи мультимедийных данных. В нем используют известные, традиционные технологии потоковой передачи и промышленные технологии сжатия. Преимущество такого подхода состоит в том, что устраняется необходимость в различных плагинах, поскольку извлекается содержимое только в одном формате.
Когда адрес ПКЕ 0401 мультимедийного контента передан процессу потоковой передачи мультимедийных данных 0402 на сервере, плагин начнет преобразование передаваемых с сервера мультимедийных данных 1500. При этом произойдет обновление порта воспроизведения видео- и аудиофайлов 0403. До конца потоковой передачи 0404 файла он будет продолжать получение потока данных с сервера. В то же время он будет проверять, не произошла ли инициация пользователем каких-либо настроек параметров воспроизведения, изменяющих последовательность 0405 воспроизведения потока данных. Если такие изменения имели место, плагин выполнит соответствующее обновление порта визуализации воспроизведения видео- и аудиофайлов.
На фиг. 5 показан процесс запуска удаленного приложения, например, одного из приложений для настольной системы, таких как офисные приложения для Атйо\\ъ или стандартные приложения для настольной системы.
Это - обычные приложения для настольной системы, которые были изначально написаны для окружения настольных ПК, построенного на базе таких операционных систем, как Атйо\\ъ. Ьтцх, 1ауа и Ра1т.
Получив адрес ПКЕ приложения 0501, платформа 0100 посылает на сервер значение своего экранного разрешения одновременно с запросом на удаленный запуск приложения 0502. В свою очередь, после успешного запуска и исполнения приложения 1600/1700, платформа 0100 получает команды ОИ1 по выводу компонентов ОИ1 на экран 0503. Данный метод отличается от технологий дампа экрана или работы с удаленного настольного компьютера, когда пользователь не знает, что именно к нему в данный момент поступает. Получив команды ОИ1, платформа 0100 создает компоненты ОИ1 и обеспечивает возможность их локального взаимодействия без вмешательства сервера 0504. При необходимости запуска процесса, например, сортировки или сохранения файлов, платформа 0100 обращается к серверу. Все остальное время она работает локально. Платформа 0100 также проверяет, не должен ли быть выполнен какой-либо из ее триггеров. Если таковые имеются, она разрешает вызов триггера и продолжение процесса.
Если процесс ввода требует обновления дисплея 0505, на сервер будут посланы 0506 данные об интерфейсных операциях. Сервер возвращает сигнал обратной связи 0570. Если сигнал обратной связи представляет собой триггер 0508 платформы, то будет вызван триггер платформы.
На дисплей будет вызвано экспортируемое приложение, при этом заново будет запущен процесс обнаружения ввода пользовательского интерфейса.
В схеме обновления системы, изображенной на фиг. 6, под категорией устройства и названием производителя имеют в виду описание периферийных устройств и предоставляемая производителями информация о них, которые посылаются с машины пользователя на сервер в процессе инициализации 0601. Пример подобной информации: наименование модели устройства А, принтер И8В, производитель В, версия 1.2.
Под обновлением операционной системы 0602 имеются в виду направляемые пользователю пакеты апгрейда или заплаты. Обычно платформа 0100 принимает подобные обновления автоматически, после чего выполняет процесс самообновления. При необходимости выполнения такой операции генерируется триггер обновления операционной системы 0603.
Обнаружив триггер, модуль обновления системы проверяет, является ли он обновлением системы или внешним устройством. Для этого определяют источник возникновения триггера. Обновление системы выполняют только с сервера, а определение устройств происходит только на стороне платформы 0100. Поскольку установленные периферийные устройства могут быть использованы неоднократно, файлы драйверов хранятся в ПЗУ машины пользователя.
Поэтому при каждом очередном обнаружении устройства оно может быть немедленно активировано с помощью драйверов, извлекаемых из ПЗУ машины пользователя. Во время первоначальной установки платформа 0100 посылает на сервер всю требуемую сервером информацию, включая категорию устройства и название производителя. При обнаружении устройства производится проверка наличия соответствующего драйвера в ПЗУ 0604. Если такой драйвер в ПЗУ имеется, работа соответствующего сервиса будет приостановлена, и он будет перезапущен для активации устройства 0605. При отсутствии такого драйвера в ПЗУ запускается процесс запроса драйвера устройства 1800. Если драйвер устройства
- 9 006814 не найден, возвращается сообщение драйверы не найдены. Если драйвер найден 0606, он загружается 0607 и распаковывается 0608, после чего исполняются 0609 сценарии самоустановки внутри пакета. Файлы драйверов устройств будут скопированы в область расположения системных файлов, а настройки системы будут обновлены. Поскольку количество драйверов устройств, поддерживаемых ПЗУ, ограничено, то драйвер, который в последний раз использовался раньше остальных или используется реже остальных, объявляется устаревшим и удаляется из ПЗУ. После завершения обновления работа соответствующего сервиса будет приостановлена, и он будет перезапущен для активации устройства.
Обновление операционной системы происходит аналогичным образом. Если вызван триггер обновления операционной системы, платформа 0100 проверяет наличие необходимого обновления на сервере. Если это необходимо для обновления операционной системы, настройки операционной системы платформы посылают на сервер для синхронизации. После синхронизации генерируется запрос на обновление операционной системы. В случае отсутствия обновления пользователь получит сообщение нет обновления 0611. При наличии обновлений будут получены пакеты обновления или апгрейда 0610. Пакеты будут распакованы, после чего будут выполнены сценарии самоустановки внутри пакетов 0612. Сценарии включают выдачу команд платформе 0100 на копирование всех новых файлов в систему и перекомпиляцию всех требуемых файлов 0613.
На фиг. 7 под входным триггером подразумевают входные сигналы, генерируемые пользователем 0701, платформой 0702 и сервером 0703.
Пользователь - это лицо, использующее машину. Типичные входные сигналы 0800 - это команды, генерируемые с помощью клавиатуры, мыши или указателя, либо в результате вызова ИРЕ. Под системой подразумевается машина пользователя. Единственный входной сигнал 0900, который может быть получен от самого устройства, генерируется в случае, если машина обнаруживает внешнее периферийное устройство и сообщает об этом платформе 0100.
Под сервером подразумевается удаленный сервер, связанный через сеть с провайдером телекоммуникационной услуги либо с коммуникационной инфраструктурой, которая имеет соединение с машиной пользователя. С сервера могут быть получены два триггера/входных сигнала 1000. Один из них - это сигнал инициации обновления операционной системы, с помощью которого сервер сообщает платформе 0100 об очередном обновлении операционной системы, дает ей команду на загрузку заплаты или обновления, и устанавливает это обновление. Другой возможный триггер от сервера - это поступающая от сервера команда. Он возникает, когда приложение, используемое в настоящий момент пользователем, вызывает команду, которая обрабатывается сервером. Однако если данная команда не может быть обработана сервером (например, команда на печать), сервер переадресует выполнение соответствующей функции платформе 0100, дав ей команду на выполнение этой функции.
Если входной сигнал поступает от пользователя (фиг. 8), этот сигнал является либо запросом на выполнение сервиса, либо логином. В обоих случаях входной сигнал обрабатывается платформой 0100. После того, как платформа завершила свою часть обработки запроса, принимается решение, требуется ли обработка на сервере. Если для дальнейшей обработки сервер не требуется 0801, то на этом обработка завершается 0802. В противном случае дальнейшая обработка переходит на сервер 1100/1200, который продолжает ее выполнение до завершения обработки запроса.
Что касается входных сигналов системы (фиг. 9), то единственно возможным сигналом такого рода является обнаружение нового устройства. Вначале платформа 0100 выполняет всю необходимую подготовительную работу и определяет, нужно ли извлечь какие-либо драйверы с сервера 0901, и если да - то какие именно. Если необходимы драйверы, то сервер проверит, есть ли на нем требуемые драйверы 0902. Если подходящие драйверы не обнаружены, сервер сформирует отчет, в котором будет указано, какие именно драйверы пользователи затребовали 0903. Если драйвер найден, платформа его активирует после того, как он будет установлен в систему 0904. После установки драйверов пользователь получает возможность воспользоваться вновь установленным устройством.
На фиг. 10 показана реакция на входной сигнал сервера 1100/1200. Входной сигнал сервера 1100/1200 возникает сразу же после того, как сервер выполнил хотя бы небольшую часть процесса обработки. Он оповещает платформу об обновлениях или апгрейдах операционной системы 1001, либо вызывает команды со стороны сервера 1002, чтобы дать команду платформе 0100 на выполнение процедур локальной обработки, например, печати или сканирования. В обоих случаях входные сигналы поступают на платформу 0100, где происходит их обработка.
Операции, выполняемые сервером, показаны на фиг. 11 и 12. Под сервером в данном случае подразумевается физический сервер со своим резидентным программным обеспечением. Сервер соединен через сеть с инфраструктурой провайдера телекоммуникационной услуги. В число основных компонентов сервера входят база данных, электронная почта, промежуточный сервер, кэш, приложения и мультимедийный сервер. Машина сервера содержит инструкции по организации связи и операций, выполняемых сервером. Размещенные на сервере компоненты общаются между собой с помощью команд, а операции выполняются только при наличии таких команд. Каждый из размещенных на сервере компонентов имеет собственную машину исполнения, тогда как на главном сервере имеется машина сервера, представляющая собой командный процессор.
- 10 006814
При запуске сервера 1101 последний инициализирует сервер 1102 базы данных, электронной почты, промежуточного сервера, кэша, приложений, обновления операционной системы и мультимедийного сервера для обеспечения их калибровки и совместной работы. После этого загружается машина сервера 1103, которая входит в режим ожидания регистрации пользователя 1104. В момент регистрации пользователя в системе 1105 начинается процесс аутентификации на сервере 1300. В процессе аутентификации на сервере данные входа в систему сохраняются в файле журнала регистрации 1106, после чего устанавливается соединение в безопасной оболочке (88Н - несите ьПсП сопиесйои) 1107 с пользователем. Сервер продолжает отслеживать наличие запросов пользователя 1108. Если таковых не имеется, он проверяет, не отключился ли пользователь 1109. Если пользователь отключился, то сохраняются детали выхода из системы 1110. Если пользователь не отключился, указанный процесс проверки продолжается. При поступлении запроса от пользователя вызывается процесс обнаружения запроса на сервере 1111. Действия пользователя фиксируются в журнале регистрации 1112. Если пользователь запрашивает НТМЬ контент 1201, запускается процесс изменения размеров и кэширования НТМЬ 1400. Если пользователь запрашивает мультимедийный контент 1202, запускается процесс потоковой передачи данных с сервера 1500. Если пользователь запрашивает приложение 1203, инициируется процесс запуска приложения 1700. Если пользователь запрашивает драйвер устройства 1204, инициируется процесс запроса драйвера устройства 1800. Если пользователь запрашивает обновление или апгрейд операционной системы 1205, инициируется процесс запроса на обновление операционной системы 1900. В остальных случаях запрос игнорируется и/или возвращается платформе, а сервер продолжает отслеживать наличие запросов пользователя.
На фиг. 13 показаны действия сервера в процессе аутентификации пользователя. Здесь под шлюзом аутентификации подразумевается отдельный сервер, осуществляющий аутентификацию пользователя в системе провайдера телекоммуникационной услуги. Когда сервером получены Μ8Ι8ΌΝ, идентификатор и пароль пользователя 1301, происходит поиск по базе данных пользователей с целью идентификации данного пользователя 1302. Если соответствующей записи в базе данных не найдено, в соединении будет отказано 1303. Хотя регистрация пользователя происходит через сеть провайдера телекоммуникационной услуги, и это означает, что запрос уже прошел один процесс аутентификации, сервер выполняет повторную проверку 1304 с помощью шлюза аутентификации телекоммуникационной услуги, чтобы определить, не исходит ли запрос от пользователя, который занесен в черный список, исчерпал отведенную ему квоту или не является законным пользователем, подписанным на данный вид услуг. Если получен ответ от шлюза аутентификации телекоммуникационной услуги, свидетельствующий о том, что пользователь не является законным пользователем 1305, исчерпал отведенную ему квоту 1306 или занесен в черный список 1307, в соединении будет отказано. В противном случае пользователь будет идентифицирован как законный пользователь 1308.
Как видно из фиг. 14, когда ИРГ НТМЬ документа и значение разрешения дисплея машины пользователя посланы на сервер 1401, последний проверяет, не находится ли требуемый документ в кэше 1402. Отсутствующие в кэше документы будут получены из Интернета 1403. После получения документов из Интернета сервер зарегистрирует операции в журнале 1404 и добавит или изменит значения определенных величин в НТМЬ документе, в результате чего изменится размер текста 1405. Затем сервер изменит размеры графических файлов 1406 таким образом, чтобы обеспечить их вывод на дисплей машины пользователя со свойственным ему разрешением, не посылая при этом файлы слишком большого размера. Следующие модификации НТМЬ кода 1407 включают изменение значений величин АГОТН и НЕЮНТ, а также изменение сервером размеров таблиц, вложенных материалов, форм, вводящих и других тегов, поддерживаемых платформой. Перекодировка при этом не происходит. Никакие изображения не теряются, а структура НТМЬ документа полностью сохраняет оригинальный вид 1408. Все результаты изменения размеров кэшируются 1409 для дальнейшего использования.
Для того чтобы осуществить потоковую передачу мультимедийного файла с сервера (фиг. 15), при наличии иКЬ и запрашиваемого разрешения 1501, сервер получает требуемый мультимедийный файл 1502, отсутствующий в кэше, и переводит его в универсальный файловый формат. Этот процесс включает в себя определение типа мультимедийного контента по расширению файла (последние три буква имени файла) и преобразование файла в универсальный файловый формат 1504. Тем самым обеспечивается правильный выходной формат файла, посылаемого на платформу. Преобразование осуществляется либо посредством перекодировки, либо декодированием оригинального формата файла в выходные данные с последующим перекодированием их в универсальный файловый формат. Какой из этих двух способов будет применен, зависит от оригинального формата файла. Выполняется также изменение размера файла 1505, с тем, чтобы уменьшить размеры файлов, пересылаемых с сервера на платформу. Результаты любого преобразования или изменения размера автоматически заносятся в кэш для последующего использования 1506. После преобразований и изменения размеров файла сервер передает его 1507 на платформу 0100.
Процесс запуска приложений на платформе 0100 показан на фиг. 16, 17 и 22. Под защищенным окружением 2202 здесь понимают средства контроля доступа, которыми снабжены приложения. Приложение может выполнять запись не во всех областях дискового пространства, иначе это могло бы привести к затиранию данных других пользователей. Средства контроля доступа как раз и предназначены для огра
- 11 006814 ничения доступа приложений к областям системы с ограниченным доступом. Кроме того, они отображают список файлов, находящихся в области хранения данных пользователя (базе данных), и передают его приложению 2201. Когда приложение вызывает файл, он извлекается из базы данных и копируется в защищенное окружение для обработки. При закрытии сеанса или приложения файл снова записывается в базу данных. Это также делается с целью защиты данных от порчи. Однако при закрытии сеанса, до истечения времени ожидания будет сохраняться временный файл (1етр) на случай сбоя приложения и перезапуска. Тем самым гарантируют сохранность данных.
При поступлении запроса 1601 на сервер последний проверяет, существует ли приложение в домене сервера 1602. Эта проверка весьма важна, т.к. на сервере должны выполняться только надежные приложения 1603/1604. Кроме того, сервер проверяет, подписан ли пользователь на данное приложение 1605. До того как приложение может быть запущено, сервер создает защищенное окружение 1606 - функция, которой другие серверы приложений обычно не обладают. В защищенном окружении сервер запускает сервер ΑΡΙ, который отображает ΑΡΙ 1607 зависимой родной операционной системы приложения на ΑΡΙ сервера. Этот процесс происходит в реальном времени. На сервере имеется ряд ΑΡΙ, совместимых со всеми собственными ΑΡΙ других операционных систем 1608. Отображение в данном случае означает переадресацию. Вместо исполнения упомянутых собственных ΑΡΙ, сервер исполняет набор имеющихся на нем ΑΡΙ 1609. Это обеспечивает более высокую степень управляемости работой приложений 1610 со стороны сервера. К числу операций, исполняемых на сервере, относится экспорт экранного окна 1611 на платформу 0100. Таким образом, команды ΟϋΙ не исполняются на стороне сервера, а экспортируются на сторону пользователя. Команды обработки исполняются на стороне сервера. Поскольку команды ΟϋΙ вызываются через ΑΡΙ, сервер обнаруживает эти ΑΡΙ и экспортирует их на платформу 0100. К числу других операций относится переадресация запроса аппаратного обеспечения и команд ΜΧΙ, которые не могут быть выполнены сервером. Когда запросы аппаратного обеспечения выполняют через ΑΡΙ 1701, сервер обнаруживает такие ΑΡΙ 1702 и возвращает 1703 их платформе для обработки. Команды ΜΧΙ, которые не могут быть обработаны, но были вызваны на стороне сервера, переадресуют платформе и там выполняют 1704. Приложение продолжает работать и обрабатывать запросы пользователя до тех пор, пока не закончится сеанс, либо пока пользователь не завершит работу приложения.
До начала процесса отображения приложение должно быть загружено в окружение для защищенного исполнения 2202, где вызовы других операционных систем родными ΑΡΙ фиксируются путем перехвата вызовов функций. Окружение для защищенного исполнения вначале распознает вызовы со стороны собственных ΑΡΙ всех других операционных систем, которые оно поддерживает. Когда обнаружены вызовы библиотеки родной операционной системы со стороны функции ΑΡΙ, окружение для защищенного исполнения вызывает свой набор ΑΡΙ, что равносильно его вызову со стороны приложения. Теперь приложение будет исполняться на сервере в родной среде, поскольку все ΑΡΙ отображены на ΑΡΙ сервера.
Поскольку все ΑΡΙ, включая ΟϋΙ и ΑΡΙ ввода/вывода, отображены на ΑΡΙ сервера, тем самым обеспечивается более высокая степень управляемости работой приложения со стороны сервера.
Это позволяет серверу решать, какие операции нужно экспортировать на платформу, а какие он сам может выполнить локально. В процессе выполнения приложения защищенное окружение экспортирует вызовы ΑΡΙ, которые сервер не станет обрабатывать. К числу таких вызовов относятся вызовы ΟϋΙ и операций ввода/вывода. Вызовы ΑΡΙ ΟυΙ экспортируют непосредственно на платформу, которая обрабатывает требуемые компоненты ΟυΙ. Термин экспортировать в данном случае означает, что ΑΡΙ ΟυΙ переадресуют на сторону платформы, где и происходят обращения к ним. Вызовы ввода/вывода переадресуют посредством вызова команд, которые платформа анализирует с помощью своей машины для выполнения операций ввода/вывода.
Преимущества защищенного окружения заключаются в том, что оно обеспечивает безопасное окружение для обработки, благодаря чему уменьшается вероятность распространения вируса, поскольку в каждом защищенном окружении используют средства ограничения доступа.
Сервер хостинга и исполнения приложений обладает возможностью многосеансового запуска одного приложения. Это уменьшает объем используемой памяти и загрузку сервера, поскольку при этом в память сервера достаточно загрузить единственный экземпляр приложения. Описанный способ является стандартным методом многосеансовой работы, используемым в большинстве систем универсальных ЭВМ, работающих под операционной системой υΝΙΧ.
На фиг. 18 показан процесс обработки запроса на получение драйвера устройства. Пакет здесь означает файл, содержащий несколько сжатых файлов. Пакет, как правило, включает собственно запрашиваемый контент, в данном случае - файлы драйверов, а также команды для их установки, исполняемые платформой 0100.
Получив сведения о категории устройства и названии производителя, сервер выполняет поиск 1802. В случае обнаружения требуемого драйвера 1803 сервер заносит соответствующие детали в журнал для последующих ссылок и посылает требуемый пакет пользователю 1805. Поскольку пакет подготовлен на стороне сервера, он упакован таким образом, чтобы после его получения платформа 0100 могла его распаковать и выполнить включенные в него команды установки. Если требуемый драйвер не обнаружен,
- 12 006814 создается соответствующая запись в файле журнала, содержащая сведения о требуемом драйвере 1804. Затем платформа направляет администратору по электронной почте копию записи 1807 о деталях требуемых драйверов устройств, а пользователю направляет сообщение о том, что драйверы не найдены 1808.
Процесс обновления операционной системы показан на фиг. 19. Термин пакеты здесь имеет тот же смысл, что и на фиг. 18, за исключением того, что в данном случае пакеты содержат не драйверы, а файлы обновления операционной системы. Типичный пакет обновления операционной системы включает в себя все дополнительные файлы, требуемые платформой, и команды установки, которые должны быть исполнены платформой.
Сервер проверяет, какие из пакетов уже установлены на платформе пользователя 1901. Затем он составляет список требуемых пакетов 1902. Если этот список не пуст, сервер продолжает проверять, нет ли каких-либо зависимостей или других пакетов 1903. Обычно зависимости выявляют при первом цикле проверки, тем не менее, выполняют также второй, контрольный цикл проверки, дабы гарантировать, что при установке платформой пакета 1904 не возникнет никаких проблем. После каждой проверки зависимостей, если к имеющемуся списку добавляют какие-либо пакеты, требуется дополнительный цикл проверки зависимостей. Он необходим для того, чтобы определить, не содержится ли каких-либо зависимостей в добавленных пакетах. После подтверждения корректности всех пакетов сервер посылает список новых пакетов 1905 и посылает новые пакеты последовательно один за другим 1906; такой порядок гарантирует, что пакеты, затребованные первыми, будут получены платформой 0100 и установлены также первыми.
Область действия настоящего изобретения распространяется также на конфигурацию программного обеспечения, используемого процессором, причем названная конфигурация включает компьютерную программу, конфигурирующую процессор для обеспечения выполнения им одной или нескольких описанных выше функций. Кроме того, она распространяется и на компьютерную систему, которая включает одно или несколько средств, обеспечивающих выполнение соответственно одной или нескольких описанных выше функций.
Хотя приведенное выше описание относится к предпочтительной реализации настоящего изобретения, работающим в данной области специалистам понятно, что возможны разного рода варианты и модификации отдельных деталей, касающихся работы, схемы или конструкции, не выходящие за пределы объема настоящего изобретения.
Объем настоящего изобретения включает все отличительные черты, описанные как по отдельности, так и во всех возможных их сочетаниях и комбинациях.

Claims (45)

  1. ФОРМУЛА ИЗОБРЕТЕНИЯ
    1. Система программного обеспечения, позволяющая серверу исполнять приложение для вывода на дисплей машины пользователя, причем указанная система программного обеспечения на машине пользователя выполнена в архитектуре одного операционного уровня.
  2. 2. Система программного обеспечения по п.1, отличающаяся тем, что включает в себя платформу для работы на машине пользователя, причем эта платформа включает в себя машину платформы, действующую как операционная система.
  3. 3. Система программного обеспечения по п.2, отличающаяся тем, что выполнена с возможностью обеспечения безопасности, поддержки драйверов, управления питанием, управления работой загрузчика и файловой системы.
  4. 4. Система программного обеспечения по п.1, отличающаяся тем, что на сервере использована архитектура с одним операционным уровнем.
  5. 5. Система, позволяющая серверу загружать данные в машину пользователя с постоянным значением компрессии для обеспечения потокового вывода в режиме реального времени НТМЬ мультимедийного файла на дисплей машины пользователя, причем сервер выполнен с возможностью преобразования НТМЬ мультимедийного файла из оригинального формата в универсальный мультимедийный формат, согласованный между сервером и машиной пользователя.
  6. 6. Система по п.1, отличающаяся тем, что ряд приложений выполняют на сервере, причем все приложения выполняют на сервере под одной операционной системой таким образом, что поток данных для вывода на дисплей поступает на дисплей без запуска приложениями своих родных операционных систем.
  7. 7. Система, позволяющая серверу обеспечить машине пользователя возможность управления приложением, исполняемым на сервере, причем исполнение приложения происходит в защищенном окружении, в котором предусмотрены средства контроля доступа, ограничивающие доступ приложения по меньшей мере к одной защищенной области системы.
  8. 8. Система по п.7, отличающаяся тем, что приложение перед исполнением скопировано в защищенное окружение.
    - 13 006814
  9. 9. Система, позволяющая серверу отправить дистрибутив драйвера устройства для установки на машине пользователя, причем сервер имеет возможность посылать этот дистрибутив на машину пользователя вместе с командами для автоматической установки дистрибутива на машине пользователя, указанные команды упакованы вместе с дистрибутивом перед отправкой таким образом, чтобы машина пользователя могла распаковать дистрибутив и команды, скопировать файлы драйверов устройств в область расположения системных файлов, и изменив настройки системы, выполнить команды и запустить программу установки дистрибутива на машине пользователя.
  10. 10. Система по п.9, отличающаяся тем, что выполнена с возможностью регистрации установок драйверов устройств, используемых на машине пользователя таким образом, чтобы наиболее часто используемые драйверы устройств находились в памяти сервера.
  11. 11. Система по п.10, отличающаяся тем, что в качестве памяти в ней использовано постоянное запоминающее устройство.
  12. 12. Система по любому из пп.9-11, отличающаяся тем, что новый файл в дистрибутиве копируют на сервер.
  13. 13. Система по п.1, отличающаяся тем, что на машине пользователя имеется дисплей, который действует в качестве дисплея сервера.
  14. 14. Система по п.13, отличающаяся тем, что ряд приложений выполняют на сервере, причем все приложения выполняют на сервере под одной операционной системой таким образом, что поток данных для вывода на дисплей поступает на дисплей без запуска приложениями своих родных операционных систем.
  15. 15. Система по любому из пп.1 или 14, отличающаяся тем, что управляет программным обеспечением в архитектуре одного операционного уровня на машине пользователя.
  16. 16. Система по п.15, отличающаяся тем, что программное обеспечение включает в себя платформу для работы на машине пользователя, причем эта платформа включает в себя машину платформы, действующую как операционная система.
  17. 17. Система по п.16, отличающаяся тем, что операционная система выполнена с возможностью обеспечения безопасности, поддержки драйверов, управления питанием, управления работой загрузчика и файловой системы.
  18. 18. Система по п.15, отличающаяся тем, что на сервере использована архитектура с одним операционным уровнем.
  19. 19. Система по п.1, отличающаяся тем, что сервер включает в себя сервер для изменения размера НТМЬ файла перед отправкой этого файла на машину пользователя.
  20. 20. Система по п.19, отличающаяся тем, что выполнена с возможностью изменения размеров всех изображений, содержащихся в НТМЬ файле, таким образом, чтобы они полностью были выведены на дисплей машины пользователя.
  21. 21. Система по п.19 или 20, отличающаяся тем, что в ней имеется возможность при обработке НТМЬ файла на сервере изменять коды НТМЬ файла с тем, чтобы обеспечить возможность вывода мультимедийного НТМЬ файла на дисплей.
  22. 22. Система по п.1 или по любому из пп.13-18, отличающаяся тем, что ряд приложений выполняют на сервере, причем все приложения выполняют на сервере под одной операционной системой таким образом, что поток данных для вывода на дисплей поступает на дисплей без запуска приложениями своих родных операционных систем.
  23. 23. Система по п.1 или по любому из пп.13-18 или 22, отличающаяся тем, что исполнение приложения происходит в защищенном окружении, в котором предусмотрены средства контроля доступа, ограничивающие доступ приложения по меньшей мере к одной защищенной области системы.
  24. 24. Система по п.22, отличающаяся тем, что приложение перед исполнением скопировано в защищенное окружение.
  25. 25. Система по п.1 или 6, отличающаяся тем, что система включает в себя платформу для работы на машине пользователя, причем эта платформа включает в себя машину платформы, действующую как операционная система.
  26. 26. Система по п.25, отличающаяся тем, что операционная система на машине пользователя выполнена в архитектуре одного операционного уровня.
  27. 27. Система по п.26, отличающаяся тем, что операционная система выполнена с возможностью обеспечения безопасности, поддержки драйверов, управления питанием, управления работой загрузчика и файловой системы.
  28. 28. Система программного обеспечения по п.26, отличающаяся тем, что на сервере использована архитектура с одним операционным уровнем.
  29. 29. Система по любому из пп.1, 6 или 25-28, отличающаяся тем, что исполнение приложения происходит в защищенном окружении, в котором предусмотрены средства контроля доступа, ограничивающие доступ приложения по меньшей мере к одной защищенной области системы.
  30. 30. Система по п.29, отличающаяся тем, что приложение перед исполнением скопировано в защищенное окружение.
    - 14 006814
  31. 31. Система по любому из пп.1, 5, 19-21, отличающаяся тем, что ряд приложений выполняют на сервере, причем все приложения выполняют на сервере под одной операционной системой таким образом, что поток данных поступает на дисплей без запуска приложениями своих родных операционных систем.
  32. 32. Система по любому из пп.1-4, 15-18 или 26-28, отличающаяся тем, что архитектура с одним операционным уровнем включает в себя управляющую программу машины, обеспечивающую программный интерфейс.
  33. 33. Система по любому из пп.1-4, 15-18, или 26-28, или 32, отличающаяся тем, что архитектура с одним операционным уровнем включает в себя машину-приемник информации, обеспечивающую поддержку собственного аппаратного обеспечения.
  34. 34. Система по любому из пп.1-4, 15-18, 26-28, 32 или 33, отличающаяся тем, что архитектура с одним операционным уровнем не включает в себя программный уровень.
  35. 35. Система по любому из пп.1-4, 15-18, 26-28 или 32-34, отличающаяся тем, что программные интерфейсы приложений транслируют в команды.
  36. 36. Система по любому из пп.1-4, 15-18, 26-28 или 32-35, отличающаяся тем, что машина пользователя выполнена с возможностью запускать, исполнять, управлять, контролировать и останавливать работу приложений на сервере.
  37. 37. Система по любому из пп.1-4, 15-18, 26-28 или 32-36, отличающаяся тем, что платформа выполнена с возможностью распознавания предварительно запрограммированного аппаратного обеспечения, чтобы не работать с неразрешенным аппаратным обеспечением.
  38. 38. Система по любому из пп.19-21 или 31-32, отличающаяся тем, что изменение размеров производят путем добавления тегов ширины и высоты к любому объекту в файле, не имеющему таких тегов, и путем изменения значений тегов ширины и высоты таким образом, чтобы эти объекты могли быть выведены на дисплей с разрешением, определяемым требованиями дисплея.
  39. 39. Система по п.38, отличающаяся тем, что значение тега ширины делят на 800 и умножают на ширину требуемого разрешения.
  40. 40. Система по п.38 или 39, отличающаяся тем, что значение тега высоты делят на 600 и умножают на высоту требуемого разрешения.
  41. 41. Система по любому из пп.5, 19-21 или 31-32, отличающаяся тем, что универсальный мультимедийный формат определен заранее.
  42. 42. Система по п.41, отличающаяся тем, что универсальный мультимедийный формат представляет собой формат потоковой передачи данных и имеет постоянные значения степени компрессии.
  43. 43. Система по п.41 или 42, отличающаяся тем, что с целью преобразования мультимедийного НТМЬ файла в универсальный мультимедийный формат его вначале подвергают декодированию и декомпрессии для перевода в исходные данные.
  44. 44. Программное обеспечение процессора, включающее компьютерную программу, конфигурирующую процессор для реализации им одной или нескольких систем, выполненных по любому из пп.143.
  45. 45. Компьютерная система, включающая в себя одно или несколько средств для реализации одной или нескольких систем, выполненных по любому из пп.1-43.
EA200401224A 2002-04-19 2003-04-17 Система и способ использования множества приложений EA006814B1 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SG200202352 2002-04-19
PCT/SG2003/000089 WO2003090200A1 (en) 2002-04-19 2003-04-17 System and method for use of multiple applications

Publications (2)

Publication Number Publication Date
EA200401224A1 EA200401224A1 (ru) 2005-06-30
EA006814B1 true EA006814B1 (ru) 2006-04-28

Family

ID=29247029

Family Applications (1)

Application Number Title Priority Date Filing Date
EA200401224A EA006814B1 (ru) 2002-04-19 2003-04-17 Система и способ использования множества приложений

Country Status (16)

Country Link
US (1) US20050278418A1 (ru)
EP (1) EP1497821A4 (ru)
JP (1) JP2005525631A (ru)
KR (1) KR20050003373A (ru)
CN (1) CN1685395A (ru)
AU (1) AU2003219640B2 (ru)
BR (1) BR0309383A (ru)
CA (1) CA2482951A1 (ru)
CO (1) CO5631485A2 (ru)
EA (1) EA006814B1 (ru)
IL (1) IL164704A0 (ru)
MX (1) MXPA04010299A (ru)
NZ (1) NZ536004A (ru)
TW (1) TW200402630A (ru)
WO (1) WO2003090200A1 (ru)
ZA (1) ZA200408459B (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2465634C2 (ru) * 2008-02-29 2012-10-27 Евро Клиа Са/Нв Система обработки инструкций в режиме реального времени
RU2507568C2 (ru) * 2007-12-05 2014-02-20 Ол2, Инк. Система для ускорения доставки веб-страницы

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9003461B2 (en) 2002-12-10 2015-04-07 Ol2, Inc. Streaming interactive video integrated with recorded video segments
US8840475B2 (en) 2002-12-10 2014-09-23 Ol2, Inc. Method for user session transitioning among streaming interactive video servers
US8893207B2 (en) 2002-12-10 2014-11-18 Ol2, Inc. System and method for compressing streaming interactive video
US8949922B2 (en) 2002-12-10 2015-02-03 Ol2, Inc. System for collaborative conferencing using streaming interactive video
US20090118019A1 (en) 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US9032465B2 (en) 2002-12-10 2015-05-12 Ol2, Inc. Method for multicasting views of real-time streaming interactive video
US8712858B2 (en) * 2004-08-21 2014-04-29 Directworks, Inc. Supplier capability methods, systems, and apparatuses for extended commerce
US7983246B2 (en) * 2004-12-20 2011-07-19 Lg Electronics Inc. Multimedia access system
JP4722519B2 (ja) * 2005-03-25 2011-07-13 株式会社日立製作所 計算機システム及びストレージサーバ、検索サーバ、端末装置並びに検索方法
JP5124912B2 (ja) * 2005-06-23 2013-01-23 ソニー株式会社 電子広告システム及び電子広告方法
KR100776799B1 (ko) * 2005-12-02 2007-11-19 한국전자통신연구원 끊김 없는 실시간 멀티미디어 서비스 제공 시스템 및 방법
WO2009025757A1 (en) 2007-08-17 2009-02-26 Salesforce.Com, Inc. On-demand database service system, method, and computer program product for verifying that a developed application will operate properly with at least one other application
US8176129B2 (en) * 2007-08-27 2012-05-08 International Business Machines Corporation System and method of sending compressed html messages over telephony protocol
US20090240628A1 (en) * 2008-03-20 2009-09-24 Co-Exprise, Inc. Method and System for Facilitating a Negotiation
KR101432309B1 (ko) * 2008-09-11 2014-09-23 주식회사 엘지유플러스 웹 뷰어 서버 및 그 제어방법과 웹 뷰어 서버를 포함하는 마크업 페이지 제공 시스템 및 그 제어방법
JP4820893B2 (ja) * 2009-07-31 2011-11-24 東芝テック株式会社 注文受付装置及び注文受付プログラム
CN102457541A (zh) * 2010-10-25 2012-05-16 鸿富锦精密工业(深圳)有限公司 无盘工作站启动过程中避免发生资源竞争的***及方法
RO127693A2 (ro) * 2010-12-02 2012-07-30 Adobe Systems Incorporated Transmitere html nativă integrată
KR101885133B1 (ko) * 2011-02-01 2018-08-03 삼성전자주식회사 디지털 디바이스에서 어플리케이션 자동 인스톨 기능을 제공하기 위한 장치 및 방법
CN102368263B (zh) * 2011-10-17 2013-03-06 苏州阔地网络科技有限公司 一种文件格式转换的方法及装置
WO2013130651A2 (en) * 2012-02-27 2013-09-06 Sequent Software Inc. System for storing one or more passwords in a secure element
CN103200425B (zh) * 2013-03-29 2016-04-06 天脉聚源(北京)传媒科技有限公司 一种多媒体处理装置及方法
US9588667B2 (en) * 2014-01-25 2017-03-07 Microsoft Technology Licensing, Llc Transformation of tabular data across multiple browser viewports
EP2919418B1 (en) 2014-03-13 2017-03-01 Alcatel Lucent Apparatuses, methods and computer program for a base station transceiver and for a mobile transceiver
HK1193318A2 (en) * 2014-04-01 2014-09-12 Chaatz Ltd A communication agent method
US10044695B1 (en) 2014-09-02 2018-08-07 Amazon Technologies, Inc. Application instances authenticated by secure measurements
US9754116B1 (en) 2014-09-03 2017-09-05 Amazon Technologies, Inc. Web services in secure execution environments
US9577829B1 (en) 2014-09-03 2017-02-21 Amazon Technologies, Inc. Multi-party computation services
US9246690B1 (en) 2014-09-03 2016-01-26 Amazon Technologies, Inc. Secure execution environment services
US10061915B1 (en) 2014-09-03 2018-08-28 Amazon Technologies, Inc. Posture assessment in a secure execution environment
US10079681B1 (en) * 2014-09-03 2018-09-18 Amazon Technologies, Inc. Securing service layer on third party hardware
US9491111B1 (en) 2014-09-03 2016-11-08 Amazon Technologies, Inc. Securing service control on third party hardware
US9584517B1 (en) 2014-09-03 2017-02-28 Amazon Technologies, Inc. Transforms within secure execution environments
CN106533794A (zh) * 2016-12-13 2017-03-22 郑州云海信息技术有限公司 一种集群节点依赖包安装的方法、装置及***
US10613878B2 (en) * 2018-02-27 2020-04-07 Avid Technology, Inc. Plug-ins as microservices
RU2683613C1 (ru) * 2018-03-30 2019-03-29 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Система управления сетью pos-терминалов
CN118057309A (zh) * 2022-11-18 2024-05-21 富联精密电子(天津)有限公司 驱动内核模块封装方法、电子设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742829A (en) * 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
TW347616B (en) * 1995-03-31 1998-12-11 Qualcomm Inc Method and apparatus for performing fast power control in a mobile communication system a method and apparatus for controlling transmission power in a mobile communication system is disclosed.
US6049671A (en) * 1996-04-18 2000-04-11 Microsoft Corporation Method for identifying and obtaining computer software from a network computer
JPH10171730A (ja) * 1996-12-13 1998-06-26 Hitachi Ltd 画像転送方法
KR100248045B1 (ko) * 1997-05-19 2000-03-15 윤종용 하드디스크마스터제작시스템및그제작방법
US6381742B2 (en) * 1998-06-19 2002-04-30 Microsoft Corporation Software package management
US6456305B1 (en) * 1999-03-18 2002-09-24 Microsoft Corporation Method and system for automatically fitting a graphical display of objects to the dimensions of a display window
JP3671759B2 (ja) * 1999-08-26 2005-07-13 株式会社日立製作所 ソフトウェア配布方法およびシステム
WO2001079998A2 (en) * 2000-04-10 2001-10-25 Autoprof.Com, Inc. Method and system for configuring remotely located applications
US8463912B2 (en) * 2000-05-23 2013-06-11 Media Farm, Inc. Remote displays in mobile communication networks
US6751794B1 (en) * 2000-05-25 2004-06-15 Everdream Corporation Intelligent patch checker
US7210099B2 (en) * 2000-06-12 2007-04-24 Softview Llc Resolution independent vector display of internet content
US6966034B2 (en) * 2000-06-30 2005-11-15 Microsoft Corporation Supplemental request header for applications or devices using web browsers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2507568C2 (ru) * 2007-12-05 2014-02-20 Ол2, Инк. Система для ускорения доставки веб-страницы
RU2465634C2 (ru) * 2008-02-29 2012-10-27 Евро Клиа Са/Нв Система обработки инструкций в режиме реального времени

Also Published As

Publication number Publication date
WO2003090200A1 (en) 2003-10-30
EP1497821A1 (en) 2005-01-19
AU2003219640A1 (en) 2003-11-03
ZA200408459B (en) 2006-03-29
NZ536004A (en) 2006-10-27
BR0309383A (pt) 2005-03-08
CA2482951A1 (en) 2003-10-30
EP1497821A4 (en) 2007-10-03
AU2003219640B2 (en) 2007-06-28
EA200401224A1 (ru) 2005-06-30
US20050278418A1 (en) 2005-12-15
KR20050003373A (ko) 2005-01-10
MXPA04010299A (es) 2005-06-08
JP2005525631A (ja) 2005-08-25
CO5631485A2 (es) 2006-04-28
CN1685395A (zh) 2005-10-19
TW200402630A (en) 2004-02-16
IL164704A0 (en) 2005-12-18

Similar Documents

Publication Publication Date Title
EA006814B1 (ru) Система и способ использования множества приложений
US8831995B2 (en) Optimized server for streamed applications
EP2847686B1 (en) Enhanced document and event mirroring for accessing content
US6959320B2 (en) Client-side performance optimization system for streamed applications
US8769127B2 (en) Cross-domain solution (CDS) collaborate-access-browse (CAB) and assured file transfer (AFT)
US20160088109A1 (en) Method and Apparatus for Remotely Running Application Program
US9317681B2 (en) Information processing apparatus, information processing method, and computer program product
US9342329B2 (en) Method and system for cross-operating systems execution of software applications
JP2014112397A (ja) ストリームベースのソフトウェアアプリケーション配信及び起動システム
US9560122B1 (en) Secure native application messaging with a browser application
Liechti PySerial documentation
US10635816B2 (en) Restricting reprogramming of a redirected USB device
JP4724660B2 (ja) 組み込みシステムの中に統合されるソフトウェアコンポーネントを管理する方法
US9942267B1 (en) Endpoint segregation to prevent scripting attacks
KR20110123867A (ko) 웹 어플리케이션 실행 장치 및 그의 웹 어플리케이션 관리 방법
US5838911A (en) Method and apparatus for obtaining network information by using a dynamic link library
CN111988292A (zh) 一种内网终端访问互联网的方法、装置及***
JP2007527562A5 (ru)
US20090271518A1 (en) Ethernet extensibility
WO2023083071A1 (zh) 视图交互方法、装置、电子设备及计算机可读介质
US20200133522A1 (en) System and method to secure a computer system by selective control of write access to a data storage medium
JP4785870B2 (ja) 非正規な読み込みオペレーションを介する周辺機器への信号通信
US7860987B2 (en) Apparatus for providing service in response to user request and method therefor
US10044728B1 (en) Endpoint segregation to prevent scripting attacks
NZ545458A (en) System and method for use of multiple applications in a mobile computing environment

Legal Events

Date Code Title Description
MM4A Lapse of a eurasian patent due to non-payment of renewal fees within the time limit in the following designated state(s)

Designated state(s): AM AZ BY KZ KG MD TJ TM RU