RU2142158C1 - Распределенная вычислительная система и компьютер-клиент этой системы - Google Patents
Распределенная вычислительная система и компьютер-клиент этой системы Download PDFInfo
- Publication number
- RU2142158C1 RU2142158C1 RU95106682A RU95106682A RU2142158C1 RU 2142158 C1 RU2142158 C1 RU 2142158C1 RU 95106682 A RU95106682 A RU 95106682A RU 95106682 A RU95106682 A RU 95106682A RU 2142158 C1 RU2142158 C1 RU 2142158C1
- Authority
- RU
- Russia
- Prior art keywords
- data
- data stream
- module
- distributed computing
- client computer
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/564—Enhancement of application control based on intercepted application data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26266—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for determining content or additional data repetition rate, e.g. of a file in a DVB carousel according to its importance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4351—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/47815—Electronic shopping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/567—Integrating service provisioning from a plurality of service providers
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Computing Systems (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Marketing (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Hardware Redundancy (AREA)
- Stored Programmes (AREA)
Abstract
Изобретение относится к распределенным вычислительным системам "клиент-сервер". Техническим результатом является возможность участвующему компьютеру-клиенту присоединиться к распределенной вычислительной задаче в любое время и выполнять свою собственную вычислительную функцию со своей скоростью. Система содержит источник непрерывного потока данных, включающего повторяющиеся данные, представляющие распределенную вычислительную прикладную задачу, и компьютер-клиент, принимающий поток данных для извлечения из него данных, представляющих распределенную вычислительную прикладную задачу, и выполнения этой задачи. 2 с. и 18 з.п.ф-лы, 4 ил.
Description
Настоящее изобретение относится к распределенным вычислительным системам "клиент-сервер". Такие вычислительные системы находят применение в системах типа мультимедиа.
Ранние вычислительные системы представляли собой изолированные системы, состоящие в основном из больших ЭВМ. Позднее отдельные вычислительные системы из больших ЭВМ связывались между собой или группировались для того, чтобы решать большие вычислительные задачи, например обслуживать большое количество пользователей в режиме разделения времени. С появлением персональных компьютеров оказалось, что большое количество изолированных вычислительных систем с относительно низкой производительностью управлялись непосредственно их пользователями. Вскоре большое количество этих персональных компьютеров были объединены в сети компьютеров, что обеспечило разделение ресурсов и возможность передачи данных пользователям индивидуальных персональных компьютеров, а также обмен данными между этими пользователями и уже существующими большими ЭВМ.
Одна из форм такой сети содержит центральный компьютер, называемый сервером, который, как правило, имеет в своем составе большой объем массовой памяти. Программы, используемые пользователями сети, хранятся централизованно в массовой памяти сервера. Когда пользователю требуется запустить программу, его компьютер посылает запрос на пересылку из сервера копии этой программы к себе. В ответ на этот запрос сервер посылает копию требуемой программы из своей массовой памяти в основную память персонального компьютера этого пользователя и далее программа выполняется в персональном компьютере. Данные также могут централизованно храниться в сервере и находиться в распоряжении всех пользователей сети. Эти данные хранятся в массовой памяти сервера и к ним возможен доступ со стороны всех пользователей сети по их запросу. Сервер также может служить центральным узлом для передачи сообщений (электронная почта) между пользователями сети. Сервер в такой системе осуществляет функции хранения и распределения программ, данных и сообщений, но его вычислительные ресурсы не используются для решения текущих вычислительным задач какого-либо пользователя, т.е. пользователь не может рассчитывать на то, что вычислитель сервера будет выполнять какие-либо задачи обработки по программе, выполняемой в персональном компьютере. Хотя такие сети выполняют важную функцию, они не являются распределенными вычислительными системами, в которых соединенные между собой компьютеры объединяются для выполнения единой вычислительной задачи.
Для усовершенствования таких сетей конфигурацию сети можно задать таким образом, что пользователи в сети могут запрашивать сервер сети или другой персональный компьютер, присоединенный к сети, выполнить программу. Это называется удаленным выполнением, потому что компьютер (сервер или другой персональный компьютер), удаленный от источника запроса, в ответ на этот запрос осуществляет выполнение программы. В такой системе программа, удаленное выполнение которой запрашивается, либо посылается от источника запроса в удаленный компьютер, либо извлекается из сервера по запросу от удаленного компьютера. Когда программа принята, она выполняется. Таким образом несколько компьютеров могут быть объединены для совместной работы по выполнению вычислений.
Не так давно существовали программы, которые распределяли текущие вычислительные задачи, необходимые для выполнения единой вычислительной функции. Например, в такой программе как управление базой данных, когда база данных хранится в массовой памяти сервера, при обращении пользователя к базе данных часть программы управления базой данных, которая имеется в персональном компьютере данного пользователя, формирует запрос на обращение, который пересылается в сервер. Часть программы управления базой данных, которая находится в сервере, обрабатывает это обращение, например, анализирует запрос на обращение, определяет местоположение заданных в за просе данных в устройстве массовой памяти сервера, обращается к этим данным и по сети отсылает результаты в тот персональный компьютер, который формировал запрос. Далее часть программы управления базой данных в персональном компьютере обрабатывает данные, полученные от сервера, то есть выполняет их форматирование и отображает на экране или распечатывает на принтере. Когда сервер осуществляет обработку запроса, персональный компьютер свободен и может выполнять другую обработку, а когда персональный компьютер формирует запрос на обращение и обрабатывает результирующие данные, полученные от сервера, сервер свободен и может обрабатывать запросы на обращение от других персональных компьютеров.
Другие виды программ также могут быть легко приспособлены к этому типу распределенных вычислений, называемому вычислением по типу "клиент-сервер". Распределение задач по обработке между персональным компьютером и сервером увеличивает эффективность вычислений в сети. Такие вычислительные системы "клиент-сервер" и сети для удаленного выполнения могут быть названы распределенными вычислительными системами, поскольку несколько компьютеров (сервер и/или соответствующие периферийные компьютеры) объединяются для выполнения вычислительной функции, например для управления базой данных.
Не так давно были предложены вещательные программы типа мультимедиа, в частности программы интерактивного телевидения (ТВ). Программы интерактивного ТВ обеспечат зрителю телевизионной программы возможность взаимодействия с этой программой. В интерактивной ТВ системе в центральной вещательной станции (ТВ сеть, Местная ТВ студия, кабельная система и т.д) будет иметься центральный компьютер, соответствующий серверному компьютеру, который будет формировать сигналы, относящиеся к программе интерактивного ТВ, подлежащей передаче, одновременно с ТВ сигналами звука и изображения. Эти сигналы несут данные, представляющие интерактивную ТВ программу, и могут содержать команды, рабочие программы и/или данные для управления взаимодействием со зрителем. Там, где находится зритель, будет иметься компьютер, соответствующий компьютеру-клиенту, который будет получать команды, рабочую программу и/или данные от центрального компьютера, выполнять рабочую программу, обрабатывать полученные данные, принимать данные, вводимые пользователем, и обеспечивать пользователя данными на ТВ экране. Введенные пользователем данные могут быть посланы обратно в компьютер центральной вещательной станции, давая возможность пользователю взаимодействовать с программой интерактивного ТВ.
Патент USA 4965825 описывает систему интерактивного ТВ, в которой центральная вещательная станция передает сигналы, несущие команды, рабочую программу и данные в интервалах гашения обратного хода кадровой развертки для приема компьютерными системами, находящимися у зрителей. Компьютер у зрителя извлекает команды, рабочую программу и данные и выполняет программу обработки данных и взаимодействия с пользователем. Такая система сравнима с функцией удаленного выполнения распределенной вычислительной системы, описанной выше, в которой компьютер зрителя включен в программу интерактивного ТВ и управляется из центральной станции.
Во всех вышеописанных системах центральный компьютер управляет запросами периферийных компьютеров, которые подсоединены к нему через сеть, или отвечает на эти запросы, то есть периферийный компьютер (персональный компьютер) запрашивает удаленное выполнение программы, файл или сообщение от другого компьютера или посылает запрос на обращение к другому компьютеру. Только в ответ на запрос другой компьютер производит ответные действия, например, осуществляет удаленное выполнение программы, выдает запрошенный файл, сообщения или найденные в результате поиска данные. Кроме того, в общем случае персональный компьютер должен иметь все ресурсы, необходимые для полного или почти полного выполнения требуемой программы, при этом сервер действует лишь как дополнительное устройство хранения или, самое большее, как распределитель вычислительных заданий.
Авторы данного изобретения предлагают распределенную вычислительную систему, в которой серверный компьютер непрерывно формирует поток данных. Этот поток играет роль устройства массовой памяти для принимающих его компьютеров-клиентов. Этот поток данных содержит повторяющиеся данные, представляющие рабочую программу, и данные, которые относятся к прикладной задаче, решаемой на основе распределения функций, в которой может участвовать компьютер-клиент. Средства транспортировки, включающие высокоскоростную однонаправленную линию связи, переносят поток данных от сервера к компьютеру- клиенту. Компьютер-клиент принимает этот поток данных, извлекает из него данные, относящиеся к распределенным вычислениям, и выполняет прикладную задачу на основе распределения функций (распределенную вычислительную прикладную задачу).
В соответствии с принципами настоящего изобретения распределенная вычислительная система содержит источник непрерывного потока данных, который включает повторяющиеся данные, представляющие прикладную задачу, решаемую на основе распределения функций, и компьютер-клиент, который принимает этот поток данных для извлечения из него данных, представляющих указанную прикладную задачу, и решения этой прикладной задачи.
В распределенной вычислительной системе, соответствующей изобретению, для системы компьютеров-клиентов нет необходимости иметь все ресурсы, в частности, основную память и массовую память, необходимые для выполнения всей программы. Массовая память не требуется потому, что ее функцию выполняет поток данных, а требования к основной памяти снижены, поскольку в памяти необходимо хранить лишь ту часть программы, которая выполняется в текущий момент. Когда выполнение части программы в текущий момент завершено, объем памяти, который она занимала, освобождается, и из потока данных извлекается следующая часть рабочей программы, которая загружается в освободившийся объем памяти и затем начинает выполняться.
Кроме того, распределенная вычислительная система, соответствующая настоящему изобретению, дает пользователю компьютера-клиента возможность выбора на предмет участия в решении распределенной вычислительной прикладной задачи. Если требуется принять участие, то компьютер-клиент извлекает данные, относящиеся к распределенной вычислительной задаче, и выполняет эту задачу, как описано выше. Если участия не требуется, то поток данных просто игнорируется и выполняется обработка по желанию пользователя или вообще не выполняется никакой обработки. Такая распределенная вычислительная система также дает возможность участвующему компьютеру-клиенту присоединиться к распределенной вычислительной задаче в любое время и выполнять свою собственную вычислительную функцию со своей скоростью.
Распределенная вычислительная система, соответствующая настоящему изобретению, особенно подходит для интерактивного телевидения, так как она позволяет зрителю настроиться на канал интерактивного ТВ в любое время, вступать во взаимодействие всякий раз, когда потребуется (или не вступать вообще), и работать со своей скоростью. Это особенно выгодно в случае, условии, когда в интерактивной программе имеется интерактивная коммерческая программа со своей собственной рабочей программой и данными, или когда зритель хочет изменить каналы.
Изобретение поясняется чертежами, на которых
фиг. 1 изображает блок-схему распределенной вычислительной системы, выполненной в соответствии с настоящим изобретением;
фиг. 2 изображает блок-схему серверного компьютера, показанного на фиг. 1;
фиг. 3 изображает временную диаграмму, которая показывает поток данных, формируемый компьютером-сервером в распределенной вычислительной системе, приведенной на фиг. 1, и
фиг. 4 изображает блок-схему компьютера-клиента, показанного на фиг. 1.
фиг. 1 изображает блок-схему распределенной вычислительной системы, выполненной в соответствии с настоящим изобретением;
фиг. 2 изображает блок-схему серверного компьютера, показанного на фиг. 1;
фиг. 3 изображает временную диаграмму, которая показывает поток данных, формируемый компьютером-сервером в распределенной вычислительной системе, приведенной на фиг. 1, и
фиг. 4 изображает блок-схему компьютера-клиента, показанного на фиг. 1.
На фиг. 1 показана блок-схема распределенной вычислительной системы в соответствии с настоящим изобретением. На фиг.1 источник непрерывного потока данных в виде серверного компьютера 10, который может включать в себя большую вычислительную систему, соединен с множеством компьютеров-клиентов 20 через средства 30 транспортировки. Серверный компьютер 10 может быть соединен более чем с тремя компьютерами-клиентами 20, показанными на фиг. 1, а компьютеры-клиенты 20 географически могут находиться далеко друг от друга. Компьютер-клиент 22 связан двунаправленной линией с местным компьютером 40, системой 50 обработки вспомогательнных данных и с центральным устройством 60 обработки. Центральное устройство 60 обработки двунаправленной линией связано с серверным компьютером 10. Центральное устройство обработки может быть соединено не только с серверным компьютером 10, как показано на фиг. 1, но и с другими устройствами. Местный компьютер 40 также соединен с устройством 70 массовой памяти двунаправленной линией. Компьютер-клиент 22 взаимодействует с пользователем 80, предоставлял ему информацию на экране дисплея или через другое устройство вывода (не показано) и принимая от него информацию через клавиатуру или через иное устройство ввода (тоже не показано).
Компьютеры-клиенты 24 и 26 также взаимодействуют со своими пользователями (не показаны для упрощения чертежа). Кроме того, компьютеры-клиенты 24 и 26 двунаправленной линией связаны с центральным устройством 60 обработки. Однако такие линии связи не являются обязательными. Единственными требованиями к компьютерам-клиентам 20 является взаимодействие с пользователем и связь со средствами 30 транспортировки. Связи с местными компьютерами, системами обработки вспомогательных данных и центральным устройством 60 обработки являются факультативными и иметь их каждому из компьютеров-клиентов 20 нет необходимости.
Средства 30 транспортировки содержат однонаправленную высокоскоростную цифровую линию связи, такую как прямая оптоволоконная или цифровая спутниковая связь, от сервера 10 до компьютеров-клиентов 20. Данные могут передаваться через средства 30 транспортировки в виде системы пакетных данных. В такой системе поток пакетов данных, каждый из которых содержит идентификационную информацию, которая, помимо прочего, указывает тип данных, содержащихся в пакете, и текущие данные, передается по линии передачи данных. Такая система пакетных данных позволяет выполнять временное мультиплексирование нескольких независимых потоков данных, каждый из которых распознается с помощью идентификационной информации, содержащейся в его пакетах, в одном потоке пакетов.
Кроме того, возможно мультиплексирование множества таких пакетов данных по соответствующим каналам в той же физической среде (оптоволоконный канал или спутниковый радиоканал связи), образующей средства 30 транспортировки. Например, различные потоки данных могут модулировать несущие с различными частотами. Эти модулированные несущие могут быть переданы через соответствующий преобразователь непрерывных данных в цифровые (транспондер), например по спутниковой линии связи. Кроме того, если данный транспондер имеет достаточную пропускную способность, становится возможным временное мультиплексирование нескольких потоков данных, передаваемых на одной несущей.
Каждый из компьютеров-клиентов 20 содержит приемник данных, который выбирает один из потоков пакетов, передаваемых через средство 30 транспортировки, принимает выбранный поток пакетов и извлекает находящиеся в нем данные. Для примера, приведенного выше, приемник может содержать настраиваемый демодулятор для приема одной из модулированных несущих, которые поступают по спутниковой линии связи. Кроме того, приемник данных может содержать схему для временного демультиплексирования соответствующих потоков данных, которые несет модулированная несущая.
В процессе работы сервер 10 формирует непрерывный поток данных в виде потока пакетов для компьютеров-клиентов 20. Сервер 10 периодически вводит в поток данных пакет или следующие один за другим пакеты, содержащие данные, представляющие прикладную задачу, решаемую на основе распределения функций (распределенную вычислительную прикладную задачу), причем эти данные включают по крайней мере один модуль рабочей программы. Этот программный модуль содержит рабочую программу для компьютеров-клиентов 20. Приемник данных, например в компьютере-клиенте 22, постоянно следит за пакетами в потоке данных, передаваемом средствами 30 транспортировки. Когда в потоке данных присутствует пакет, идентификационная информация которого указывает на то, что данный пакет содержит требуемый компьютером-клиентом 22 программный модуль (или часть программного модуля), компьютер-клиент 22 обнаруживает его присутствие, извлекает программный модуль (или часть программного модуля) из этого пакета и записывает его в основную память. Когда программный модуль полностью принят, компьютер-клиент 22 начинает его выполнение.
В непрерывный поток данных может быть помещено более одного программного модуля, каждый из которых содержит различные части распределенной вычислительной прикладной задачи. Например, возможно разделение прикладной задачи на небольшие части таким образом, что сразу необходимо выполнять лишь одну часть задачи. Эта часть загружается в память компьютера-клиента 22. Когда завершается выполнение этой части задачи, программный модуль, содержащий рабочую программу для следующей части распределенной вычислительной прикладной задачи, извлекается из потока данных, записывается в память и выполняется. Каждая часть задачи извлекается из потока данных по мере необходимости. Если компьютер-клиент 22 имеет достаточно памяти, то возможно загрузить в память несколько программных модулей и переходить от одного к другому без извлечения их из потока данных, но это не обязательно. Путем такого структурирования прикладной задачи, решаемой на основе распределения функций, требуемый размер памяти компьютера-клиента 22 может быть минимизирован.
Сервер 10 может также включать в поток данных повторяющийся пакет или пакеты, содержащие один или более модулей данных. Модули данных содержат данные, которые требуется обработать рабочей программой из программного модуля. Перед выполнением или в процессе выполнения программы из предварительно извлеченного программного модуля компьютер-клиент 22 может затребовать доступ к данным, которые находятся в модуле или в модулях данных. Если это так, то компьютер-клиент 22 контролирует поток данных на предмет наличия требуемого модуля или модулей данных. Если пакеты, содержащие модуль или модули данных (или части модуля или модулей данных), присутствуют в потоке данных, они извлекаются и их содержимое запоминается в основной памяти компьютера-клиента 22. Когда все требуемые модули данных полностью приняты, компьютер-клиент 22 начинает или продолжает выполнение программы из программного модуля по обработке данных, полученных в модуле или в модулях данных. Как и в случае программных модулей, возможна запись в память более чем одного модуля данных, если в памяти компьютера-клиента 22 достаточно места.
Сервер 10 может дополнительно включать в поток данных повторяющиеся пакет или пакеты, содержащие каталог программных модулей и модулей данных, включенных в поток данных в текущий момент. Каталог содержит список всех программных модулей и модулей данных, которые имеются в потоке данных, вместе с информацией об этих модулях. Если в потоке данных есть каталог, то до извлечения любого программного модуля или модуля данных из потока данных компьютер-клиент 22 контролирует поток данных на предмет наличия в нем каталога. Если пакеты, содержащие каталог (или части каталога) присутствуют в потоке данных, то они извлекаются и информация из них запоминается в основной памяти компьютера-клиента 22. Когда каталог полностью получен, компьютер-клиент 22 проверяет соответствие записей в каталоге, а затем запрашивает первый программный модуль и/или модуль данных из потока данных и производится выполнение так, как описано выше.
Любой из компьютеров-клиентов 20 может вступать в реализацию распределенной вычислительной функции, представленной потоком пакетов, в любой момент времени, и каждый из компьютеров-клиентов 20 может работать со своей обычной скоростью, обычно под управлением пользователя 80. Для этого сервер 10 периодически помещает каталог и все модули программ и данных, которые компьютеры-клиенты 20 могут затребовать для выполнения своей части распределенной вычислительной функции, в поток данных, передаваемый по средствам 30 транспортировки. Всякий раз, как только один из компьютеров-клиентов 20 вступает в реализацию распределенной вычислительной функции, он отслеживает в средствах 30 транспортировки вновь выбранный поток пакетов для выделения модуля каталога, извлекает его и обрабатывает так, как описано выше. В процессе выполнения как только один из компьютеров-клиентов 20 потребует новый программный модуль и/или модуль данных, он проверяет поток данных в средствах 30 транспортировки на наличие этого требуемого программного модуля и/или модуля данных, извлекает его и либо выполняет его, если это программный модуль, либо обрабатывает, если это модуль данных, так, как описано выше.
Поток пакетных данных может также содержать пакеты вспомогательных данных. Эти данные не нужны компьютеру-клиенту 22 для выполнения программы, хотя они могут относиться к выполнению, поскольку пользователь 80 может взаимодействовать с рабочей программой в компьютере-клиенте 22, основываясь на полученных вспомогательных данных. Приемник потока данных в компьютере-клиенте 22 распознает пакеты вспомогательных данных, передаваемых средствами 30 транспортировки, и посылает их непосредственно в процессор 50 обработки вспомогательных данных. Процессор 50 обработки вспомогательных данных осуществляет обработку предназначенных для него пакетов независимо от компьютера-клиента 22. Если вспомогательные данные должны быть представлены пользователю 80, то процессор 50 обработки вспомогательных данных можно обеспечить своим собственным дисплеем (не показан), который может быть использован и для компьютера-клиента 22, или дисплей (не показан), связанный с компьютером-клиентом 22, может быть использован процессором 50 обработки вспомогательных данных для обеспечения единого отображения информации пользователю 80. Процессор 50 обработки вспомогательных данных может иметь связи (не показаны) с другими изображенными элементами, но это зависит от вида данных.
В одной из форм осуществления настоящего изобретения источник потока данных формирует поток данных в виде последовательностей пакетов; причем первая из последовательностей пакетов содержит данные, представляющие распределенную вычислительную прикладную задачу, и включает идентификационную информацию, указывающую на то, что первая последовательность пакетов содержит данные, представляющие распределенную вычислительную прикладную задачу, а вторая последовательность пакетов содержит вспомогательные данные и включает идентификационную информацию, указывающую на то, что вторая последовательность пакетов содержит вспомогательные данные.
В другой из форм осуществления настоящего изобретения источник потока данных формирует поток данных в виде последовательностей пакетов; причем первая из последовательностей пакетов содержит данные, представляющие модуль рабочей программы и включает идентификационную информацию, указывающую на то, что первая последовательность пакетов содержит данные, представляющие модуль рабочей программы; вторая последовательность пакетов содержит данные, представляющие модуль данных, и включает идентификационную информацию, указывающую на то, что вторая последовательность пакетов содержит информацию, представляющую модуль данных; а третья последовательность пакетов содержит вспомогательные данные и включает идентификационную информацию, указывающую на то, что третья последовательность пакетов содержит вспомогательные данные.
В еще одной из форм осуществления настоящего изобретения источник потока данных формирует поток данных в виде последовательностей пакетов; причем первая из последовательностей пакетов содержит данные, представляющие модуль рабочей программы, и включает идентификационную информацию, указывающую на то, что первая последовательность пакетов содержит данные, представляющие модуль рабочей программы; вторая последовательность пакетов содержит данные, представляющие модуль данных, и включает идентификационную информацию, указывающую на то, что вторая последовательность пакетов содержит данные, представляющие модуль данных; третья последовательность пакетов содержит данные, представляющие модуль каталога, и включает идентификационную информацию, указывающую на то, что третья последовательность пакетов содержит данные, представляющие модуль каталога; а четвертая последовательность пакетов содержит вспомогательные данные и включает идентификационную информацию, указывающую на то, что четвертая последовательность пакетов содержит вспомогательные данные.
Например, в интерактивных ТВ системах вспомогательные данные включают составляющие изображения и звукового сопровождения основного телевизионного сигнала. Вспомогательные данные, к примеру, могут содержать видеопакеты данных, кодированных согласно протоколу MPEG (или аналогичному) и представляющих телевизионное изображение, и аудиопакеты, содержащие сигналы звукового сопровождения в цифровом коде. Более того, возможно наличие нескольких различных потоков аудиопакетов, несущих соответствующие стереофонические каналы, вторую звуковую программу или обеспечивающие возможность многоязычного звукового сопровождения. В такой системе в процессоре 50 обработки вспомогательных данных видеопакеты изображения поступали бы на известный MPEG (или подобный) декодер (не показан), который воспроизводил бы стандартные видеосигналы для передачи в телевизионный приемник или на видеомонитор (не показаны). Аудиопакеты поступали бы на известный декодер звука (не показан), который формирует стандартные звуковые сигналы для телевизионного приемника или для звуковоспроизводящего устройства (не показано).
В такой системе интерактивного ТВ компьютер-клиент 22 может в результате выполнения программного модуля снабжать пользователя 80 информацией в виде графических изображений. Эти графические изображения могут комбинироваться со стандартным видеосигналом от MPEG декодера известным способом, при этом суммарное изображение отображается на экране телевизионного приемника или видеомонитора. Компьютер-клиент 22 может также создавать звуковые сигналы, предоставляющие зрителю другую информацию. Формируемый звук может объединяться известным способом со стандартными звуковыми сигналами от звукового декодера, при этом суммарный звуковой сигнал воспроизводится в телевизионном приемнике или в устройствах воспроизведения звука.
Кроме того, в поток вспомогательных телевизионных пакетных данных или в поток пакетных данных, представляющих прикладную задачу в виде интерактивного ТВ, или в оба эти потока могут быть включены данные временного кода. Это дает возможность синхронизировать во времени любые графические изображения или звуки, формируемые компьютером-клиентом 22, и телевизионный сигнал, несущий вспомогательные данные. В этом случае компьютер-клиент 22 будет иметь доступ к данным временного кода и управлять формированием графического изображения и/или звука с целью обеспечить их появление в требуемые моменты времени в соответствии с данными временного кода.
В такой системе интерактивного ТВ как компьютер-клиент 22, так и процессор 50 обработки вспомогательных данных могут быть помещены в одном корпусе, например в телевизионном приемнике или в устанавливаемой на приемнике декодерной приставке. Телевизионный приемник или декодерная приставка к нему могут иметь соединители для подключения к местному компьютеру или другим устройствам.
Пользователь 80 обеспечивает ввод данных в программу, запущенную на компьютере-клиенте 22, в процессе ее выполнения. Эти данные могут потребоваться серверу 10 для того, чтобы реализовать распределенную вычислительную функцию. В интерактивной ТВ системе, например, пользователь 80 может обеспечить ввод данных в компьютер-клиент через ручной пульт дистанционного управления.
Данные пользователя передаются в компьютер-сервер 10 через центральное устройство 60 обработки. В одном из вариантов изобретения данные посылаются от компьютеров-клиентов 20 в компьютер-сервер 10 через модемы по телефонной системе, действующей как центральное устройство 60 обработки. Компьютер-сервер 10 принимает и обрабатывает данные, полученные от компьютеров-клиентов 20, в процессе выполнения своей части распределенной вычислительной функции.
Компьютер-сервер 10 может формировать новые или модифицировать существующие модули программ и/или данных в потоке данных, передаваемом средствами 30 транспортировки способом, описываемом ниже, на основе полученных данных. Альтернативным вариантом может быть немедленный возврат информации компьютером-сервером 10 компьютерам-клиентам 20 в другом направлении через центральное устройство 60 обработки. Информация во вновь сформированных программных модулях и/или модулях данных обрабатывается всеми компьютерами-клиентами 20, участвующими в реализации распределенной вычислительной функции, в то время как информация, посланная от компьютера-сервера 10 в компьютеры-клиенты 20 через центральное устройство 60 обработки, относится к тому компьютеру-клиенту (20, 24, 26), которому эта информация была направлена.
В другом варианте реализации центральное устройство 60 обработки может содержать свою собственную вычислительную систему, подключенную отдельно с помощью модема как к компьютерам-клиентам 20, так и к компьютеру-серверу 10 через телефонную систему. В любом из вариантов реализации, описанных выше, центральное устройство 60 обработки обеспечивает доступ к другим компьютерам или устройствам обработки (не показаны) через телефонную систему. Таким образом, если для реализации распределенной вычислительной функции необходима информация от других вычислительных систем, то доступ к этим системам через модемы по телефонной сети может быть либо со стороны компьютеров-клиентов 20, либо со стороны компьютера-сервера 10.
Порт ввода/вывода в компьютере-клиенте 22 соединен с соответствующим портом местного компьютера 40. Местный компьютер 40 расположен в том же месте, что и компьютер-клиент 22. Местный компьютер 40 может быть персональным компьютером, который используется пользователем 80 компьютера-клиента 22, или может быть большим компьютером или компьютерной сетью, расположенной в том же самом месте, что и компьютер-клиент 22. Это позволяет компьютеру-клиенту 22 иметь доступ к данным в массовой памяти 70 связанного с ним персонального компьютера или компьютерной сети, которые расположены в том же месте, где находится компьютер-клиент 22. Кроме того, компьютер-клиент 22 может пользоваться массовой памятью 70 местного компьютера 40 для хранения данных, которые должны отыскиваться позже. Это эквивалентно тому, что местный компьютер 40 будет содержать как выходное устройство (не показано), например монитор компьютера, так и входное устройство (тоже не показано), например клавиатура компьютера. Оба эти устройства могут также использоваться для компьютера-клиента 22 и/или процессора 50 вспомогательных данных, как описано выше.
Например, распределенная вычислительная систем, изображенная на фиг. 1, может быть частью распространенной корпоративной вычислительной системы, а сервер 10 может быть размещен в центре этой системы. Компьютер-клиент 22 может быть расположен в отдалении, а местный компьютер 40 может быть подсоединен к сети персональных компьютеров в этом месте. Работающие здесь служащие могут хранить совместно используемые данные (например, финансовую информацию) в сервере, подсоединенном к этой сети. Распределенная вычислительная функция может включать сбор местных финансовых данных от компьютеров-клиентов, находящихся в удаленных пунктах, обработку этих финансовых данных и возврат итоговых финансовых данных, полученных в результате обработки, в компьютеры-клиенты. В такой системе рабочая программа, запущенная в компьютере-клиенте 22, производит выборку данных из местного компьютера 40 (либо из подключенной к нему массовой памяти 70, либо через сеть) через порт ввода/вывода и посылает ее в компьютер-сервер 10 через центральное устройство 60 обработки. Компьютер-сервер 10 продолжает ее обработку на основе информации, полученной от компьютера-клиента 22 (и от других компьютеров-клиентов 20), и возвращает результаты обработки в компьютеры-клиенты 20 либо через центральное устройство 60 обработки, либо через поток данных в средствах 30 транспортировки.
В другом примере распределенная вычислительная система может быть интерактивной телевизионной системой, осуществляющей передачу для выполнения покупок не выходя из дома, представляющую распределенную вычислительную задачу. В этом случае вспомогательные данные несут составляющие изображения и звука телевизионного сигнала, которые могут показывать и описывать товары, предлагаемые на продажу, при этом может быть предусмотрено как участие "живых" исполнителей, так и наложение графических изображений, создаваемых на центральной студии. Программные модули и модули данных, составляющие прикладную задачу интерактивного телевидения, могут содержать информацию о товарах, которые будут предлагаться к продаже в течение этой передачи или части передачи, и рабочую программу для взаимодействия с пользователем способом, описываемом ниже.
Когда зритель желает заказать товар, нажимается кнопка, расположенная на пульте дистанционного ТВ управления. Эта кнопка сигнализирует компьютеру-клиенту 22, что надо отобразить последовательность команд и меню, необходимых для того, чтобы затребовать информацию, необходимую для размещения заказа, например, номер предмета, имя и адрес зрителя, способ оплаты, номер кредитной карточки (если нужно) и т.д. Эти команды формируются в компьютере-клиенте в графическом виде и накладываются на телевизионное изображение. Также возможно формирование компьютером речевого сигнала, который может объединяться с телевизионным звуковым сопровождением либо путем наложения на звуковое сопровождение, либо путем его замещения. Зритель отвечает на команды, сообщая требуемую информацию через пульт дистанционного управления. Когда информация, запрашиваемая командами с экрана дисплея и/или голосом, введена зрителем, она пересылается в центральный компьютер через модем, который находится в компьютере-клиенте. От центрального компьютера в обратном направлении может быть послано подтверждение о приеме заказа.
Возможно также предварительное однократное введение зрителем неизменной, относящейся к нему информации (т.е. его имя, адрес, вид оплаты и номер кредитной карточки), при этом отсутствует необходимость запрашивать эту информацию каждый раз, когда делается заказ. Информация хранится в постоянной памяти в компьютере-клиенте. В этом случае, когда делается заказ, эта информация выбирается из постоянной памяти, дополняется к номеру продаваемого предмета и передается в центральный компьютер. Кроме того, имеется возможность посредством использования временных кодов или других команд, внесенных в поток данных, дать знать компьютеру-клиенту какой предмет в текущий момент времени выставляется на продажу. В этом случае зритель может заказать его простым нажатием кнопки на пульте дистанционного управления. В ответ компьютер-клиент может объединить предварительно полученную информацию, относящуюся к предмету, который предлагается к продаже в данный момент времени, с предварительно записанной в память персональной информацией, касающейся зрителя, передать заказ в центральный компьютер и получить обратно подтверждение.
Зритель может настроиться на программу покупки, не выходя из дома, и взаимодействовать с этой программой в любое время, поскольку программные модули и модули данных, которые относятся к этой программе, периодически вносятся в поток данных. По этой же причине зрителю нет необходимости участвовать во взаимодействии, он может просто проигнорировать интерактивную часть телевизионной передачи.
Компьютер-клиент 22 также имеет возможность получить управляющую информацию от местного компьютера 40. Например, пользователь 80, который использует местный компьютер 40, может управлять компьютером-клиентом 22 через порт ввода/вывода для выбора из потоков данных, передаваемых по средствам 30 транспортировки, нужного потока данных и обработки программы, передаваемой в этом потоке данных, при взаимодействии с пользователем 80 через устройства ввода и вывода (не показаны), присоединенные к местному компьютеру 40.
Кроме того, для пользователя 80 имеется возможность заставить компьютер-клиент 22 обратиться к компьютеру-серверу 10 через центральное устройство 60 обработки, а не через поток данных, передаваемый по средствам 30 транспортировки, и принять программные модули и модули данных по двунаправленной линии связи.
На фиг.2 представлена блок-схема компьютера-сервера 10, приведенного на фиг. 1. На фиг. 2 источник 101 программы и данных распределенной вычислительной прикладной задачи содержит компилятор прикладной задачи и блок управления программным обеспечением (не показан) и имеет выходной вывод, который подсоединен ко входному выводу построителя 102 потока. Выходной вывод построителя 102 потока подсоединен ко входному выводу транспортного формирователя 104 пакетов. Выходной вывод транспортного формирователя 104 пакетов подсоединен к первому входному выводу мультиплексора 106 пакетов. Выходной вывод мультиплексора 106 пакетов подсоединен ко входному выводу транспортного мультиплексора 110. Выходной вывод транспортного мультиплексора 110 подсоединен к физической среде, образующей средства 30 транспортировки (фиг. 1). Второй входной вывод мультиплексора 106 пакетов подсоединен к источнику 107 пакетов вспомогательных данных. Тактовый генератор 109 имеет соответствующие выходные выводы, соединенные с соответствующими входными выводами транспортного формирователя 104 пакетов и источника 107 вспомогательных данных. Приемопередатчик 103 данных имеет первый двунаправленный вывод (вход/выход), соединенный с центральным устройством 60 обработки (фиг. 1), и второй двунаправленный вывод, соединенный с источником 101 программы и данных прикладной задачи.
Источник 101 программы и данных прикладной задачи, формирователь 102 потока, транспортный формирователь 104 пакетов, источник 107 вспомогательных данных, тактовый генератор 109 и мультиплексор 106 пакетов образуют, вместе взятые, канальный источник 108 для средств транспортировки, который изображен в виде прямоугольника из пунктирных линий. Другие канальные источники, включающие элементы, аналогичные элементам канального источника 108, но не показанные на фиг. 1, представлены другим, обведенным пунктирной линией, прямоугольником 108а. Канальные источники 108a имеют выходные выводы, соединенные с другими входными выводами транспортного мультиплексора 110, и могут иметь входные выводы, соединенные с центральным устройством обработки через приемопередатчики данных.
В процессе работы данные, представляющие программу распределенной вычислительной прикладной задачи, и данные, относящиеся к передаче программы через средства 30 транспортировки, подаются в построитель 102 потока от источника 101 прикладной задачи. Эти данные могут подаваться либо в виде файлов, содержащих данные, представляющие программные модули и модули данных, либо в виде описаний, из которых можно получить информацию о том, как сконструировать модули программы и данных, или другую подобную информацию. Программные модули и модули данных могут быть либо постоянными, либо динамически изменяться в зависимости от входных данных, полученных от компьютеров-клиентов 20 через центральное устройство 60 обработки и/или от других источников. Файлы модулей рабочей программы и модулей данных могут формироваться компилятором, интерпретатором или ассемблером известным образом в соответствии с исходным языком программирования, используемым прикладным программистом. Файл данных, относящийся к передаче модулей, содержит следующую информацию: требуемые частоты повторения каталога и модулей программы и данных, подлежащих введению в поток данных; размер основной памяти в компьютерах-клиентах 20, требуемой для хранения каждого модуля и для полного выполнения прикладной программы; уровень приоритета для модуля, если этот модуль программный, и т.д.
Построитель 102 потока обрабатывает данные от источника 101 прикладной задачи. На основе этих данных построитель 102 потока составляет модуль каталога, в котором представлена общая картина прикладной программы. Информация в модуле каталога включает, например, идентификацию всех модулей программы и данных, периодически передаваемых в потоке данных, их размер и возможно другую информацию, относящуюся к этим модулям. Затем данные, представляющие прикладную программу, обрабатываются для генерации модулей программы и данных.
Составленные таким образом модули каталога, программы и данных форматируются путем добавления в каждый модуль его заголовков и кодов обнаружения ошибок и/или корректирующих кодов. Формируется также расписание передачи. После этого обработка завершается и данные, представляющие модуль каталога и модули программы и данных, периодически передаются в транспортный формирователь 104 пакетов согласно предварительно составленному расписанию.
Транспортный формирователь 104 пакетов формирует поток пакетов, представляющих собой модуль каталога и модули программы и данных, по мере их выхода с построителя 102 потока. Каждый пакет имеет заранее заданную длину и формируется путем разделения потока данных от построителя потока на группы битов с добавлением в каждую группу заголовка пакета с информацией, идентифицирующей данные, содержащиеся в пакете, код обнаружения и/или коррекции ошибок и т. д., так что каждый пакет имеет одну и ту же заранее заданную длину. (Если данных от построителя 102 потока недостаточно, чтобы полностью заполнить пакет, то пакет дополняется нулями). Эти пакеты подвергаются временному мультиплексированию с пакетами вспомогательных данных известным способом для формирования единого пакетного потока в мультиплексоре 106 пакетов. Возможен вариант когда формируемые пакеты будут иметь переменные длины. В этом случае пакетный заголовок в каждом пакете будет содержать значение длины этого пакета. Кроме того, в пакеты потока данных помещаются пакеты с данными временного кода и/или пакеты вспомогательных данных, на основе данных, полученных от тактового генератора 109.
Потоки пакетов от всех канальных источников (108, 108a) мультиплексируются в единый транспортный канал, который передается через средства 30 транспортировки. Как описано выше, потоки пакетов могут мультиплексироваться с разделением по частоте, когда каждый пакетный поток модулирует несущую с отличающейся от других частотой, причем все несущие передаются в компьютеры-клиенты 20 по спутниковой линии связи известным способом. Кроме того, если один канал, по которому передается несущая, обладает достаточной пропускной способностью, то несколько потоков пакетов могут статистически мультиплексироваться с разделением во времени и модулировать одну несущую, также известным способом. Например, было предложено мультиплексировать с разделением по времени до восьми потоков данных интерактивного ТВ для передачи по одному спутниковому каналу связи.
Данные от компьютеров-клиентов 20 через центральное устройство 60 обработки (фиг. 1) принимаются приемопередатчиком 103 в компьютере-сервере 10, который может иметь свой собственный процессор (не показан). Если формируется немедленный ответ, то приемопередатчик 103 возвращает этот ответ через центральное устройство 60 обработки определенному компьютеру-клиенту (22-26), определенной группе компьютеров-клиентов 20 или всем компьютерам-клиентам по очереди. Однако, если требуется общий ответ всем компьютерам-клиентам 20, то прикладной программист может внести изменения в файлы программы и данных в источнике 101 программ и данных прикладной задачи, используя прикладной компилятор. Затем исправленные файлы снова обрабатываются построителем потока для генерации другого потока. Кроме того, возможно автоматическое и динамическое (то есть в реальном масштабе времени) изменение файлов программы и данных в источнике 101 прикладной задачи в ответ на данные, принятые от приемопередатчика 103 и обновление потока по мере поступления данных от компьютеров-клиентов 20.
Фиг. 3 представляет временную диаграмму, иллюстрирующую потоки данных, формируемые компьютером-сервером 10 в распределенной вычислительной системе, приведенной на фиг. 1. На фиг. 3 показан компьютер-сервер 10, формирующий одновременно несколько пакетных потоков 32-38. Каждый пакетный поток (32-38) показан в виде горизонтальной полосы, разделенной на пакеты, которые имеют одинаковую длительность и одинаковое количество битов. Как описано выше, размер пакетов в любом пакетном потоке может изменяться в зависимости от объема данных. На фиг. 3 видно, что начала пакетов по времени не синхронизированы. Можно синхронизировать пакеты, но в этом нет необходимости. На фиг. 3 пакеты, которые несут данные, представляющие каталоги, обозначены DIR, пакеты с данными, представляющими программные модули, обозначены СМ, пакеты с данными, представляющими модули данных, обозначены DM, и пакеты, которые несут вспомогательные данные, обозначены AUX.
В верхней последовательности пакетов 32 крайний слева пакет содержит данные, представляющие программный модуль СМ. За ним следуют три пакета, содержащих вспомогательные данные AUX, за ними следует пакет, содержащий программный модуль СМ. Можно видеть, что программный модуль в последовательности пакетов 32 формируется повторяющимся. В промежутке между последовательно повторяющимися пакетами программных модулей СМ может быть больше или меньше пакетов. Шаг повторения может быть задан программистом во время программирования прикладной задачи и может изменяться в процессе ее решения.
В следующей последовательности пакетов 34 крайний левый пакет содержит вспомогательные данные AUX. Следующие два пакета содержат соответствующие части программных модулей (СМ1, СМ2). Последний пакет содержит вспомогательные данные AUX. Из рассмотрения последовательности пакетов 34 можно заметить, что если программный модуль слишком велик для упаковки в один пакет, то он может содержаться в двух или более пакетах, в каждом из которых помещается часть программного модуля. Хотя в последовательности пакетов 34 показаны только два пакета, которые вмещают программный модуль (СМ1, СМ2), для передачи программного модуля может быть использовано любое количество пакетов, зависящее от размера модуля. Два пакета, несущих программный модуль (СМ1, СМ2), периодически передаются (не показано) в последовательности пакетов 34, как описано выше.
В последовательности пакетов 36 крайний левый пакет содержит данные, представляющие программный модуль (СМ). Следующий пакет (DM1) является первым пакетом, содержащим данные, представляющие модуль данных. Следующий пакет содержит вспомогательные данные AUX. Следующий пакет (DM2) является вторым пакетом, содержащим оставшиеся данные, относящиеся к модулю данных. Из приведенной последовательности пакетов 36 можно видеть, что модуль данных (DM1, DM2), связанный с программным модулем (СМ), также может быть включен в поток пакетов. Как программный модуль (СМ), так и модуль данных (DM1, DM2) периодически передается (не показано) в последовательности пакетов 36. Частота повторения программного модуля (СМ) может отличаться от частоты повторения модуля данных (DM1, DM2), причем обе частоты могут быть заданы прикладным программистом и изменяться в процессе выполнения прикладной задачи.
Кроме того, можно видеть, что если модуль данных слишком велик для помещения его в один пакет, то для его передачи может быть использовано более одного пакета, при этом в каждый пакет включается часть такого модуля данных. Хотя в последовательности пакетов 36 показаны только два пакета, которые содержат модуль данных (DM1, DM2), для передачи модуля данных может быть использовано любое количество пакетов в зависимости от размера модуля данных. Кроме того, можно видеть, что нет необходимости последовательно передавать пакеты, несущие модули данных, можно вклинивать их в поток пакетов. То же самое справедливо для пакетов, которые содержат программный модуль или модуль каталога (не показаны).
В последовательности пакетов 38, которые находятся внизу, крайний левый пакет содержит данные, представляющие каталог (DIR). Следующий пакет содержит данные, представляющие программный модуль (СМ), за которым следует пакет, содержащий вспомогательные данные (AUX) и пакет, содержащий данные, представляющие модуль данных (DM). В последовательности пакетов 38 в отдельном потоке можно видеть все модули: модуль каталога (DIR), программный модуль (СМ) и модуль данных (DM). Соответствующие периоды повторения этих трех модулей могут различаться, что задается программистом данной прикладной задачи, и могут быть изменены в процессе выполнения этой задачи.
На фиг. 4 изображена блок-схема компьютера-клиента 22, показанного на фиг. 1. На фиг. 4 средства 30 транспортировки (фиг. 1) соединены со входным выводом селектора 202 потока данных. Средства 30 транспортировки образуют входной терминал для приема непрерывного потока данных, который содержит повторяющиеся данные, представляющие распределенную вычислительную прикладную задачу.
Входной терминал принимает поток данных в виде последовательностей пакетов, содержащих пакеты, несущие данные, представляющие распределенную вычислительную прикладную задачу или множество потоков данных, каждый из которых включает данные, представляющие соответствующую распределенную вычислительную прикладную задачу. Входной терминал принимает представляющие распределенную вычислительную прикладную задачу данные, включающие модуль рабочей программы, а также дополнительно включающие модуль каталога, содержащий информацию, относящуюся к модулю рабочей программы. Последовательности пакетов в потоке данных дополнительно включают пакеты, несущие вспомогательные данные.
Выходной вывод селектора 202 потока данных соединен с соответствующими входными выводами экстрактора 204 вспомогательных данных и экстрактора 206 пакетных данных. Выходной вывод экстрактора 204 вспомогательных данных соединен с процессором 50 вспомогательных данных (фиг. 1). Двунаправленный вывод экстрактора 206 пакетных данных соединен с соответствующим выводом адаптера 208 ввода/вывода потока. Управляющий выходной вывод адаптера 208 ввода/вывода потока соединен с соответствующим управляющим входным выводом селектора 202 потока. Селектор 202 потока данных, экстрактор 204 вспомогательных данных и экстрактор 206 пакетных данных образуют приемник 207 потока данных для компьютера-клиента 22, выделенный пунктирной линией на фиг. 4 и присоединенный ко входному терминалу для приема потока данных и извлечения данных, представляющих распределенную вычислительную прикладную задачу. Таким образом, приемник потока данных содержит селектор 202 потока данных, присоединенный ко входному терминалу, для формирования потока данных, выбранного из множества потоков данных в ответ на сигналы управления от блока 224 обработки; и экстрактор пакетных данных, т.е. данных, представляющих распределенную вычислительную прикладную задачу, включенный между селектором потока данных и блоком обработки, для извлечения данных, представляющих распределенную вычислительную прикладную задачу, из потока данных, выбранного из множества потоков данных. Если входной терминал принимает поток данных (а не множество потоков данных), приемник потока данных содержит подсоединенный ко входному терминалу экстрактор пакетных данных для извлечения пакетов, несущих данные, представляющие распределенную вычислительную прикладную задачу.
Адаптер 208 ввода/вывода потока данных в компьютере-клиенте 22 является частью блока 224 обработки, который на фиг.4 выделен пунктирной линией. Кроме адаптера блок 224 обработки содержит процессор 210, память 212, допускающую чтение/запись (память с произвольным доступом) и постоянное запоминающее устройство 214, соединенные вместе известным образом через системную шину 216. Кроме того, средства ввода и вывода включают порт 218 ввода/вывода, присоединенный к местному процессору 40 (фиг. 1), адаптер 220 ввода/вывода данных пользователя для связи с пользователем 80 и модем 222, соединенный с центральным устройством 60 обработки (фиг. 1). Все эти устройства также подключены к системной шине 216 известным образом. С системной шиной 216 могут быть соединены другие адаптеры (не показаны) для обеспечения блока 224 обработки иными возможностями.
Как описано выше, в соответствии с настоящим изобретением экстрактор 204 вспомогательных данных, порт 218 ввода/вывода и модем 222 для компьютера-клиента 20 не требуются. Они показаны на фиг.1 и фиг. 4 для того, чтобы показать возможность выполнения дополнительных функций.
При работе процессор 210 блока 224 обработки извлекает команды программы из постоянного запоминающего устройства 214, в котором они хранятся постоянно, или из памяти 212 с произвольным доступом, где они хранятся временно, и выполняет извлеченные команды для чтения данных из ПЗУ 212 и/или памяти 214 с произвольным доступом, для записи данных в память 214 и/или приема данных от внешнего источника или для передачи ему данных через порт 218 ввода/вывода, адаптер 220 ввода/вывода данных пользователя и/или модем 222 известным образом. Под управлением программы процессор 210 может также запросить программный модуль и/или модуль данных из потока данных, который передается в компьютер-клиент 22 через средства 30 транспортировки (фиг. 1). Для получения этих данных процессор 210, во-первых, дает команду адаптеру 203 ввода/вывода потока послать сигнал управления выбором в потоковый селектор 202, возможно в ответ на сигнал ввода, поданный пользователем, со стороны адаптера 220 ввода/вывода данных пользователя. Затем процессор 210 выдает запрос на определенный модуль программы или данных адаптеру 208 ввода/вывода потока.
Средства 30 транспортировки (фиг. 1) подают множество потоков пакетов (32-38 на фиг.3) к селектору 202 потока, который пропускает только выбранный поток пакетов. Экстрактор 204 вспомогательных данных просматривает выбранный поток пакетов, извлекает из него пакеты вспомогательных данных и передает их непосредственно в процессор 50 вспомогательных данных (фиг. 1). Экстрактор 206 пакетных данных подобным же образом просматривает выбранный поток пакетов, извлекает пакеты каталога, модуля программы и/или данных, затребованные адаптером 208 ввода/вывода потока, и подает их на этот адаптер 208. Данные в пакетах, направленные адаптеру 208 ввода/вывода потока, поступают в память 212 с произвольным доступом. Когда весь модуль извлечен из потока пакетов (для этого может потребоваться несколько пакетов, как описано выше), процессор 210 уведомляется о его получении адаптером 208 ввода/вывода потока. Процессор 210 может далее продолжить выполнение своей программы.
Поток данных в распределенной вычислительной системе, показанной на фиг. 1, подобен системе массовой памяти в известных системах. Прикладная программа, выполняемая в процессоре 210, формирует запрос на модуль, имеющийся в каталоге, тем же самым способом, что и запрос на файл, который содержит программный модуль или модуль данных, предварительно записанный в устройстве массовой памяти в известных системах. Приемник 207 потока данных аналогичен устройству массовой памяти, а адаптер 208 ввода/вывода потока действует аналогично адаптеру массовой памяти в известных системах, путем определения местоположения требуемых данных, передачи их в предварительно заданное место (буфер ввода/вывода) в системной памяти и информирования процессора о завершении выборки. Однако адаптер 208 ввода/вывода потока может осуществлять лишь поиск программы и данных в потоке данных, а данные не могут быть записаны в поток данных.
Как описано выше, распределенная вычислительная прикладная задача может быть разделена более чем на один программный модуль, каждый из которых содержит рабочую программу для данной части этой прикладной задачи. Когда требуется программный модуль, соответствующий этой части, процессор 210 запрашивает этот модуль от адаптера 208 ввода/вывода потока. По завершении выполнения этого программного модуля процессор 210 запрашивает следующий модуль от адаптера 208 ввода/вывода потока. Поскольку программные модули и модули данных в потоке данных повторяются, то модуль может быть удален из памяти 212 с произвольным доступом, если в текущий момент он не нужен, так что нет необходимости его временно хранить, потому что если он позже потребуется, его снова можно будет получить из потока данных. Однако если память 212 с произвольным доступом имеет достаточный объем, то процессор 210 может затребовать у адаптера 208 ввода/вывода потока одновременной загрузки нескольких программных модулей в эту память 212. Если это осуществимо, то процессор 210 может получать эти программные модули из памяти, не ожидая, пока адаптер 208 ввода/вывода извлечет их из потока данных.
Как описано выше, с системной шиной 216 могут быть соединены известным способом другие адаптеры ввода/вывода. Например, в интерактивной ТВ системе с системной шиной 216 может быть соединен графический адаптер. Графический адаптер формирует сигналы, представляющие графические изображения, известным способом по команде от процессора 210. Далее эти сигналы могут объединяться со стандартным видеосигналом, формируемым видеодекодером (описан выше) в процессоре 50 вспомогательных данных интерактивной ТВ системы. Когда сигнал, представляющий графические изображения, и стандартный видеосигнал объединяются, результирующий сигнал представляет изображение, в котором изображение, сформированное графическим адаптером, наложено на изображение, представленное вещательным видеосигналом. Также возможно избирательное объединение этих двух содержащих изображение сигналов под управлением процессора 210.
Интерактивная ТВ система может также содержать звуковой адаптер, соединенный с системной шиной 216. Звуковой адаптер формирует сигнал, представляющий сформированный компьютером звук (такой как музыка, синтезированный голос или какой-либо иной звук) известным способом по команде от процессора 210. Далее эти сигналы могут быть объединены со стандартным звуковым сигналом, формируемым декодером звука (описан выше) в процессоре 50 вспомогательных данных интерактивной ТВ системы. Когда сигнал, несущий звук, и стандартный звуковой сигнал объединяются, результирующий сигнал представляет собой объединение сигнала, сформированного звуковым адаптером, и вещательного звукового сигнала. Существует возможность избирательного объединения этих двух несущих звук сигналов под управлением процессора 210.
Согласование во времени формирования и отображения сигналов графического изображения и звука может осуществляться путем приема данных временного кода из потока данных. Это дает возможность модулю рабочей программы синхронизировать отображение изображения, сформированного процессором, и воспроизведение сформированного процессором звука с вещательными видео- и аудиосигналами. Кроме того, возможна синхронизация работы интерактивной ТВ системы путем внесения специальных пакетов в поток данных, что приводит к прерыванию программы, выполняемой в данный момент времени в процессоре 210. Адаптер 208 ввода/вывода потока контролирует поток данных на предмет наличия таких специальных пакетов и формирует прерывание процессора 210 известным способом. Процессор 210 реагирует на это прерывание путем выполнения подпрограммы обслуживания прерывания также известным способом. Подпрограмма обслуживания прерывания может быть использована для синхронизации системы интерактивного ТВ или для других целей.
Для компьютера-клиента 22 в распределенной вычислительной системе, показанной на фиг. 1, не требуется массового запоминающего устройства или большого объема памяти 212 с произвольным доступом. Такая система снижает стоимость компьютера-клиента и увеличивает функциональные возможности компьютеров-клиентов низкой стоимости. Кроме того, такой компьютер-клиент обладает возможностью выбора участвовать в реализации распределенной вычислительной функции, может вступать в реализацию этой функции в любое время (или может отключиться и подключиться позже), и работать со своей скоростью.
Claims (20)
1. Распределенная вычислительная система, содержащая источник непрерывного потока данных и компьютер-клиент для приема потока данных, отличающаяся тем, что непрерывный поток данных указанного источника включает повторяющиеся данные, представляющие распределенную вычислительную прикладную задачу, а компьютер-клиент выполнен с возможностью извлечения данных, представляющих распределенную вычислительную прикладную задачу, из потока данных и выполнения извлеченной распределенной вычислительной прикладной задачи.
2. Вычислительная система по п.1, отличающаяся тем, что она содержит процессор вспомогательных данных, причем источник потока данных выполнен с возможностью формирования потока данных, дополнительно включающего вспомогательные данные, а компьютер-клиент выполнен с возможностью извлечения вспомогательных данных из потока данных и подачи их в процессор вспомогательных данных.
3. Вычислительная система по п.2, отличающаяся тем, что источник потока данных выполнен с возможностью формирования потока данных в виде последовательностей пакетов, причем первая из последовательностей пакетов содержит данные, представляющие распределенную вычислительную прикладную задачу, и включает идентификационную информацию, указывающую на то, что первая последовательность пакетов содержит данные, представляющие распределенную вычислительную прикладную задачу, а вторая последовательность пакетов содержит вспомогательные данные и включает идентификационную информацию, указывающую на то, что вторая последовательность пакетов содержит вспомогательные данные.
4. Вычислительная система по п.1, отличающаяся тем, что источник потока данных выполнен с возможностью одновременного формирования множества непрерывных потоков данных, каждый из которых включает повторяющиеся данные, представляющие соответствующую вычислительную прикладную задачу, а компьютер-клиент дополнительно содержит приемник данных для избирательного приема одного из множества потоков данных и извлечения представляющих распределенную вычислительную прикладную задачу данных, которые содержатся в этом выбранном потоке данных.
5. Вычислительная система по п.4, отличающаяся тем, что она содержит процессор вспомогательных данных, причем источник потока данных выполнен с возможностью формирования потока данных, дополнительно содержащего вспомогательные данные, а компьютер-клиент выполнен с возможностью извлечения вспомогательных данных из потока данных и подачи их в процессор вспомогательных данных.
6. Вычислительная система по п.4 или 5, отличающаяся тем, что источник потока данных выполнен с возможностью формирования потока данных в виде последовательностей пакетов, причем первая из последовательностей пакетов содержит данные, представляющие модуль программы, и включает идентификационную информацию, указывающую на то, что первая последовательность пакетов содержит данные, представляющие модуль программы, вторая последовательность пакетов содержит данные, представляющие модуль данных, и включает идентификационную информацию, указывающую на то, что вторая последовательность пакетов содержит информацию, представляющую модуль данных, а третья последовательность пакетов содержит вспомогательные данные и включает идентификационную информацию, указывающую на то, что третья последовательность пакетов содержит вспомогательные данные.
7. Вычислительная система по п.6, отличающаяся тем, что источник потока данных выполнен с возможностью формирования потока данных, который дополнительно включает модуль каталога, содержащий информацию, относящуюся к модулю программы, а компьютер-клиент выполнен с возможностью извлечения модуля каталога из потока данных, извлечения модуля программы в соответствии с информацией, относящейся к модулю программы, в извлеченном модуле каталога, и выполнения извлеченного модуля программы.
8. Вычислительная система по п.1, отличающаяся тем, что источник потока данных выполнен с возможностью формирования потока данных в виде последовательностей пакетов, причем первая из последовательностей пакетов содержит данные, представляющие модуль программы, и включает идентификационную информацию, указывающую на то, что первая последовательность пакетов содержит данные, представляющие модуль программы, вторая последовательность пакетов содержит данные, представляющие модуль данных, и включает идентификационную информацию, указывающую на то, что вторая последовательность пакетов содержит данные, представляющие модуль данных, третья последовательность пакетов содержит данные, представляющие модуль каталога, и включает идентификационную информацию, указывающую на то, что третья последовательность пакетов содержит данные, представляющие модуль каталога, а четвертая последовательность пакетов содержит вспомогательные данные и включает идентификационную информацию, указывающую на то, что четвертая последовательность пакетов содержит вспомогательные данные.
9. Вычислительная система по п.8, отличающаяся тем, что источник потока данных выполнен с возможностью формирования потока данных, дополнительно включающего модуль данных и модуль каталога, причем последний дополнительно содержит информацию, относящуюся к модулю данных, а компьютер-клиент выполнен с возможностью извлечения модуля данных из потока данных в ответ на относящуюся к модулю данных информацию в извлеченном модуле каталога и выполнения извлеченного модуля программы для обработки извлеченного модуля данных.
10. Компьютер-клиент в распределенной вычислительной системе, содержащий входной терминал для приема непрерывного потока данных, приемник потока данных, присоединенный к входному терминалу, для приема потока данных и блок обработки, присоединенный к приемнику потока данных, отличающийся тем, что указанный непрерывный поток данных содержит повторяющиеся данные, представляющие распределенную вычислительную прикладную задачу, указанный приемник потока данных выполнен с возможностью извлечения данных, представляющих распределенную вычислительную прикладную задачу, а указанный блок обработки выполнен с возможностью приема и выполнения распределенной вычислительной прикладной задачи.
11. Компьютер-клиент по п.10, отличающийся тем, что блок обработки содержит системную шину, память, допускающую чтение/запись, присоединенную к системной шине, адаптер ввода/вывода потока данных, включенный между приемником потока данных и системной шиной, для приема извлеченных данных, представляющих распределенную вычислительную прикладную задачу, от приемника потока данных и запоминания их в памяти, допускающей чтение/запись, и процессор, присоединенный к системной шине, для выполнения распределенной вычислительной прикладной задачи, запомненной в памяти, допускающей чтение/запись.
12. Компьютер-клиент по п.10 или 11, отличающийся тем, что входной терминал выполнен с возможностью приема потока данных в виде последовательностей пакетов, содержащих пакеты, несущие данные, представляющие распределенную вычислительную прикладную задачу, а приемник потока данных содержит подсоединенный к входному терминалу экстрактор пакетных данных для извлечения пакетов, несущих данные, представляющие распределенную вычислительную прикладную задачу.
13. Компьютер-клиент по п.12, отличающийся тем, что последовательности пакетов в потоке данных дополнительно включают пакеты, несущие вспомогательные данные, компьютер-клиент дополнительно включает процессор вспомогательных данных, а приемник потока данных содержит подсоединенный к процессору вспомогательных данных экстрактор пакетов вспомогательных данных для извлечения пакетов, несущих вспомогательные данные, из потока данных и подачи их в процессор вспомогательных данных.
14. Компьютер-клиент по п.13, отличающийся тем, что распределенная вычислительная система представляет собой интерактивную телевизионную систему, а вспомогательные данные представляют собой телевизионные видео- и аудиоданные.
15. Компьютер-клиент по п.10 или 11, отличающийся тем, что входной терминал выполнен с возможностью приема множества потоков данных, каждый из которых включает данные, представляющие соответствующую распределенную вычислительную прикладную задачу, а приемник потока данных содержит селектор потока данных, присоединенный к входному терминалу, для формирования потока данных, выбранного из множества потоков данных в ответ на сигналы управления от блока обработки, и экстрактор данных, представляющих распределенную вычислительную прикладную задачу, включенный между селектором потока данных и блоком обработки, для извлечения данных, представляющих распределенную вычислительную прикладную задачу, из потока данных, выбранного из множества потоков данных.
16. Компьютер-клиент по п.15, отличающийся тем, что селектор потока данных выполнен с возможностью формирования потока данных, выбранного из множества потоков данных, в ответ на сигнал управления на его входе, управляющем выбором, а блок обработки содержит системную шину, память, допускающую чтение/запись, соединенную с системной шиной, адаптер ввода/вывода потока данных, включенный между приемником потока данных и системной шиной, для приема извлеченных данных, представляющих распределенную вычислительную прикладную задачу, от приемника потока данных и запоминания их в памяти, допускающей чтение/запись, и имеющий управляющий выход, присоединенный к управляющему выбором входу селектора потока данных, для формирования сигнала управления выбором, и процессор, присоединенный к системной шине, для управления адаптером ввода/вывода потока данных с формированием сигнала управления выбором, выбирающего один поток из множества потоков данных, и для выполнения распределенной вычислительной прикладной задачи, запомненной в памяти, допускающей чтение/запись.
17. Компьютер-клиент по п. 10 или 11, отличающийся тем, что входной терминал выполнен с возможностью приема представляющих распределенную вычислительную прикладную задачу данных, включающих модуль программы, приемник потока данных выполнен с возможностью извлечения модуля программы, а блок обработки выполнен с возможностью выполнения извлеченного модуля программы.
18. Компьютер-клиент по п.17, отличающийся тем, что входной терминал выполнен с возможностью приема представляющих распределенную вычислительную прикладную задачу данных, которые дополнительно включают модуль каталога, содержащий информацию, относящуюся к модулю программы, приемник потока данных выполнен с возможностью извлечения из поток данных модуля каталога, а также с возможностью извлечения из потока данных модуля программы на основании информации, относящейся к модулю программы, в извлеченном модуле каталога, а блок обработки выполнен с возможностью обработки информации в модуле каталога, относящейся к модулю программы, а также выполнен с возможностью выполнения извлеченного модуля программы.
19. Компьютер-клиент по п.18, отличающийся тем, что данные, представляющие распределенную вычислительную прикладную задачу, дополнительно включают модуль данных, а модуль каталога дополнительно включает информацию, относящуюся к модулю данных, блок обработки выполнен с возможностью обработки информации в модуле каталога, которая относится к модулю данных, приемник потока данных выполнен с возможностью извлечения из потока данных модуля данных на основании информации, относящейся к модулю данных, в извлеченном модуле каталога, а блок обработки выполнен с возможностью выполнения извлеченного модуля программы для обработки извлеченных данных.
20. Компьютер-клиент по любому из пп.10 -19, отличающийся тем, что распределенная вычислительная прикладная задача разделена на множество модулей, представляющих части этой задачи, а блок обработки выполнен с возможностью хранения только тех модулей из указанного множества модулей, которые необходимы для выполнения текущей части прикладной задачи.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US233,908 | 1994-04-28 | ||
US08/233,908 US5819034A (en) | 1994-04-28 | 1994-04-28 | Apparatus for transmitting and receiving executable applications as for a multimedia system |
Publications (2)
Publication Number | Publication Date |
---|---|
RU95106682A RU95106682A (ru) | 1997-01-20 |
RU2142158C1 true RU2142158C1 (ru) | 1999-11-27 |
Family
ID=22879143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU95106682A RU2142158C1 (ru) | 1994-04-28 | 1995-04-25 | Распределенная вычислительная система и компьютер-клиент этой системы |
Country Status (13)
Country | Link |
---|---|
US (2) | US5819034A (ru) |
EP (5) | EP1307024B2 (ru) |
JP (4) | JPH08166925A (ru) |
KR (1) | KR100363593B1 (ru) |
CN (4) | CN1893648B (ru) |
AT (3) | ATE518348T1 (ru) |
CA (1) | CA2145899C (ru) |
DE (1) | DE69533565T2 (ru) |
DK (1) | DK0680185T3 (ru) |
ES (4) | ES2387085T3 (ru) |
PT (3) | PT1307024E (ru) |
RU (1) | RU2142158C1 (ru) |
SG (1) | SG28257A1 (ru) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004100004A1 (fr) * | 2003-05-05 | 2004-11-18 | Viktor Alexandrovich Mamontov | Systeme de programmation de dispositifs de commande a distance et procede de fonctionnement correspondant |
RU2445696C2 (ru) * | 2004-11-24 | 2012-03-20 | Майкрософт Корпорейшн | Способ и система для контроля доступа к информации о присутствии на равноправной основе |
RU2468847C2 (ru) * | 2007-03-06 | 2012-12-10 | Трайон Уорлдс, Инк | Распределенная сетевая архитектура для введения динамического информационного содержимого в синтезированную среду |
RU2493588C2 (ru) * | 2007-12-05 | 2013-09-20 | Ол2, Инк. | Система и способ сжатия видео на основе обнаруженного внутрикадрового движения |
RU2496141C2 (ru) * | 2007-12-05 | 2013-10-20 | Ол2, Инк. | Система для объединения записанного состояния приложения с выводом интерактивного потокового видео приложения |
RU2498396C1 (ru) * | 2012-02-22 | 2013-11-10 | Вадим Александрович Питов | Способ осуществления коммуникаций и виртуальных путешествий |
RU2502122C2 (ru) * | 2007-11-08 | 2013-12-20 | Дженетик Файнанс (Барбадос) Лимитед | Сетевая вычислительная система |
RU2541105C2 (ru) * | 2009-04-28 | 2015-02-10 | Джинетик Файнэнс (Барбадос) Лимитед | Сетевая вычислительная система (варианты) и способ для вычислительной задачи |
RU2571562C2 (ru) * | 2011-09-01 | 2015-12-20 | Хуавэй Текнолоджиз Ко., Лтд. | Способ, устройство и система для переноса ресурса |
US10430429B2 (en) | 2015-09-01 | 2019-10-01 | Cognizant Technology Solutions U.S. Corporation | Data mining management server |
Families Citing this family (254)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5963916A (en) * | 1990-09-13 | 1999-10-05 | Intouch Group, Inc. | Network apparatus and method for preview of music products and compilation of market data |
US6275268B1 (en) | 1993-09-09 | 2001-08-14 | United Video Properties, Inc. | Electronic television program guide with remote product ordering |
US7991347B1 (en) | 1994-04-07 | 2011-08-02 | Data Innovation Llc | System and method for accessing set of digital data at a remote site |
USRE44685E1 (en) | 1994-04-28 | 2013-12-31 | Opentv, Inc. | Apparatus for transmitting and receiving executable applications as for a multimedia system, and method and system to order an item using a distributed computing system |
US5819034A (en) | 1994-04-28 | 1998-10-06 | Thomson Consumer Electronics, Inc. | Apparatus for transmitting and receiving executable applications as for a multimedia system |
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
US7181758B1 (en) | 1994-07-25 | 2007-02-20 | Data Innovation, L.L.C. | Information distribution and processing system |
US5838906A (en) * | 1994-10-17 | 1998-11-17 | The Regents Of The University Of California | Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document |
AU4364296A (en) * | 1994-10-24 | 1996-05-15 | Intel Corporation | Video indexing protocol |
EP2154890B1 (en) * | 1995-04-24 | 2012-10-24 | United Video Properties, Inc. | Electronic television program guide schedule system and method with remote product ordering |
US6769128B1 (en) | 1995-06-07 | 2004-07-27 | United Video Properties, Inc. | Electronic television program guide schedule system and method with data feed access |
US7917922B1 (en) * | 1995-06-08 | 2011-03-29 | Schwab Barry H | Video input switching and signal processing apparatus |
US20020056136A1 (en) * | 1995-09-29 | 2002-05-09 | Wistendahl Douglass A. | System for converting existing TV content to interactive TV programs operated with a standard remote control and TV set-top box |
US6189030B1 (en) | 1996-02-21 | 2001-02-13 | Infoseek Corporation | Method and apparatus for redirection of server external hyper-link references |
US7099316B1 (en) * | 1996-02-29 | 2006-08-29 | Tomich John L | Photonic home area network |
US5940073A (en) * | 1996-05-03 | 1999-08-17 | Starsight Telecast Inc. | Method and system for displaying other information in a TV program guide |
CN1179565C (zh) * | 1996-05-31 | 2004-12-08 | 松下电器产业株式会社 | 数据通信系统和数据发送设备及数据接收设备 |
US6141693A (en) * | 1996-06-03 | 2000-10-31 | Webtv Networks, Inc. | Method and apparatus for extracting digital data from a video stream and using the digital data to configure the video stream for display on a television set |
US9130765B1 (en) * | 1996-06-12 | 2015-09-08 | Michael Carringer | System and method for generating a modified web page by inline code insertion in response to an information request from a client computer |
US8601050B2 (en) | 1996-06-12 | 2013-12-03 | Michael Carringer | System and method for generating a modified web page by inline code insertion in response to an information request from a client computer |
US6424991B1 (en) * | 1996-07-01 | 2002-07-23 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server communication framework |
US6266709B1 (en) * | 1996-07-01 | 2001-07-24 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server failure reporting process |
WO1998011723A1 (fr) * | 1996-09-11 | 1998-03-19 | Matsushita Electric Industrial Co., Ltd. | Appareil de reception/d'execution de programme pouvant commencer l'execution d'un programme meme lorsque seulement une partie du programme est reçue, et emetteur de programme destine a cet appareil |
US6058443A (en) * | 1997-02-18 | 2000-05-02 | Advanced Micro Devices, Inc. | System for partitioning PC chipset functions into logic and port integrated circuits |
US6209028B1 (en) | 1997-03-21 | 2001-03-27 | Walker Digital, Llc | System and method for supplying supplemental audio information for broadcast television programs |
US20050097594A1 (en) | 1997-03-24 | 2005-05-05 | O'donnell Frank | Systems and methods for awarding affinity points based upon remote control usage |
US8769598B2 (en) * | 1997-03-24 | 2014-07-01 | Logitech Europe S.A. | Program guide on a remote control |
US6356948B1 (en) * | 1997-03-28 | 2002-03-12 | Aspect Communications Corp | Method and apparatus for managing data |
US9113122B2 (en) | 1997-04-21 | 2015-08-18 | Rovi Guides, Inc. | Method and apparatus for time-shifting video and text in a text-enhanced television program |
US6233253B1 (en) * | 1997-05-23 | 2001-05-15 | Thomson Licensing S.A. | System for digital data format conversion and bit stream generation |
JPH114417A (ja) * | 1997-06-12 | 1999-01-06 | Toshiba Corp | ビット・ストリーム情報表示方法、ビット・ストリーム情報作成方法及び記録媒体 |
GB9715228D0 (en) * | 1997-07-18 | 1997-09-24 | Sertway Limited | Communications system and method |
AU733993B2 (en) | 1997-07-21 | 2001-05-31 | Rovi Guides, Inc. | Systems and methods for displaying and recording control interfaces |
US5960411A (en) * | 1997-09-12 | 1999-09-28 | Amazon.Com, Inc. | Method and system for placing a purchase order via a communications network |
US7222087B1 (en) | 1997-09-12 | 2007-05-22 | Amazon.Com, Inc. | Method and system for placing a purchase order via a communications network |
EP0907285A1 (en) * | 1997-10-03 | 1999-04-07 | CANAL+ Société Anonyme | Downloading data |
US6016141A (en) * | 1997-10-06 | 2000-01-18 | United Video Properties, Inc. | Interactive television program guide system with pay program package promotion |
US6263385B1 (en) | 1997-10-20 | 2001-07-17 | Advanced Micro Devices, Inc. | PC parallel port structure partitioned between two integrated circuits interconnected by a serial bus |
FR2770711A1 (fr) * | 1997-11-04 | 1999-04-30 | Philips Electronics Nv | Methode de communication entre des terminaux repartis et une station centrale |
FR2778300A1 (fr) * | 1998-04-29 | 1999-11-05 | Thomson Multimedia Sa | Procede de lecture de donnees informatiques permettant de composer des images de synthese et dispositif mettant en oeuvre le procede |
US6609144B1 (en) | 1998-05-04 | 2003-08-19 | Matsushita Electric Industrial Co., Ltd. | Program reception/execution apparatus that can commence execution of a machine program having only received the program in part, and a program transmission apparatus that enables such execution |
US8813137B2 (en) * | 1998-05-08 | 2014-08-19 | Qualcomm Incorporated | Apparatus and method for decoding digital image and audio signals |
CN1311938A (zh) * | 1998-06-19 | 2001-09-05 | 松下电器产业株式会社 | 数据发送及接收的方法与装置以及程序记录媒体 |
CN1867068A (zh) | 1998-07-14 | 2006-11-22 | 联合视频制品公司 | 交互式电视节目导视系统及其方法 |
US8189662B2 (en) | 1999-07-27 | 2012-05-29 | Microsoft Corporation | Selection compression |
IL141104A0 (en) * | 1998-07-27 | 2002-02-10 | Webtv Networks Inc | Remote computer access |
US6898762B2 (en) | 1998-08-21 | 2005-05-24 | United Video Properties, Inc. | Client-server electronic program guide |
US6829650B1 (en) | 1998-09-11 | 2004-12-07 | L. V. Partners, L.P. | Method and apparatus for opening and launching a web browser in response to an audible signal |
US6704864B1 (en) * | 1999-08-19 | 2004-03-09 | L.V. Partners, L.P. | Automatic configuration of equipment software |
US7792696B1 (en) | 1998-09-11 | 2010-09-07 | RPX-LV Acquisition, LLC | Method and apparatus for allowing a broadcast to remotely control a computer |
US6826592B1 (en) * | 1998-09-11 | 2004-11-30 | L.V. Partners, L.P. | Digital ID for selecting web browser and use preferences of a user during use of a web application |
US6631404B1 (en) | 1998-09-11 | 2003-10-07 | Lv Partners, L.P. | Method and system for conducting a contest using a network |
US6754698B1 (en) | 1998-09-11 | 2004-06-22 | L. V. Partners, L.P. | Method and apparatus for accessing a remote location with an optical reader having a dedicated memory system |
US6697949B1 (en) | 1998-09-11 | 2004-02-24 | L.V. Partner, L.P. | Method and apparatus for controlling a user's pc through an audio-visual broadcast to archive information in the users pc |
US6725260B1 (en) * | 1998-09-11 | 2004-04-20 | L.V. Partners, L.P. | Method and apparatus for configuring configurable equipment with configuration information received from a remote location |
US6757715B1 (en) * | 1998-09-11 | 2004-06-29 | L.V. Partners, L.P. | Bar code scanner and software interface interlock for performing encrypted handshaking and for disabling the scanner in case of handshaking operation failure |
US6829646B1 (en) * | 1999-10-13 | 2004-12-07 | L. V. Partners, L.P. | Presentation of web page content based upon computer video resolutions |
US6643692B1 (en) | 1998-09-11 | 2003-11-04 | Lv Partners, L.P. | Method for controlling a computer using an embedded unique code in the content of video tape media |
US6098106A (en) * | 1998-09-11 | 2000-08-01 | Digitalconvergence.Com Inc. | Method for controlling a computer with an audio signal |
US8028036B1 (en) | 1998-09-11 | 2011-09-27 | Rpx-Lv Acquisition Llc | Launching a web site using a passive transponder |
US7386600B1 (en) | 1998-09-11 | 2008-06-10 | Lv Partners, L.P. | Launching a web site using a personal device |
US8712835B1 (en) | 1998-09-11 | 2014-04-29 | Rpx Corporation | Method and apparatus for linking a web browser link to a promotional offer |
US6745234B1 (en) * | 1998-09-11 | 2004-06-01 | Digital:Convergence Corporation | Method and apparatus for accessing a remote location by scanning an optical code |
US6791588B1 (en) * | 1998-09-11 | 2004-09-14 | L.V. Partners, L.P. | Method for conducting a contest using a network |
US6792452B1 (en) | 1998-09-11 | 2004-09-14 | L.V. Partners, L.P. | Method for configuring a piece of equipment with the use of an associated machine resolvable code |
US7900224B1 (en) | 1998-09-11 | 2011-03-01 | Rpx-Lv Acquisition Llc | Method and apparatus for utilizing an audible signal to induce a user to select an E-commerce function |
US7818423B1 (en) | 1998-09-11 | 2010-10-19 | RPX-LV Acquisition, LLC | Retrieving personal account information from a web site by reading a credit card |
US6594705B1 (en) | 1998-09-11 | 2003-07-15 | Lv Partners, L.P. | Method and apparatus for utilizing an audibly coded signal to conduct commerce over the internet |
US6823388B1 (en) * | 1998-09-11 | 2004-11-23 | L.V. Parners, L.P. | Method and apparatus for accessing a remote location with an optical reader having a programmable memory system |
US6701369B1 (en) | 1998-09-11 | 2004-03-02 | L.V. Partners, L.P. | Method and apparatus for accessing a remote location by sensing a machine-resolvable code |
US6758398B1 (en) | 1998-09-11 | 2004-07-06 | L.V. Partners, L.P. | Optical reader with ultraviolet wavelength capability |
US6629133B1 (en) | 1998-09-11 | 2003-09-30 | Lv Partners, L.P. | Interactive doll |
US7191247B1 (en) | 1998-09-11 | 2007-03-13 | Lv Partners, Lp | Method for connecting a wireless device to a remote location on a network |
US6526449B1 (en) | 1998-09-11 | 2003-02-25 | Digital Convergence Corporation | Method and apparatus for controlling a computer from a remote location |
US6384744B1 (en) | 1998-09-11 | 2002-05-07 | Digital:Convergence Corp. | Method and system for data transmission from an optical reader |
US7392945B1 (en) | 1998-09-11 | 2008-07-01 | Lv Partners, L.P. | Portable scanner for enabling automatic commerce transactions |
US6636896B1 (en) | 1998-09-11 | 2003-10-21 | Lv Partners, L.P. | Method and apparatus for utilizing an audibly coded signal to conduct commerce over the internet |
US7440993B1 (en) | 1998-09-11 | 2008-10-21 | Lv Partners, L.P. | Method and apparatus for launching a web browser in response to scanning of product information |
US6836799B1 (en) * | 1998-09-11 | 2004-12-28 | L.V. Partners, L.P. | Method and apparatus for tracking user profile and habits on a global network |
US6615268B1 (en) | 1998-09-11 | 2003-09-02 | Lv Partners, L.P. | Method for controlling a computer using an embedded unique code in the content of dat media |
US6845388B1 (en) * | 1998-09-11 | 2005-01-18 | L. V. Partners, L.P. | Web site access manual of a character string into a software interface |
US6701354B1 (en) | 1998-09-11 | 2004-03-02 | L. V. Partners, L.P. | Method for interconnecting two locations over a network in response to using a tool |
US6622165B1 (en) | 1998-09-11 | 2003-09-16 | Lv Partners, L.P. | Method and apparatus for allowing a remote site to interact with an intermediate database to facilitate access to the remote site |
US6636892B1 (en) | 1998-09-11 | 2003-10-21 | Lv Partners, L.P. | Method for conducting a contest using a network |
US7379901B1 (en) | 1998-09-11 | 2008-05-27 | Lv Partners, L.P. | Accessing a vendor web site using personal account information retrieved from a credit card company web site |
US6708208B1 (en) | 1998-09-11 | 2004-03-16 | L.V. Partners, L.P. | Unique bar code for indicating a link between a product and a remote location on a web network |
US6688522B1 (en) | 1998-09-11 | 2004-02-10 | L. V. Partners, L.P. | Unique bar code |
US6868433B1 (en) | 1998-09-11 | 2005-03-15 | L.V. Partners, L.P. | Input device having positional and scanning capabilities |
US7930213B1 (en) | 1998-09-11 | 2011-04-19 | Rpx-Lv Acquisition Llc | Method and apparatus for completing, securing and conducting an E-commerce transaction |
US7533064B1 (en) | 1998-10-07 | 2009-05-12 | Paypal Inc. | E-mail invoked electronic commerce |
US6360275B1 (en) | 1998-10-29 | 2002-03-19 | Shanghai Wonders Information Co., Ltd. | System and method for transmitting and receiving data in a network |
US7694319B1 (en) | 1998-11-02 | 2010-04-06 | United Video Properties, Inc. | Interactive program guide with continuous data stream and client-server data supplementation |
US6859799B1 (en) | 1998-11-30 | 2005-02-22 | Gemstar Development Corporation | Search engine for video and graphics |
WO2000064177A1 (en) * | 1999-04-15 | 2000-10-26 | Skystream Networks Inc. | Data broadcast system |
DE60039861D1 (de) * | 1999-04-20 | 2008-09-25 | Samsung Electronics Co Ltd | Werbeverwaltungssystem für digitale videoströme |
US7016951B1 (en) | 1999-04-30 | 2006-03-21 | Mantech Ctx Corporation | System and method for network security |
AU6888300A (en) * | 1999-04-30 | 2000-11-21 | Network Forensics, Inc. | System and method for capturing network data and identifying network events therefrom |
EP1177674A4 (en) * | 1999-05-10 | 2004-12-08 | Samsung Electronics Co Ltd | DIGITAL FLOW ADVERTISING SUB-GROUPS |
KR100654430B1 (ko) * | 1999-05-20 | 2006-12-07 | 삼성전자주식회사 | 데이터를 브로드캐스팅하는 디지털 방송 시스템에서 어플리케이션을 처리하는 장치 및 방법 |
US7069571B1 (en) | 1999-06-15 | 2006-06-27 | Wink Communications, Inc. | Automated retirement of interactive applications using retirement instructions for events and program states |
US7222155B1 (en) | 1999-06-15 | 2007-05-22 | Wink Communications, Inc. | Synchronous updating of dynamic interactive applications |
US7634787B1 (en) | 1999-06-15 | 2009-12-15 | Wink Communications, Inc. | Automatic control of broadcast and execution of interactive applications to maintain synchronous operation with broadcast programs |
US8434113B1 (en) * | 1999-10-06 | 2013-04-30 | Tvworks, Llc | Electronic commerce using streaming media |
US6530084B1 (en) * | 1999-11-01 | 2003-03-04 | Wink Communications, Inc. | Automated control of interactive application execution using defined time periods |
US6985589B2 (en) * | 1999-12-02 | 2006-01-10 | Qualcomm Incorporated | Apparatus and method for encoding and storage of digital image and audio signals |
GB2357922A (en) * | 1999-12-07 | 2001-07-04 | Sony Service Ct | Optimising a data carousel |
US6226739B1 (en) * | 1999-12-14 | 2001-05-01 | International Business Machines Corporation | Method and computer program for distributing software to a personal palm-type device through a global software distribution package transmittable over the world wide web |
US7720712B1 (en) | 1999-12-23 | 2010-05-18 | Amazon.Com, Inc. | Placing a purchase order using one of multiple procurement options |
US20020178442A1 (en) * | 2001-01-02 | 2002-11-28 | Williams Dauna R. | Interactive television scripting |
US6496802B1 (en) | 2000-01-07 | 2002-12-17 | Mp3.Com, Inc. | System and method for providing access to electronic works |
AU2001229644A1 (en) | 2000-01-27 | 2001-08-07 | Suzanne M. Berberet | System and method for providing broadcast programming, a virtual vcr, and a video scrapbook to programming subscribers |
US7028327B1 (en) | 2000-02-02 | 2006-04-11 | Wink Communication | Using the electronic program guide to synchronize interactivity with broadcast programs |
US7631338B2 (en) * | 2000-02-02 | 2009-12-08 | Wink Communications, Inc. | Interactive content delivery methods and apparatus |
US20030097338A1 (en) * | 2000-02-03 | 2003-05-22 | Piotrowski Tony E. | Method and system for purchasing content related material |
US6784805B2 (en) | 2000-03-15 | 2004-08-31 | Intrigue Technologies Inc. | State-based remote control system |
US8531276B2 (en) | 2000-03-15 | 2013-09-10 | Logitech Europe S.A. | State-based remote control system |
US20010033243A1 (en) | 2000-03-15 | 2001-10-25 | Harris Glen Mclean | Online remote control configuration system |
US20020060750A1 (en) * | 2000-03-29 | 2002-05-23 | Istvan Anthony F. | Single-button remote access to a synthetic channel page of specialized content |
US20020056083A1 (en) * | 2000-03-29 | 2002-05-09 | Istvan Anthony F. | System and method for picture-in-browser scaling |
EP1273169B1 (en) | 2000-03-31 | 2006-06-07 | United Video Properties, Inc. | Systems and methods for reducing cut-offs in program recording |
US6687735B1 (en) * | 2000-05-30 | 2004-02-03 | Tranceive Technologies, Inc. | Method and apparatus for balancing distributed applications |
US20040148625A1 (en) * | 2000-04-20 | 2004-07-29 | Eldering Charles A | Advertisement management system for digital video streams |
US7360231B2 (en) * | 2000-05-01 | 2008-04-15 | The Directv Group, Inc. | System for obtaining data regarding customer use of interactive television |
US7181759B2 (en) * | 2000-05-26 | 2007-02-20 | Bigband Networks, Inc. | System and method for providing interactivity for end-users over digital broadcast channels |
US7000230B1 (en) | 2000-06-21 | 2006-02-14 | Microsoft Corporation | Network-based software extensions |
US20050211765A1 (en) * | 2000-06-27 | 2005-09-29 | Digital World Access, Inc. | Money management network |
US20010056399A1 (en) * | 2000-06-27 | 2001-12-27 | Eric Saylors | Web dependent consumer financing and virtual reselling method |
US20030074311A1 (en) * | 2001-10-16 | 2003-04-17 | Newattitude Inc. | Self-administered automatic payroll deduction |
US20040111370A1 (en) * | 2000-06-27 | 2004-06-10 | Digital World Access, Inc. | Single source money management system |
US7613790B2 (en) * | 2000-07-13 | 2009-11-03 | Biap Systems, Inc. | Apparatus for and method of executing customized interactive computing services in a broadband network environment |
US20020013950A1 (en) * | 2000-07-25 | 2002-01-31 | Tomsen Mai-Lan | Method and system to save context for deferred transaction via interactive television |
US20020056109A1 (en) * | 2000-07-25 | 2002-05-09 | Tomsen Mai-Lan | Method and system to provide a personalized shopping channel VIA an interactive video casting system |
US7103908B2 (en) * | 2000-07-25 | 2006-09-05 | Diego, Inc. | Method and system to save context for deferred transaction via interactive television |
US7313802B1 (en) | 2000-07-25 | 2007-12-25 | Digeo, Inc. | Method and system to provide deals and promotions via an interactive video casting system |
JP2002092366A (ja) * | 2000-09-11 | 2002-03-29 | Nec Corp | Cpu時間売買方法及びcpu時間売買システムにおける管理サーバ |
US6766376B2 (en) | 2000-09-12 | 2004-07-20 | Sn Acquisition, L.L.C | Streaming media buffering system |
US7103906B1 (en) | 2000-09-29 | 2006-09-05 | International Business Machines Corporation | User controlled multi-device media-on-demand system |
FR2814892B1 (fr) * | 2000-10-04 | 2003-02-21 | At Sky | Systeme permettant d'utiliser un ordinateur comme serveur pour televiseurs |
AU2002211570A1 (en) | 2000-10-11 | 2002-04-22 | United Video Properties, Inc. | Systems and methods for caching data in media-on-demand systems |
CN100397899C (zh) * | 2000-10-11 | 2008-06-25 | 联合视频制品公司 | 提供数据存储到点播媒体传递系统中服务器上的系统和方法 |
US20020103810A1 (en) * | 2000-10-19 | 2002-08-01 | Kobi Menachemi | Dynamic building of applications |
US6889384B1 (en) | 2000-11-08 | 2005-05-03 | The Directv Group, Inc. | Simplified interactive user interface for multi-video channel navigation |
US6917627B1 (en) | 2000-11-21 | 2005-07-12 | The Directv Group, Inc. | Hybrid satellite communications system |
US20020091761A1 (en) * | 2001-01-10 | 2002-07-11 | Lambert James P. | Technique of generating a composite media stream |
US20020138500A1 (en) * | 2001-01-12 | 2002-09-26 | General Instrument Corporation | Virtual streaming in a carousel file system |
US20020152467A1 (en) * | 2001-02-12 | 2002-10-17 | Rosario Fiallos | Automated generation of conditional access packets for IRD upgrades via radio frequency software download in satellite television systems |
US20020175991A1 (en) * | 2001-02-14 | 2002-11-28 | Anystream, Inc. | GPI trigger over TCP/IP for video acquisition |
JP4291467B2 (ja) * | 2001-03-01 | 2009-07-08 | 株式会社ソニー・コンピュータエンタテインメント | エンタテインメント装置、メニュー表示方法および情報記録媒体 |
US20040117427A1 (en) * | 2001-03-16 | 2004-06-17 | Anystream, Inc. | System and method for distributing streaming media |
US20100027430A1 (en) * | 2001-04-30 | 2010-02-04 | Netwitness Corporation | Apparatus and Method for Network Analysis |
WO2002088968A1 (en) * | 2001-04-30 | 2002-11-07 | Ctx Corporation | Apparatus and method for network analysis |
DE60225010T2 (de) * | 2001-06-13 | 2009-03-05 | OpenTV, Inc., San Francisco | Verfahren und vorrichtung zur verbesserten erfassung und überwachung von ereignisinformationstabellenteilen |
KR100425681B1 (ko) * | 2001-07-23 | 2004-04-03 | 엘지전자 주식회사 | 디에스엠-씨씨 기반 장치의 에이피아이 구현 장치 및 방법 |
US7154916B2 (en) * | 2001-07-26 | 2006-12-26 | The Directv Group, Inc. | Method for real-time insertion of auxiliary data packets into DSS bitstream in the presence of one or more service channels |
US20030056218A1 (en) * | 2001-08-06 | 2003-03-20 | Digeo, Inc. | System and method to provide content and corresponding applications via carousel transmission to thin-client interactive television terminals |
US6996564B2 (en) * | 2001-08-13 | 2006-02-07 | The Directv Group, Inc. | Proactive internet searching tool |
US7343487B2 (en) | 2001-10-10 | 2008-03-11 | Nokia Corporation | Datacast distribution system |
US20040072584A1 (en) * | 2002-03-01 | 2004-04-15 | Kern Ronald J. | Wireless distribution of multimedia content |
US7844994B2 (en) * | 2002-03-22 | 2010-11-30 | The Directv Group, Inc. | System and method for persistent storage of common user information for interactive television using a centrally located repository |
US20040031052A1 (en) * | 2002-08-12 | 2004-02-12 | Liberate Technologies | Information platform |
AU2003268273B2 (en) * | 2002-08-30 | 2007-07-26 | Opentv, Inc | Carousel proxy |
CN100450256C (zh) * | 2002-10-28 | 2009-01-07 | 中兴通讯股份有限公司 | 移动通信网络规划中小区覆盖文件的分布式处理方法 |
US8964830B2 (en) * | 2002-12-10 | 2015-02-24 | Ol2, Inc. | System and method for multi-stream video compression using multiple encoding formats |
US9138644B2 (en) | 2002-12-10 | 2015-09-22 | Sony Computer Entertainment America Llc | System and method for accelerated machine switching |
US9314691B2 (en) | 2002-12-10 | 2016-04-19 | Sony Computer Entertainment America Llc | System and method for compressing video frames or portions thereof based on feedback information from a client device |
US9108107B2 (en) * | 2002-12-10 | 2015-08-18 | Sony Computer Entertainment America Llc | Hosting and broadcasting virtual events 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 |
US10201760B2 (en) | 2002-12-10 | 2019-02-12 | Sony Interactive Entertainment America Llc | System and method for compressing video based on detected intraframe motion |
US9077991B2 (en) | 2002-12-10 | 2015-07-07 | Sony Computer Entertainment America Llc | System and method for utilizing forward error correction with video compression |
US8711923B2 (en) | 2002-12-10 | 2014-04-29 | Ol2, Inc. | System and method for selecting a video encoding format based on feedback data |
FR2849704A1 (fr) * | 2003-01-02 | 2004-07-09 | Thomson Licensing Sa | Dispositifs et procedes de decision conditionnelle d'execution de services recus et de constitution de messages d'informations associes a des services, et produits associes |
US7493646B2 (en) | 2003-01-30 | 2009-02-17 | United Video Properties, Inc. | Interactive television systems with digital video recording and adjustable reminders |
US7231404B2 (en) | 2003-01-31 | 2007-06-12 | Nokia Corporation | Datacast file transmission with meta-data retention |
US7370066B1 (en) | 2003-03-24 | 2008-05-06 | Microsoft Corporation | System and method for offline editing of data files |
US7415672B1 (en) | 2003-03-24 | 2008-08-19 | Microsoft Corporation | System and method for designing electronic forms |
US7913159B2 (en) | 2003-03-28 | 2011-03-22 | Microsoft Corporation | System and method for real-time validation of structured data files |
US20060051059A1 (en) | 2004-09-08 | 2006-03-09 | Krakirian Haig H | Video recorder having user extended and automatically extended time slots |
US7406660B1 (en) | 2003-08-01 | 2008-07-29 | Microsoft Corporation | Mapping between structured data and a visual surface |
US7334187B1 (en) | 2003-08-06 | 2008-02-19 | Microsoft Corporation | Electronic form aggregation |
US20050071240A1 (en) * | 2003-09-26 | 2005-03-31 | Ewald Stephen A. | System and method for purchasing linked with broadcast media |
JP2005216140A (ja) * | 2004-01-30 | 2005-08-11 | Fujitsu Ten Ltd | 発注確認装置および発注確認方法 |
FR2871639A1 (fr) * | 2004-06-11 | 2005-12-16 | Thomson Licensing Sa | Procede de gestion de programmes auxiliaires et recepteur et systeme correspondants |
US8086575B2 (en) | 2004-09-23 | 2011-12-27 | Rovi Solutions Corporation | Methods and apparatus for integrating disparate media formats in a networked media system |
JP2006094415A (ja) * | 2004-09-27 | 2006-04-06 | Toshiba Corp | 映像装置及び映像ストリーミング方法 |
US7680758B2 (en) | 2004-09-30 | 2010-03-16 | Citrix Systems, Inc. | Method and apparatus for isolating execution of software applications |
US8117559B2 (en) | 2004-09-30 | 2012-02-14 | Citrix Systems, Inc. | Method and apparatus for virtualizing window information |
US7752600B2 (en) | 2004-09-30 | 2010-07-06 | Citrix Systems, Inc. | Method and apparatus for providing file-type associations to multiple applications |
US7853947B2 (en) | 2004-09-30 | 2010-12-14 | Citrix Systems, Inc. | System for virtualizing access to named system objects using rule action associated with request |
US8171479B2 (en) | 2004-09-30 | 2012-05-01 | Citrix Systems, Inc. | Method and apparatus for providing an aggregate view of enumerated system resources from various isolation layers |
US8095940B2 (en) | 2005-09-19 | 2012-01-10 | Citrix Systems, Inc. | Method and system for locating and accessing resources |
US8806533B1 (en) | 2004-10-08 | 2014-08-12 | United Video Properties, Inc. | System and method for using television information codes |
JP4487761B2 (ja) * | 2004-12-21 | 2010-06-23 | カシオ計算機株式会社 | データ出力装置、および、プログラム |
US7664872B2 (en) * | 2005-01-05 | 2010-02-16 | Divx, Inc. | Media transfer protocol |
US20060168291A1 (en) * | 2005-01-05 | 2006-07-27 | Van Zoest Alexander | Interactive multichannel data distribution system |
US20060200745A1 (en) * | 2005-02-15 | 2006-09-07 | Christopher Furmanski | Method and apparatus for producing re-customizable multi-media |
JP4478598B2 (ja) * | 2005-03-18 | 2010-06-09 | キヤノン株式会社 | 画像形成装置 |
JP4546299B2 (ja) * | 2005-03-18 | 2010-09-15 | キヤノン株式会社 | 画像形成装置 |
JP2006256275A (ja) * | 2005-03-18 | 2006-09-28 | Canon Inc | 装置および画像形成装置 |
US9973817B1 (en) | 2005-04-08 | 2018-05-15 | Rovi Guides, Inc. | System and method for providing a list of video-on-demand programs |
DE102006018238A1 (de) | 2005-04-20 | 2007-03-29 | Logitech Europe S.A. | System und Verfahren zur adaptiven Programmierung einer Fernbedienung |
US9104773B2 (en) * | 2005-06-21 | 2015-08-11 | Microsoft Technology Licensing, Llc | Finding and consuming web subscriptions in a web browser |
US8661459B2 (en) | 2005-06-21 | 2014-02-25 | Microsoft Corporation | Content syndication platform |
US20070079342A1 (en) | 2005-09-30 | 2007-04-05 | Guideworks, Llc | Systems and methods for managing local storage of on-demand content |
US8131825B2 (en) | 2005-10-07 | 2012-03-06 | Citrix Systems, Inc. | Method and a system for responding locally to requests for file metadata associated with files stored remotely |
US20070083620A1 (en) * | 2005-10-07 | 2007-04-12 | Pedersen Bradley J | Methods for selecting between a predetermined number of execution methods for an application program |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7813963B2 (en) | 2005-12-27 | 2010-10-12 | The Pen | Interactive electronic desktop action method and system for executing a transaction |
US8607287B2 (en) | 2005-12-29 | 2013-12-10 | United Video Properties, Inc. | Interactive media guidance system having multiple devices |
US9681105B2 (en) | 2005-12-29 | 2017-06-13 | Rovi Guides, Inc. | Interactive media guidance system having multiple devices |
US8280843B2 (en) * | 2006-03-03 | 2012-10-02 | Microsoft Corporation | RSS data-processing object |
US7979803B2 (en) * | 2006-03-06 | 2011-07-12 | Microsoft Corporation | RSS hostable control |
US8280982B2 (en) | 2006-05-24 | 2012-10-02 | Time Warner Cable Inc. | Personal content server apparatus and methods |
US9386327B2 (en) | 2006-05-24 | 2016-07-05 | Time Warner Cable Enterprises Llc | Secondary content insertion apparatus and methods |
US8024762B2 (en) | 2006-06-13 | 2011-09-20 | Time Warner Cable Inc. | Methods and apparatus for providing virtual content over a network |
KR100823282B1 (ko) * | 2006-09-29 | 2008-04-21 | 삼성전자주식회사 | 데이터 방송 애플리케이션을 수신, 저장 및 실행하기 위한방법 및 장치 |
US7653661B2 (en) * | 2006-12-29 | 2010-01-26 | Sap Ag | Monitoring connection between computer system layers |
CN101231731B (zh) * | 2007-01-25 | 2015-10-21 | 运软网络科技(上海)有限公司 | 一种应用虚拟化在公网上的通用商务方法及其迷你服务器 |
US8181206B2 (en) | 2007-02-28 | 2012-05-15 | Time Warner Cable Inc. | Personal content server apparatus and methods |
US8898325B2 (en) * | 2007-03-06 | 2014-11-25 | Trion Worlds, Inc. | Apparatus, method, and computer readable media to perform transactions in association with participants interacting in a synthetic environment |
US7801888B2 (en) | 2007-03-09 | 2010-09-21 | Microsoft Corporation | Media content search results ranked by popularity |
US20090019492A1 (en) | 2007-07-11 | 2009-01-15 | United Video Properties, Inc. | Systems and methods for mirroring and transcoding media content |
WO2009029956A2 (en) * | 2007-08-31 | 2009-03-05 | Jacked, Inc. | User generated content |
US20090100357A1 (en) * | 2007-10-11 | 2009-04-16 | Alessio Signorini | Systems and methods for visually selecting information |
US8171483B2 (en) | 2007-10-20 | 2012-05-01 | Citrix Systems, Inc. | Method and system for communicating between isolation environments |
US20090133078A1 (en) | 2007-11-16 | 2009-05-21 | United Video Properties, Inc | Systems and methods for automatically purchasing and recording popular pay programs in an interactive media delivery system |
US9503691B2 (en) | 2008-02-19 | 2016-11-22 | Time Warner Cable Enterprises Llc | Methods and apparatus for enhanced advertising and promotional delivery in a network |
US8327402B1 (en) | 2008-07-15 | 2012-12-04 | United Video Properties, Inc. | Methods and devices for presenting an interactive media guidance application |
US8626863B2 (en) * | 2008-10-28 | 2014-01-07 | Trion Worlds, Inc. | Persistent synthetic environment message notification |
US10063934B2 (en) | 2008-11-25 | 2018-08-28 | Rovi Technologies Corporation | Reducing unicast session duration with restart TV |
US8578272B2 (en) | 2008-12-31 | 2013-11-05 | Apple Inc. | Real-time or near real-time streaming |
US20100169458A1 (en) | 2008-12-31 | 2010-07-01 | David Biderman | Real-Time or Near Real-Time Streaming |
US8156089B2 (en) | 2008-12-31 | 2012-04-10 | Apple, Inc. | Real-time or near real-time streaming with compressed playlists |
US8260877B2 (en) | 2008-12-31 | 2012-09-04 | Apple Inc. | Variant streams for real-time or near real-time streaming to provide failover protection |
US8694585B2 (en) * | 2009-03-06 | 2014-04-08 | Trion Worlds, Inc. | Cross-interface communication |
US8657686B2 (en) * | 2009-03-06 | 2014-02-25 | Trion Worlds, Inc. | Synthetic environment character data sharing |
US8661073B2 (en) * | 2009-03-06 | 2014-02-25 | Trion Worlds, Inc. | Synthetic environment character data sharing |
US8090797B2 (en) | 2009-05-02 | 2012-01-03 | Citrix Systems, Inc. | Methods and systems for launching applications into existing isolation environments |
US8214515B2 (en) | 2009-06-01 | 2012-07-03 | Trion Worlds, Inc. | Web client data conversion for synthetic environment interaction |
US9166714B2 (en) | 2009-09-11 | 2015-10-20 | Veveo, Inc. | Method of and system for presenting enriched video viewing analytics |
US9014546B2 (en) | 2009-09-23 | 2015-04-21 | Rovi Guides, Inc. | Systems and methods for automatically detecting users within detection regions of media devices |
US8560642B2 (en) | 2010-04-01 | 2013-10-15 | Apple Inc. | Real-time or near real-time streaming |
GB201105502D0 (en) | 2010-04-01 | 2011-05-18 | Apple Inc | Real time or near real time streaming |
US8805963B2 (en) | 2010-04-01 | 2014-08-12 | Apple Inc. | Real-time or near real-time streaming |
CN102238179B (zh) | 2010-04-07 | 2014-12-10 | 苹果公司 | 实时或准实时流传输 |
CN102906718B (zh) * | 2010-05-28 | 2016-05-25 | 惠普发展公司,有限责任合伙企业 | 禁用显示刷新过程 |
US8508401B1 (en) | 2010-08-31 | 2013-08-13 | Logitech Europe S.A. | Delay fixing for command codes in a remote control system |
US8843586B2 (en) | 2011-06-03 | 2014-09-23 | Apple Inc. | Playlists for real-time or near real-time streaming |
US8856283B2 (en) | 2011-06-03 | 2014-10-07 | Apple Inc. | Playlists for real-time or near real-time streaming |
US8805418B2 (en) | 2011-12-23 | 2014-08-12 | United Video Properties, Inc. | Methods and systems for performing actions based on location-based rules |
US9609374B2 (en) | 2012-06-27 | 2017-03-28 | Rovi Guides, Inc. | System and methods for automatically obtaining cost-efficient access to a media content collection |
US20140282786A1 (en) | 2013-03-12 | 2014-09-18 | Time Warner Cable Enterprises Llc | Methods and apparatus for providing and uploading content to personalized network storage |
US9674563B2 (en) | 2013-11-04 | 2017-06-06 | Rovi Guides, Inc. | Systems and methods for recommending content |
JP6649085B2 (ja) * | 2015-12-28 | 2020-02-19 | 日本テレビ放送網株式会社 | 分散コンピューティングシステム、放送局、サーバ及び分散コンピューティング方法 |
CN106897872A (zh) * | 2016-12-08 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 资源调度方法及装置、支付方法及装置 |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3602891A (en) * | 1969-03-10 | 1971-08-31 | Univ Washington | Continuous transmission computer and multiple receiver system |
US3803491A (en) * | 1971-05-26 | 1974-04-09 | Tocom | Communications system |
US3891792A (en) * | 1974-06-25 | 1975-06-24 | Asahi Broadcasting | Television character crawl display method and apparatus |
US4528589A (en) * | 1977-02-14 | 1985-07-09 | Telease, Inc. | Method and system for subscription television billing and access |
US4264925A (en) * | 1979-08-13 | 1981-04-28 | Michael J. Freeman | Interactive cable television system |
US4323922A (en) * | 1979-12-17 | 1982-04-06 | Oak Industries Inc. | Television coding system with channel level identification |
US4965825A (en) * | 1981-11-03 | 1990-10-23 | The Personalized Mass Media Corporation | Signal processing apparatus and methods |
CA1177558A (en) † | 1982-04-15 | 1984-11-06 | Groupe Videotron Ltee. (Le) | Cable network data transmission system |
NL8303991A (nl) * | 1983-11-18 | 1985-06-17 | Nl Standard Electric Mij B V | Kabeltelevisienetwerk. |
JPS6149574A (ja) * | 1984-08-16 | 1986-03-11 | Sony Corp | プログラムの伝送方法 |
JP2585535B2 (ja) * | 1986-06-02 | 1997-02-26 | 株式会社日立製作所 | 複合計算機システムにおけるプロセス結合方法 |
US4780758A (en) † | 1987-04-30 | 1988-10-25 | Gte Government Systems Corporation | Telecommunication system with burst and continuous audio signals |
IT1211278B (it) * | 1987-09-02 | 1989-10-12 | Olivetti & Co Spa | Sistema di trasmissione e o ricezione di programmi per calcolatori e o dati attraverso il teletext |
JPH01221944A (ja) * | 1988-03-01 | 1989-09-05 | Nippon Hoso Kyokai <Nhk> | データ信号送出装置 |
US5117354A (en) * | 1988-05-24 | 1992-05-26 | Carnes Company, Inc. | Automated system for pricing and ordering custom manufactured parts |
US5251301A (en) * | 1988-05-27 | 1993-10-05 | Pc Connection, Inc. | Computer remote control through a video signal |
US5191573A (en) * | 1988-06-13 | 1993-03-02 | Hair Arthur R | Method for transmitting a desired digital video or audio signal |
JPH0627967B2 (ja) * | 1988-06-17 | 1994-04-13 | 株式会社エスシーシー | Cai学習方法および装置 |
US4994908A (en) † | 1988-12-23 | 1991-02-19 | Scientific-Atlanta, Inc. | Interactive room status/time information system |
US5003591A (en) † | 1989-05-25 | 1991-03-26 | General Instrument Corporation | Functionally modifiable cable television converter system |
AU628753B2 (en) * | 1990-08-14 | 1992-09-17 | Digital Equipment Corporation | Method and apparatus for implementing server functions in a distributed heterogeneous environment |
JPH04127688A (ja) * | 1990-09-18 | 1992-04-28 | Fujitsu General Ltd | 文字放送受信機 |
WO1992006438A1 (en) * | 1990-10-01 | 1992-04-16 | Bush Thomas A | Transactional processing system |
US5129080A (en) * | 1990-10-17 | 1992-07-07 | International Business Machines Corporation | Method and system increasing the operational availability of a system of computer programs operating in a distributed system of computers |
GB2249416B (en) * | 1990-12-31 | 1994-08-17 | Ruego Dev Co | A data processing system. |
MX9200483A (es) * | 1991-02-06 | 1992-08-01 | Catalina Marketing Int | Sistema y metodo para generar certificaciones de descuetnos acumulativos. |
US5168356A (en) * | 1991-02-27 | 1992-12-01 | General Electric Company | Apparatus for segmenting encoded video signal for transmission |
DE69210303T2 (de) * | 1991-05-23 | 1996-11-14 | Hitachi Ltd | Breitbildschirmfernsehempfänger mit Bildseitenverhältnisumwandlungsfunktion und Verfahren zur Darstellung eines vergrösserten Abschnittes |
US5343239A (en) * | 1991-11-20 | 1994-08-30 | Zing Systems, L.P. | Transaction based interactive television system |
JPH05197732A (ja) * | 1991-12-16 | 1993-08-06 | Sofuto Banku Kk | 情報販売端末装置のインタフェース |
US5371550A (en) * | 1991-12-25 | 1994-12-06 | Casio Computer Co., Ltd. | Television receiver with auto-tuning system |
US5299197A (en) * | 1992-02-11 | 1994-03-29 | Roger Schlafly | Communications packet server protocol |
US5642515A (en) * | 1992-04-17 | 1997-06-24 | International Business Machines Corporation | Network server for local and remote resources |
FR2694423B1 (fr) * | 1992-07-30 | 1994-12-23 | France Telecom | Dispositif de contrôle de la puissance de sortie des diodes laser. |
US5373288A (en) * | 1992-10-23 | 1994-12-13 | At&T Corp. | Initializing terminals in a signal distribution system |
US5440632A (en) * | 1992-12-02 | 1995-08-08 | Scientific-Atlanta, Inc. | Reprogrammable subscriber terminal |
US5600364A (en) * | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Network controller for cable television delivery systems |
US5548532A (en) * | 1994-04-28 | 1996-08-20 | Thomson Consumer Electronics, Inc. | Apparatus and method for formulating an interactive TV signal |
US5819034A (en) | 1994-04-28 | 1998-10-06 | Thomson Consumer Electronics, Inc. | Apparatus for transmitting and receiving executable applications as for a multimedia system |
US5559548A (en) * | 1994-05-20 | 1996-09-24 | Davis; Bruce | System and method for generating an information display schedule for an electronic program guide |
US5635978A (en) * | 1994-05-20 | 1997-06-03 | News America Publications, Inc. | Electronic television program guide channel system and method |
-
1994
- 1994-04-28 US US08/233,908 patent/US5819034A/en not_active Ceased
-
1995
- 1995-03-30 CA CA002145899A patent/CA2145899C/en not_active Expired - Lifetime
- 1995-04-19 EP EP03002722.1A patent/EP1307024B2/en not_active Expired - Lifetime
- 1995-04-19 EP EP03002720A patent/EP1307022B1/en not_active Expired - Lifetime
- 1995-04-19 ES ES03002722T patent/ES2387085T3/es not_active Expired - Lifetime
- 1995-04-19 ES ES03002720T patent/ES2370166T3/es not_active Expired - Lifetime
- 1995-04-19 ES ES95105803T patent/ES2232816T3/es not_active Expired - Lifetime
- 1995-04-19 EP EP03002723A patent/EP1307025B1/en not_active Expired - Lifetime
- 1995-04-19 EP EP95105803A patent/EP0680185B1/en not_active Expired - Lifetime
- 1995-04-19 PT PT03002722T patent/PT1307024E/pt unknown
- 1995-04-19 AT AT03002720T patent/ATE518348T1/de active
- 1995-04-19 PT PT03002720T patent/PT1307022E/pt unknown
- 1995-04-19 ES ES03002723T patent/ES2372692T3/es not_active Expired - Lifetime
- 1995-04-19 EP EP03002721A patent/EP1307023A3/en not_active Withdrawn
- 1995-04-19 AT AT03002723T patent/ATE523014T1/de active
- 1995-04-19 DK DK95105803T patent/DK0680185T3/da active
- 1995-04-19 AT AT95105803T patent/ATE278285T1/de not_active IP Right Cessation
- 1995-04-19 PT PT03002723T patent/PT1307025E/pt unknown
- 1995-04-19 DE DE69533565T patent/DE69533565T2/de not_active Expired - Lifetime
- 1995-04-24 JP JP9888295A patent/JPH08166925A/ja active Pending
- 1995-04-25 RU RU95106682A patent/RU2142158C1/ru active
- 1995-04-25 SG SG1995000321A patent/SG28257A1/en unknown
- 1995-04-25 KR KR1019950009741A patent/KR100363593B1/ko not_active IP Right Cessation
- 1995-04-27 CN CN200610093448.8A patent/CN1893648B/zh not_active Expired - Lifetime
- 1995-04-27 CN CN95104730A patent/CN1104691C/zh not_active Expired - Lifetime
- 1995-04-27 CN CNB031029655A patent/CN1311378C/zh not_active Expired - Lifetime
- 1995-04-27 CN CNA2006101019034A patent/CN101212659A/zh active Pending
-
1997
- 1997-03-18 US US08/819,274 patent/US5915090A/en not_active Expired - Lifetime
-
2009
- 2009-04-20 JP JP2009101935A patent/JP2009169971A/ja active Pending
-
2010
- 2010-08-20 JP JP2010185225A patent/JP2011028759A/ja active Pending
-
2012
- 2012-02-23 JP JP2012037961A patent/JP2012123833A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004100004A1 (fr) * | 2003-05-05 | 2004-11-18 | Viktor Alexandrovich Mamontov | Systeme de programmation de dispositifs de commande a distance et procede de fonctionnement correspondant |
EA005455B1 (ru) * | 2003-05-05 | 2005-02-24 | Виктор Александрович Мамонтов | Способ программирования устройств дистанционного управления |
RU2445696C2 (ru) * | 2004-11-24 | 2012-03-20 | Майкрософт Корпорейшн | Способ и система для контроля доступа к информации о присутствии на равноправной основе |
RU2468847C2 (ru) * | 2007-03-06 | 2012-12-10 | Трайон Уорлдс, Инк | Распределенная сетевая архитектура для введения динамического информационного содержимого в синтезированную среду |
RU2568289C2 (ru) * | 2007-11-08 | 2015-11-20 | Сентиент Текнолоджиз (Барбадос) Лимитед | Сетевая вычислительная система и способ выполнения вычислительной задачи (варианты) |
RU2502122C2 (ru) * | 2007-11-08 | 2013-12-20 | Дженетик Файнанс (Барбадос) Лимитед | Сетевая вычислительная система |
RU2496141C2 (ru) * | 2007-12-05 | 2013-10-20 | Ол2, Инк. | Система для объединения записанного состояния приложения с выводом интерактивного потокового видео приложения |
RU2493588C2 (ru) * | 2007-12-05 | 2013-09-20 | Ол2, Инк. | Система и способ сжатия видео на основе обнаруженного внутрикадрового движения |
RU2541105C2 (ru) * | 2009-04-28 | 2015-02-10 | Джинетик Файнэнс (Барбадос) Лимитед | Сетевая вычислительная система (варианты) и способ для вычислительной задачи |
RU2571562C2 (ru) * | 2011-09-01 | 2015-12-20 | Хуавэй Текнолоджиз Ко., Лтд. | Способ, устройство и система для переноса ресурса |
RU2498396C1 (ru) * | 2012-02-22 | 2013-11-10 | Вадим Александрович Питов | Способ осуществления коммуникаций и виртуальных путешествий |
US10430429B2 (en) | 2015-09-01 | 2019-10-01 | Cognizant Technology Solutions U.S. Corporation | Data mining management server |
US11151147B1 (en) | 2015-09-01 | 2021-10-19 | Cognizant Technology Solutions U.S. Corporation | Data mining management server |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2142158C1 (ru) | Распределенная вычислительная система и компьютер-клиент этой системы | |
USRE44685E1 (en) | Apparatus for transmitting and receiving executable applications as for a multimedia system, and method and system to order an item using a distributed computing system | |
US5208665A (en) | Presentation player for an interactive digital communication system | |
US5195092A (en) | Interactive multimedia presentation & communication system | |
US4792849A (en) | Digital interactive communication system | |
RU2106758C1 (ru) | Способ оптимизации передачи программы многим пользователям, система для оптимизации передачи программы многим пользователям, приемник для приема программы, полученной от системы оптимизации передачи программы, и устройство планирования для системы оптимизации передачи программы | |
US4829372A (en) | Presentation player | |
US5818441A (en) | System and method for simulating two-way connectivity for one way data streams | |
CA1322590C (en) | Multimedia bidirectional broadcast system | |
JP2000506700A (ja) | ファクシミリ及びボイスメール対応の対話型ケーブルネットワーク | |
JPH08237329A (ja) | マルチメディア情報提供方法 | |
CA2002646A1 (en) | Interactive multimedia presentation and communications system | |
JPH11220720A (ja) | ビデオ・オン・デマンド・システム | |
JPH09182054A (ja) | データ送出装置 | |
CA2010867A1 (en) | Interactive multimedia presentation and communications system | |
JP2002044278A (ja) | データ提供システム |