USRE44685E1 - 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 - Google Patents

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 Download PDF

Info

Publication number
USRE44685E1
USRE44685E1 US09/903,457 US90345701A USRE44685E US RE44685 E1 USRE44685 E1 US RE44685E1 US 90345701 A US90345701 A US 90345701A US RE44685 E USRE44685 E US RE44685E
Authority
US
United States
Prior art keywords
data
distributed computing
packets
computing application
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US09/903,457
Other versions
US20020038257A1 (en
Inventor
Kuriacose Joseph
Ansley Wayne Jessup
Vincent Dureau
Alain Delpuch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OpenTV Inc
Original Assignee
OpenTV Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/233,908 external-priority patent/US5819034A/en
Application filed by OpenTV Inc filed Critical OpenTV Inc
Priority to US09/903,457 priority Critical patent/USRE44685E1/en
Publication of US20020038257A1 publication Critical patent/US20020038257A1/en
Application granted granted Critical
Publication of USRE44685E1 publication Critical patent/USRE44685E1/en
Anticipated expiration legal-status Critical
Assigned to OPENTV, INC. reassignment OPENTV, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: THOMSON CONSUMER ELECTRONICS, INC.
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Definitions

  • the present invention relates to a client-server distributed computer system.
  • Such a computer system has application in broadcast multimedia applications.
  • One form of such a network includes a central computer, called a server, which generally includes a large amount of mass storage.
  • Programs used by the network users are centrally stored in the mass storage on the server.
  • the server transfers a copy of the program from its mass storage to the main memory of the personal computer of that user, and the program executes on that personal computer.
  • Data also may be centrally stored in the server and shared by all the users on the network. The data is stored on the mass storage of the server, and is accessible by all the network users in response to a request.
  • the server also serves as a hub for communications of messages (electronic mail) between network users
  • the server in such a system handles the storage and distribution of the programs, data and messages, but does not contribute any processing power to the actual computing tasks of any of the users. I.e. a user cannot expect the server computer to perform any of the processing tasks of the program executing on the personal computer. While such networks perform a valuable function, they are not distributed computing systems, in which interconnected computers cooperate to perform a single computing task.
  • the network may be configured in such a manner that a user on the network may request that the server, or other personal computer connected to the network, execute a program.
  • This is termed remote execution because a computer (server or other personal computer) remote from the requester is executing a program in response to a request from the requester.
  • the program of which remote execution is requested is either sent from the requester to the remote computer, or retrieved from the server in response to a request by the remote computer.
  • the program is received, it is executed.
  • several computers may be enlisted to cooperate in performing a computing function.
  • the server is processing the query request, the personal computer is free to perform other processing, and while the personal computer is generating the query request, and processing the resulting data received from the server, the server is free to process query requests from other personal computers.
  • client-server computing Other types of programs are also amenable to this type of distributed computing, termed client-server computing.
  • client-server computing The sharing of the processing tasks between the personal computer and the server improves the overall efficiency of computing across the network.
  • client-server computer systems, and remote execution networks may be termed distributed computing systems because several computers (the server and/or the respective peripheral computers) cooperate to perform the computing function, e.g. data base management.
  • TV programs will allow a viewer of a television program to interact with that program.
  • the central broadcast location (TV network, local TV studio, cable system, etc.) will have a central computer, corresponding to the server computer, which will produce signals related to the interactive TV program to be broadcast simultaneously with the TV (video and audio) signals.
  • These signals carry data representing the interactive TV program and may include commands, executable program code and/or data for controlling the viewer interaction.
  • Each viewer location will have a computer, corresponding to the client computer, which will receive the commands, executable code and/or data from the central computer, execute the executable code, process the received data, accept input from the user and provide data to the user by means of the TV screen.
  • the input from the user may be sent back to the computer at the broadcast location, allowing the user to interact with the interactive TV program.
  • U.S. Pat. No. 4,965,825, SIGNAL PROCESSING APPARATUS AND METHODS describes an interactive TV system in which a central broadcast location includes signals carrying commands, executable code and data in, for example, the vertical blanking interval of the television signal for receipt by the computer systems at the viewer locations.
  • a computer at the viewer location extracts the commands, executable code and data and executes the code to process the data and interact with the user.
  • Such a system is comparable to the remote execution function of distributed computer systems, described above, in that the viewer computer is enlisted into the interactive TV program, and is controlled by the central location.
  • a central computer controls or responds to requests from peripheral computers attached to it through a network.
  • the peripheral computer personal computer
  • requests remote execution of a program requests a file or message from, or sends a query request to, another computer. Only in response to a request does the other computer provide a response, e.g. remote execution, the requested file, message or retrieved data.
  • the peripheral computer is required to have all the resources necessary to completely, or almost completely, execute the desired program, with the server acting only as another storage mechanism or at most sharing a portion of the computing tasks.
  • the inventors propose a distributed computing system in which a server computer continuously produces a data stream.
  • This data stream acts a mass storage device for the client computers receiving it.
  • This data stream repetitively includes data representing a distributed computing application in which the client computer may participate, including executable code and data.
  • a transport mechanism including a high speed, one-way, communication path, carries the data stream from the server to the client.
  • the client receives the data stream, extracts the distributed computing representative data and executes the distributed computing application.
  • a distributed computer system comprises a source of a continuous data stream repetitively including data representing a distributed computing application and a client computer, receiving the data stream, for extracting the distributed computing application representative data from the data stream, and executing the extracted distributed computing application.
  • the client computer system need not include all the resources, in particular, main memory and mass storage, necessary to perform the entire program. Instead, no mass storage is required because the data stream provides the function of the mass storage device, and the main memory requirement is modest because only the currently executing portion of the program need be stored in memory.
  • the currently executing portion has completed, its memory space is freed up, and the next executing portion is extracted from the data stream, stored in the freed memory space, and that portion begins execution.
  • a distributed computing system allows the user of the client computer to have the option participating in the distributed computing task. If it is desired to participate, the client computer extracts the data representing the distributed computing application and executes the distributed computing application, as described above. If it is desired not to participate, the data stream is merely ignored, and the processing desired by the user, or none at all, is performed.
  • Such a distributed computing system also allows each participating client computer to join the distributed computing function at any time and to proceed at its own pace in performing its own computing function.
  • a distributed computing system is particularly amenable to interactive TV applications because it allows a viewer to tune into an interactive TV channel at any time, join in the interactivity whenever desired (or not at all), and allows all the viewers to proceed at their different paces. This is especially advantageous in an so environment when an interactive commercial, with its own executable code and data, may be presented within an interactive program, or when the viewer wishes to change channels.
  • FIG. 1 is a block diagram of a distributed computing system according to the present invention
  • FIG. 2 is a block diagram of a server computer as illustrated in FIG. 1 ;
  • FIG. 3 is a timing diagram illustrating the data streams produced by a server computer in a distributed computing system as illustrated in FIG. 1 ;
  • FIG. 4 is a block diagram of a client computer as illustrated in FIG. 1 .
  • FIG. 1 is a block diagram of a distributed computing system according to the present invention.
  • a server computer 10 which may include a large computer system, is coupled to a plurality of client computers 20 through a transport mechanism 30 .
  • the server computer 10 may be coupled to more than the three client computers 20 illustrated in FIG. 1 , and the client computers 20 may be geographically widely dispersed.
  • Client: computer 22 is bidirectionally coupled to a local computer 40 , to an auxiliary data processing system 50 and to a central processing facility 60 .
  • the central processing facility 60 is bidirectionally coupled to the server computer 10 .
  • the central processing facility 60 may also be connected to facilities other than the server computer 10 illustrated in FIG. 1 .
  • the local computer 40 is further bidirectionally coupled to a mass storage device 70 .
  • the client computer 22 interacts with a user 80 by providing information to the user via a display screen or other output device (not shown) and by accepting information from the user via a keyboard or other input device (also not shown).
  • Client computers 24 and 26 also interact with their users, (not shown in order to simplify the drawing).
  • client computers 24 and 26 are bidirectionally coupled to the central processing facility 60 .
  • Such links are optional, however.
  • the only requirements for any client computer 20 is a way to interact with a user, and a connection to the transport mechanism 30 .
  • Links to local computers, auxiliary data processing systems, and the central processing facility 60 are all optional, and need not be present in every one of the client computers 20 .
  • the transport mechanism 30 includes a unidirectional high speed digital data link, such as a direct fiber optic or digital satellite link from the server 10 to the client computers 20 .
  • the data may be transported over the transport system 30 by a packet data system.
  • a packet data system In such a system, a stream of data packets, each including identification information indicating, among other things, the type of data contained in that packet and the actual data, is transmitted through the data link.
  • a packet data system allows several independent streams of data, each identified by identification information in their packets, to be time multiplexed within a single stream of packets.
  • a plurality of such packet data streams over respective channels on the same physical medium (fiber optic or satellite radio link) making up the transport mechanism 30 .
  • different data streams may be modulated on carrier signals having different frequencies. These modulated carriers may be transmitted via respective transponders on a satellite link, for example. Further, if a particular transponder has sufficient capacity, it is possible to time multiplex several data streams on a single modulated carrier.
  • the client computers 20 each contain a data receiver for selecting one of the streams of packets being transported over the transport mechanism 30 , receiving the selected stream of packets and extracting the data contained in them.
  • the data receiver may include a tunable demodulator for receiving one of the respective modulated carriers from the satellite link.
  • the data receiver may include circuitry for time demultiplexing the respective data streams being carried by that modulated carrier.
  • the server 10 produces a continuous data stream in the form of a stream of packets for the client computers 20 .
  • the server 10 repetitively inserts a packet, or successive packets, containing data representing the distributed computing application, including at least one executable code module, into the data stream.
  • This code module contains executable code for the client computers 20 .
  • the data receiver in, for example, client computer 22 , continuously monitors the packets in the data stream on transport mechanism 30 . When a packet including identification information indicating that it contains the code module (or a portion of the code module) required by the client computer 22 is present in the data stream, the client computer 22 detects its presence, extracts the code module (or the portion of the code module) from that packet and stores it in the main memory. When the code module is completely received, the client computer 22 begins to execute it.
  • the server 10 may also repetitively include a packet or packets containing one or more data modules in the data stream.
  • the data modules contain data to be processed by the executable code in the code module.
  • the client computer 22 may require access to the data in the data module or modules. If so, the client computer 22 monitors the data stream for the required data module or modules. When packets containing the data module or modules (or portions of the data module or modules) are present in the data stream, they are extracted, and the contents stored in the main memory of the client computer 22 . When all the required data modules have been completely received, the client computer 22 begins or continues execution of the code from the code module to process the data from the received data module or modules. As is the case for code modules, it is possible for more than one data module to be stored in memory, if there is sufficient memory in client computer 22 .
  • the server 10 may further repetitively include in the data stream a packet or packets containing a directory of the code and data modules currently being included in the data stream.
  • the directory includes a list of all the code and data modules which are present in the data stream, along with information about those modules. If a directory is present in the data stream, then, prior to extraction of any code or data modules from the data stream, the client computer 22 monitors the data stream for the directory. When packets containing the directory (or portions of the directory) are present in the data stream, they are extracted, and their data stored in the main memory of the client computer 22 . When the directory has been completely received, the client computer 22 evaluates the entries in the directory, then requests the first code and/or data module from the data stream and execution proceeds as described above.
  • any of the client computers 20 may join the distributed computing function represented by the packet stream at any time, and each of the client computers 20 may operate at its own speed, generally in response to the user 80 .
  • the server 10 repetitively places the directory and all the code and data modules which the client computers 20 may require to perform their portion of the distributed computing function into the data stream on the transport mechanism 30 .
  • one of the client computers 20 joins the distributed computing function, it monitors the newly selected packet stream on the transport mechanism 30 for the directory module, extracts it, and processes it as described above.
  • one of the client computers 20 During execution, whenever one of the client computers 20 requires the a new code and/or data module, it monitors the data stream on the transport mechanism 30 for the newly required code and/or data module, extracts it and either executes it, if it is a code module, or processes it if it is a data module, as described above.
  • the packet data stream may also include packets of auxiliary data. This data is not required by the client computer 22 for execution of the code, although it may be related to the execution because the user 80 may interact with the executing program on the client computer 22 based on received auxiliary data.
  • the data stream receiver in the client computer 22 recognizes the auxiliary data packets in the data stream on the transport mechanism 30 and passes them directly to the auxiliary data processor 50 .
  • the auxiliary data processor 50 processes its packets independently of the client computer 22 .
  • the auxiliary data processor 50 may provide its own display device (not shown) which may be shared with the client computer 22 , or the display device (not shown) associated with the client computer 22 may be shared with the auxiliary data processor 50 , to provide a single information display to the user 80 .
  • the auxiliary data processor 50 may have links to other illustrated elements in (not shown), but that is dependent upon the type of data.
  • the auxiliary data includes the video and audio portions of the underlying television signal.
  • the auxiliary data would include video packets containing MPEG, or MPEG-like, encoded data representing the television image and audio packets containing digitally encoded audio.
  • SAP second audio program
  • the video packets would be supplied to a known MPEG (or similar) decoder (not shown) which would generate standard video signals, which would be supplied to a television receiver or video monitor (not shown).
  • the audio packets would be supplied to a known audio decoder (not shown) which would generate standard audio signals for the television receiver or speakers (not shown).
  • the client computer 22 may, in response to execution of the executable code module, generate graphic displays to supply information to the user 80 . These graphic displays may be combined with the standard video signal from the MPEG decoder in a known manner, and the combined image displayed on the television receiver or video monitor.
  • the client computer 22 may also generate sounds to provide other information to the viewer. The generated sounds may be combined, in known manner, with the standard audio signals from the audio decoder, and the combined sound played through the television receiver or speakers.
  • time code data may be included in either or both of the television auxiliary packet data stream and the packet data stream representing the interactive TV application. This permits synchronization of any graphic images or sounds generated by the client computer 22 with the television signal from the auxiliary data.
  • the client computer 22 would have access to the time code data, and would control the generation of the graphic image and/or sound to occur at the desired time, as supplied by the time code data.
  • both the client computer 22 and the auxiliary data processor 50 may be contained in a single enclosure, such as a television receiver, or television set-top decoder box.
  • a television receiver, or decoder box would include connectors for attaching to a local computer or other equipment.
  • the user 80 provides input to the program running on the client computer 22 during its execution. This data may be required by the server 10 in order to effect the distributed computing function. In an interactive TV system, for example, user 80 may provide input to the client computer through a handheld remote control unit.
  • the user data is transferred to the server computer 10 via the central processing facility 60 .
  • data is sent from the client computers 20 to the server computer 10 via modems through the telephone system acting as the central processing facility 60 .
  • the server computer 10 receives and processes the data received from the client computers 20 during execution of its portion of the distributed computing function.
  • Server computer 10 may generate new, or modify existing, code and/or data modules in the data stream on the transport mechanism 30 , in a manner described below, based on that received data. Alternatively, the server computer 10 may immediately return information to the client computers 20 in the other direction through the central processing facility 60 . The information in newly generated code and/or data modules is processed by all client computers 20 participating in the distributed computing function, while information passed from the server computer 10 to the client computers 20 through the central processing facility 60 is specifically related to the client computer ( 22 , 24 , 26 ) to which that information was sent.
  • the central processing facility 60 may include its own computer system, separately connected by modem to both the client computers 20 and the server computer 10 through the telephone system.
  • the central computing facility 60 provides access to other computers or processing facilities (not shown) via the telephone system.
  • those computer systems may be accessed via modem through the telephone system by either the client computers 20 or the server computer 10 .
  • Local computer 40 is collocated with the client computer 22 .
  • Local computer 40 may be a personal computer used by the user 80 of the client computer 22 , or may be a larger computer, or computer network located at the same site as the client computer 22 . This allows the client computer 22 to access data on the attached mass storage 70 of the personal computer or a computer on the network located at the client computer 22 site.
  • the client computer 22 may use the mass storage 70 of the local computer 40 for storage of data to be retrieved later. It is likely that the local computer 40 will include both an output device (not shown) such as a computer monitor and an input device (also not shown) such as a computer keyboard. Both of these may be shared with the client computer 22 and/or the auxiliary data processor 50 , as described above.
  • the distributed computing system illustrated in may be part of a widespread corporate computing system, and the server 10 may be located at a central location of that corporation.
  • the client computer 22 may be located a remote location, and the local computer 40 may be coupled to the personal computer network at that location. Workers at that location may store shared data (e.g. financial information) on the server connected to that network.
  • the distributed computing function may include gathering local financial data from the client computers at the remote locations, processing that financial data and returning overall financial results to the client computers.
  • the executable code executing on the client computer 22 accesses the data from the local computer 40 (either from its attached mass storage 70 or through the network) through the I/O port, and sends it to the server computer 10 through the central processing facility 60 .
  • the server computer 10 continues its processing based on the information received from client computer 22 (and other client computers 20 ), and returns the results of that processing to the client computers 20 either through the central processing facility 60 or via the data stream on the transport mechanism 30 .
  • the distributed computing system may be an interactive television system, broadcasting a home shopping show as the distributed computing application.
  • the auxiliary data carries the video and audio portion of the television signal, which may show and describe the items being offered for sale, and may include both live actors and overlaid graphics generated at the central studio.
  • Code and data modules making up the interactive television application may include data about the products which will be offered for sale during this show, or portion of the show, and executable code to interact with the user in the manner described below.
  • a button is pressed on the TV remote control.
  • This button signals the client computer 22 to display a series of instructions and menus necessary to solicit the information necessary to place the order, e.g. the item number, name and address of the viewer, the method of payment, the credit card number (if needed), etc.
  • These instructions are generated in the client computer as graphics which are overlaid on the television video image. It is also possible for a computer generated voice to be generated and combined with the television audio either by voice-over, or by replacing the television audio.
  • the viewer responds to the instruction by providing the requested information via the TV remote control.
  • the information requested by the on-screen display and/or voice instructions has been entered by the viewer, it is sent to a central computer via the modem in the client computer. An order confirmation may be sent in the other direction from the central computer.
  • permanent information about the viewer i.e. the name, address, method of payment and credit card number
  • the information is stored in permanent memory in the client computer.
  • that information is retrieved from the permanent memory, appended to the item number and transmitted to the central computer.
  • the client computer will know which item is currently being offered for sale. In such a case, the viewer will be able to order it by simply pressing one button on the TV remote control.
  • the client computer can combine the previously received information related to the item currently being offered for sale with the previously stored personal information related to the viewer, and transmit the order to the central computer and receive the confirmation in return.
  • the client computer 22 may receive control information from the local computer 40 .
  • the user 80 using the local computer 40 , could control the client computer 22 via the I/O port to select a desired one of the data streams on transport mechanism 30 , and process the program currently being broadcast on that data stream, with interaction with the user 80 through the input and output devices (not shown) connected to the local computer 40 .
  • the user 80 can cause the client computer 22 to access the server computer 10 through the central processing facility 60 , instead of via the data stream on transport mechanism 30 , and receive code and data modules via this bidirectional link.
  • FIG. 2 is a block diagram illustrating a server computer 10 as illustrated in FIG. 1 .
  • a source of distributed computing application code and data 101 includes an application compiler, and software management module (not shown) and has an output terminal coupled to an input terminal of a flow builder 102 .
  • An output terminal of flow builder 102 is coupled to an input terminal of a transport packetizer 104 .
  • An output terminal of transport packetizer 104 is coupled to a first input terminal of a packet multiplexer 106 .
  • An output terminal of packet multiplexer 106 is coupled to an input terminal of a transport multiplexer 110 .
  • An output terminal of transport multiplexer 10 is coupled to the physical medium making up the transport mechanism 30 (of FIG.
  • a second input terminal of packet multiplexer 106 is coupled to a source of auxiliary data packets 107 .
  • a clock 109 has respective output terminals coupled to corresponding input terminals of the transport packetizer 104 and auxiliary data source 107 .
  • a data transceiver 103 has an first bidirectional terminal coupled to the central processing facility 60 (of FIG. 1 ) and a second bidirectional data coupled to the application code and data source 101 .
  • Application code and data source 101 , flow builder 102 , transport packetizer 104 , auxiliary data source 107 , clock 109 and packet multiplexer 106 in combination, form a channel source 108 for the transport mechanism, illustrated by a dashed box in.
  • channel sources including similar components as those illustrated in channel source 108 but not shown in FIG. 1 , are represented by another dashed box 108 a.
  • the other channel sources ( 108 a) have output terminals coupled to other input terminals of the transport multiplexer 110 , and may have input terminals coupled to central processing facilities through data transceivers.
  • data representing the distributed computing application program, and data related to the transmission of the program over the transport mechanism 30 are supplied to the flow builder 102 from the application source 101 .
  • This data may be supplied either in the form of files containing data representing the code and data modules, or by scripts providing information on how to construct the code and data modules, or other such information.
  • the code and data modules may be constant or may change dynamically, based on inputs received from the client computers 20 via the central computing facility 60 and/or other sources.
  • the executable code and data module files may be generated by a compiler, interpreter or assembler in a known manner in response to source language programming by an application programmer.
  • the data file related to the transmission of the modules includes such information as: the desired repetition rates for the directory and the code and data modules to be included in the data stream; the size of main memory in the client computers 20 required to store each module, and to completely execute the application program; a priority level for the module, if it is a code module, etc.
  • Flow builder 102 processes the data from the application source 101 .
  • flow builder 102 constructs a directory module, giving an overall picture of the application program.
  • the information in the directory module includes e.g. the identification of all the code and data modules being repetitively transmitted in the data stream, their size and possibly other information related to those modules.
  • the application program representative data is processed to generate the code and data modules.
  • the directory, code and data modules thus constructed are formatted by adding module headers and error detection and/or correction codes to each module.
  • a transmission schedule is also generated.
  • the data representing the directory module and the code and data modules are repetitively presented to the transport packetizer 104 according to the schedule previously generated.
  • the transport packetizer 104 generates a stream of packets representing the directory module and the code and data modules as they are emitted from the flow builder 102 .
  • Each packet has a constant predetermined length, and is generated by dividing the data stream from the flow builder into groups of bits, and adding a packet header with information identifying the information contained in the packet, and an error detection and/or correction code, etc., to each group, such that each packet is the same predetermined length. (If there is insufficient data from the flow builder 102 to completely fill a packet, the packet is padded with null data.)
  • These packets are time multiplexed with the auxiliary data packets, in a known manner, to form a single packet stream in the packet multiplexer 106 .
  • the generated packets may have varying lengths.
  • the packet header for each packet will contain the length of that packet.
  • time code data packets are placed in the data stream packets and/or the auxiliary data packets based on data received from the clock 109 .
  • Packet streams from all of the channel sources ( 108 , 108 a) are multiplexed into a single transport channel, which is transmitted through transport mechanism 30 .
  • the packet streams may be frequency multiplexed by having each packet stream modulate a carrier signal at a different frequency, with all of the carriers being carried by a satellite link to the client computers 20 , in a known manner.
  • several packet streams may be statistically time multiplexed, and used to modulate a single carrier, also in a known manner. For example, it has been proposed to time multiples up to eight interactive television data streams through a single satellite link.
  • Data from the client computers 20 via the central processing facility 60 is received at the server computer 10 by the data transceiver 103 , which may include its own processor (not shown). If an immediate response is generated, the transceiver 103 processor returns that response via the central processing facility 60 to a specific client computer ( 22 - 26 ), a specific set of the client computers 20 or to all client computers 20 in their turn. If, however, a common response to all client computers 20 is desired, the application programmer may amend the code and data files in the application code and data source 101 using the application compiler. These amended files are then processed by the flow builder again to generate another flow. It is further possible that the code and data files in the application source 101 may be amended automatically and dynamically (i.e. in real time) in response to data received from the transceiver 103 , and the flow updated as the data is being received from the client computers 20 .
  • FIG. 3 is a timing diagram illustrating the data streams produced by the server computer 10 in a distributed computing system as illustrated in FIG. 1 .
  • server computer 10 is shown as simultaneously producing a plurality of packet streams 32 - 38 .
  • Each packet stream ( 32 - 38 ) is shown as a horizontal band divided into packets having the same duration and number of bits. As described above, it is possible that the size of the packets within any packet stream vary with the amount of data to be carried.
  • FIG. 3 it can be seen that the starting times of the packets are not synchronized. It is possible to synchronize the packets, but it in not necessary.
  • packets carrying data representing directories are designated DIR
  • packets carrying data representing code modules are designated CM
  • packets carrying data representing data modules are designated DM
  • packets carrying auxiliary data are designated AUX.
  • the leftmost packet contains data representing a code module, CM.
  • CM code module
  • auxiliary data AUX
  • another packet containing data representing the code module CM.
  • the code module is repetitively produced. There may be more or fewer packets in between successive repetitions of the code module packets CM. The rate of repetition may be specified by the programmer when the application is programmed, and may be varied during the execution of the application.
  • the leftmost packet contains auxiliary data, AUX.
  • the next two packets contain respective portions of a code module (CM 1 ,CM 2 ).
  • the last packet contains auxiliary data, AUX. From the series of packets 34 it can be seen that if a code module is too large to be contained in a single packet, it may be carried by more than one, with each packet containing a portion of the code module. Although two packets are illustrated in the series of packets 34 as containing the code module (CM 1 ,CM 2 ), any number of packets may be used to carry the code module, depending upon its size.
  • the two packets carrying the code module, (CM 1 ,CM 2 ) are repetitively transmitted (not shown) in the series of packets 34 , as described above.
  • the leftmost packet contains data representing a code module (CM).
  • the next packet (DM 1 ) is a first packet containing data representing a data so module.
  • the next packet contains auxiliary data, AUX.
  • the next packet (DM 2 ) is a second packet containing the remaining data representing the data module. From the series of packets 36 it may be seen that a data module (DM 1 ,DM 2 ), associated with the code module (CM), may also be included in the packet stream.
  • Both the code module (CM) and the data module (DM 1 ,DM 2 ) are repetitively transmitted (not shown) in the series of packets 36 .
  • the rate of repetition of the code module (CM) may be different from that of the data module (DM 1 ,DM 2 ), and both rates may be specified by the application programmer and varied during the execution of the application.
  • the data module may be carried by more than one packet, with each packet containing a portion of the data module.
  • the packets carrying the data module need not be transmitted sequentially, but may have intervening packets in the packet stream. The same is true for multiple packets carrying a code module or directory module (not shown).
  • the leftmost packet contains data representing the directory (DIR).
  • the next packet contains data representing a code module (CM), followed by a packet containing auxiliary data (AUX) and a packet containing data representing a data module (DM).
  • CM code module
  • AUX auxiliary data
  • DM data module
  • all of a directory module (DIR), a code module (CM) and a data module (DM) in a single packet stream may be seen.
  • the respective repetition rates of these three modules may be different, as specified by the programmer of the application, and may be varied during the execution of the application.
  • FIG. 4 is a block diagram of a client computer 22 as illustrated in FIG. 1 .
  • transport mechanism 30 (of FIG. 1 ) is coupled to an input terminal of a stream selector 202 .
  • An output terminal of stream selector 202 is coupled to respective input terminals of an auxiliary data extractor 204 and a packet data extractor 206 .
  • An output terminal of auxiliary data extractor 204 is coupled to the auxiliary data processor 50 (of FIG. 1 ).
  • a bidirectional terminal of packet data extractor 206 is coupled to a corresponding terminal of a stream I/O adapter 208 .
  • a control output terminal of stream I/O adapter 208 is coupled to a corresponding control input terminal of stream selector 202 .
  • the combination of stream selector 202 , auxiliary data extractor 204 and packet data extractor 206 form a data stream receiver 207 for client computer 22 , illustrated by a dashed line in FIG. 4 .
  • Stream I/O adapter 208 forms a part of a processing unit 224 in client computer 22 , illustrated by a dashed line in FIG. 4 .
  • processing unit 224 includes a processor 210 , read/write memory (RAM) 212 and read-only memory (ROM) 214 coupled together in a known manner via a system bus 216 .
  • Further input and output facilities are provided by an I/O port 218 , coupled to the local processor 40 (of FIG. 1 ); user I/O adapter 220 , for communicating with user 80 ; and modem 222 , coupled to the central processing facility 60 (of FIG. 1 ); all also coupled to the system bus 216 in a known manner.
  • Other adapters may be coupled to system bus 216 to provide other capabilities to the processing unit 224 .
  • auxiliary data extractor 204 I/O port 218 and modem 222 are not required in a client computer 20 according to the present invention. They are illustrated in FIG. 1 and FIG. 4 to show optional additional functionality.
  • processor 210 of processing unit 224 retrieves program instructions permanently stored in ROM 214 , or temporarily stored in RAM 212 , and executes the retrieved instructions to read data from ROM 212 and/or RAM 214 , write data to RAM 212 and/or receive data from or supply data to outside sources via the I/O port 218 , user I/O adapter 220 and/or modem 222 , in a known manner.
  • processor 210 may also request a code and/or data module from the data stream supplied to the client computer 22 via the transport mechanism 30 (of FIG. 1 ).
  • processor 210 To retrieve this data, processor 210 first instructs stream I/O adapter 208 to send a selection control signal to the stream selector 202 , possibly in response to user input from user I/O adapter 220 . Then processor 210 issues a request for a specific code or data module to the stream I/O adapter 208 . Stream I/O adapter 208 relays this request to the packet data extractor 204 .
  • Transport mechanism 30 supplies all of the plurality of packet: streams ( 32 - 38 of) it carries to the stream selector 202 , which passes only the selected packet stream.
  • Auxiliary data extractor 204 monitors the selected packet stream, extracts the auxiliary data packets from it and supplies them directly to the auxiliary data processor 50 (of FIG. 1 ).
  • Packet data extractor 206 similarly monitors the selected packet stream, extracts the directory, code and/or data module packets requested by the stream I/O adapter 208 and supplies them to the stream I/O adapter 208 .
  • the data in the packets returned to the stream I/O adapter 208 is supplied to the RAM 212 .
  • processor 210 is notified of its receipt by the stream I/O adapter 208 . Processor 210 may then continue execution of its program.
  • the data stream in a distributed computing system illustrated in FIG. 1 is similar to a mass storage system in prior art systems.
  • An application program executing on the processor 210 makes a request for a module listed in the directory in the same manner that such a program would make a request for a file containing a code or data module previously stored on a mass storage device in a prior art system.
  • the data stream receiver 207 is similar to a mass storage device, and stream I/O 208 acts in a similar manner to a mass storage adapter on a prior art system by locating the desired data, transferring it to a predetermined location (I/O buffer) in the system memory and informing the processor of the completion of the retrieval.
  • the stream I/O adapter 208 can only retrieve code and data from the data stream; data cannot be written to the data stream.
  • the distributed computing application may be divided into more than one code module, each containing executable code for a different portion of the distributed computing application.
  • processor 210 requests that code module from stream I/O adapter 208 .
  • processor 210 requests the next module from stream I/O 208 .
  • code and data modules are repetitively carried on the data stream, a module may be deleted from RAM 212 when it is not currently needed without the necessity of temporarily being stored, because if it is required later, it may again be retrieved from the data stream when needed.
  • RAM 212 has sufficient capacity, processor 210 may request stream I/O adapter to simultaneously load several code modules into RAM 212 . If this car, be done, then processor 210 may switch between code modules without waiting for stream I/O adapter 208 to extract them from the data stream.
  • I/O adapters may be coupled to the system bus 216 in a known manner.
  • a graphics adapter may be coupled to system bus 216 .
  • the graphics adapter generates signals representing graphical images, in a known manner, in response to instructions from the processor 210 . Further, these signals may be combined with the standard video signal produced by the video decoder (described above) in the auxiliary data processor 50 of an interactive TV system.
  • the resulting signal represents an image in which the image generated by the graphics adapter is superimposed on the image represented by the broadcast video signal. It is also possible to selectively combine these two image representative signals under the control of the processor 210 .
  • An interactive TV system may also include a sound adapter coupled to the system bus 216 .
  • the sound adapter generates a signal representing a computer generated sound (such as music, synthesized voice or other sound), in a known manner, in response to instructions from the processor 210 . Further, these signals may be combined with the standard audio signal produced by the audio decoder (described above) in the auxiliary data processor 50 of an interactive TV system. When the sound representative signal and the standard audio signal are combined, the resulting signal represents the combination of the sound generated by the sound adapter and the broadcast audio signal. It is also possible to selectively combine these two sound representative signals under the control of the processor 210 .
  • the timing of the generation and display of the graphical image and sound representative signals may be controlled by receipt of the time code data from the data stream. This enables an executable code module to synchronize the display of processor generated image and presentation of processor generated sound to the broadcast video and audio. It is further possible to synchronize the operation of the interactive TV application by the insertion of specialized packets into the data stream which cause an interrupt of the code currently executing in processor 210 .
  • Stream I/O 208 monitors the data stream for such specialized packets, and generates an interrupt, in a known manner, for the processor 210 .
  • Processor 210 responds to that interrupt, also in known manner, by executing an interrupt service routine (ISR). This ISR may be used for synchronization of the interactive TV application, or other purposes.
  • ISR interrupt service routine
  • a client computer 22 in a distributed computing system as illustrated in FIG. 1 does not need a mass storage device, nor a large amount of RAM 212 . Such a system decreases the cost of a client computer, and increases the functionality of the lower cost client computers.
  • a client computer has the option of participating in a distributed computing function, may join in the distributed computing function at any time (or may drop out and return later), and may participate at its own pace.

Abstract

A distributed computer system, as for transmitting and receiving executable multimedia applications, includes a source of a continuous data stream repetitively transfering data representing a distributed computing application and a client computer, receiving the data stream, for extracting the distributed computing application representative data from the data stream, and executing the extracted distributed computing application.

Description

RELATED APPLICATIONS
This application is a reissue divisional of application Ser. No. 09/672,523, which is an application for reissue of U.S. Pat. No. 5,819,034.
The following other related reissue divisional applications of application Ser. No. 09/672,523 for reissue of U.S. Pat. No. 5,819,034 are:
    • Ser. No. 09/903,448 filed on Jul. 10, 2001, which is pending, is a division of and claims the benefit of Ser. No. 09/672,523;
    • Ser. No. 09/903,458 filed on Jul. 10, 2001, which is pending, is a division of and claims the benefit of Ser. No. 09/672,523;
    • Ser. No. 09/903,091 filed on Jul. 10, 2001, which is Abandoned, is a division of and claims the benefit of Ser. No. 09/672,523.
The present invention relates to a client-server distributed computer system. Such a computer system has application in broadcast multimedia applications.
Early computer systems were standalone systems, consisting generally of mainframe computers. Later, several mainframe computer systems were closely connected, or clustered, to handle larger computing jobs, such as a large number of time sharing users. With the advent of personal computers, large numbers of relatively low power standalone computer systems were controlled directly by their users. Soon these large numbers of personal computers were coupled together into networks of computers, providing shared resources and communications capabilities to the users of the individual personal computers and between those users and the preexisting mainframe computers.
One form of such a network includes a central computer, called a server, which generally includes a large amount of mass storage. Programs used by the network users are centrally stored in the mass storage on the server. When a user desires to run a program, the user's computer requests that a copy of that program be sent to it from the server. In response to that request, the server transfers a copy of the program from its mass storage to the main memory of the personal computer of that user, and the program executes on that personal computer. Data also may be centrally stored in the server and shared by all the users on the network. The data is stored on the mass storage of the server, and is accessible by all the network users in response to a request. The server also serves as a hub for communications of messages (electronic mail) between network users The server in such a system handles the storage and distribution of the programs, data and messages, but does not contribute any processing power to the actual computing tasks of any of the users. I.e. a user cannot expect the server computer to perform any of the processing tasks of the program executing on the personal computer. While such networks perform a valuable function, they are not distributed computing systems, in which interconnected computers cooperate to perform a single computing task.
In an improvement to such networks, the network may be configured in such a manner that a user on the network may request that the server, or other personal computer connected to the network, execute a program. This is termed remote execution because a computer (server or other personal computer) remote from the requester is executing a program in response to a request from the requester. In such a system, the program of which remote execution is requested is either sent from the requester to the remote computer, or retrieved from the server in response to a request by the remote computer. When the program is received, it is executed. In this manner several computers may be enlisted to cooperate in performing a computing function.
Recently, there have been programs which distribute the actual computing tasks necessary for performing a single computing function. For example, in such a data base program, where the data base is stored in the mass storage of the server, if a user desires to make a query of the data base, the portion of the data base management program on that user's personal computer will generate a query request, which is forwarded to the server. The portion of the data base management program on the server performs the query processing, e.g. parsing the query request, locating where the data specified in the query request resides on its mass storage device, accessing that data, and sending the results back to the requesting personal computer over the network. The portion of the data base management program on the personal computer then processes the data received from the server, e.g. formatting it, and displaying it on the screen or printing it on a printer. While the server is processing the query request, the personal computer is free to perform other processing, and while the personal computer is generating the query request, and processing the resulting data received from the server, the server is free to process query requests from other personal computers.
Other types of programs are also amenable to this type of distributed computing, termed client-server computing. The sharing of the processing tasks between the personal computer and the server improves the overall efficiency of computing across the network. Such client-server computer systems, and remote execution networks, may be termed distributed computing systems because several computers (the server and/or the respective peripheral computers) cooperate to perform the computing function, e.g. data base management.
Recently, broadcast multimedia programs, more specifically, interactive television (TV) programs, have been proposed. Interactive TV programs will allow a viewer of a television program to interact with that program. In an interactive TV system, the central broadcast location (TV network, local TV studio, cable system, etc.) will have a central computer, corresponding to the server computer, which will produce signals related to the interactive TV program to be broadcast simultaneously with the TV (video and audio) signals. These signals carry data representing the interactive TV program and may include commands, executable program code and/or data for controlling the viewer interaction. Each viewer location will have a computer, corresponding to the client computer, which will receive the commands, executable code and/or data from the central computer, execute the executable code, process the received data, accept input from the user and provide data to the user by means of the TV screen. The input from the user may be sent back to the computer at the broadcast location, allowing the user to interact with the interactive TV program.
U.S. Pat. No. 4,965,825, SIGNAL PROCESSING APPARATUS AND METHODS, issued Oct. 23, 1990 to Harvey et al., describes an interactive TV system in which a central broadcast location includes signals carrying commands, executable code and data in, for example, the vertical blanking interval of the television signal for receipt by the computer systems at the viewer locations. A computer at the viewer location extracts the commands, executable code and data and executes the code to process the data and interact with the user. Such a system is comparable to the remote execution function of distributed computer systems, described above, in that the viewer computer is enlisted into the interactive TV program, and is controlled by the central location.
In all of the above systems, a central computer controls or responds to requests from peripheral computers attached to it through a network. I.e. the peripheral computer (personal computer) requests remote execution of a program, requests a file or message from, or sends a query request to, another computer. Only in response to a request does the other computer provide a response, e.g. remote execution, the requested file, message or retrieved data. In addition, in general, the peripheral computer is required to have all the resources necessary to completely, or almost completely, execute the desired program, with the server acting only as another storage mechanism or at most sharing a portion of the computing tasks.
The inventors propose a distributed computing system in which a server computer continuously produces a data stream. This data stream acts a mass storage device for the client computers receiving it. This data stream repetitively includes data representing a distributed computing application in which the client computer may participate, including executable code and data. A transport mechanism, including a high speed, one-way, communication path, carries the data stream from the server to the client. The client receives the data stream, extracts the distributed computing representative data and executes the distributed computing application.
In accordance with principles of the present invention, a distributed computer system comprises a source of a continuous data stream repetitively including data representing a distributed computing application and a client computer, receiving the data stream, for extracting the distributed computing application representative data from the data stream, and executing the extracted distributed computing application.
In a distributed computing system according to the invention, the client computer system need not include all the resources, in particular, main memory and mass storage, necessary to perform the entire program. Instead, no mass storage is required because the data stream provides the function of the mass storage device, and the main memory requirement is modest because only the currently executing portion of the program need be stored in memory. When the currently executing portion has completed, its memory space is freed up, and the next executing portion is extracted from the data stream, stored in the freed memory space, and that portion begins execution.
In addition, a distributed computing system according to the present invention allows the user of the client computer to have the option participating in the distributed computing task. If it is desired to participate, the client computer extracts the data representing the distributed computing application and executes the distributed computing application, as described above. If it is desired not to participate, the data stream is merely ignored, and the processing desired by the user, or none at all, is performed. Such a distributed computing system also allows each participating client computer to join the distributed computing function at any time and to proceed at its own pace in performing its own computing function.
A distributed computing system according to the present invention is particularly amenable to interactive TV applications because it allows a viewer to tune into an interactive TV channel at any time, join in the interactivity whenever desired (or not at all), and allows all the viewers to proceed at their different paces. This is especially advantageous in an so environment when an interactive commercial, with its own executable code and data, may be presented within an interactive program, or when the viewer wishes to change channels.
In the drawing:
FIG. 1 is a block diagram of a distributed computing system according to the present invention;
FIG. 2 is a block diagram of a server computer as illustrated in FIG. 1;
FIG. 3 is a timing diagram illustrating the data streams produced by a server computer in a distributed computing system as illustrated in FIG. 1;
FIG. 4 is a block diagram of a client computer as illustrated in FIG. 1.
FIG. 1 is a block diagram of a distributed computing system according to the present invention. In FIG. 1, a server computer 10, which may include a large computer system, is coupled to a plurality of client computers 20 through a transport mechanism 30. The server computer 10 may be coupled to more than the three client computers 20 illustrated in FIG. 1, and the client computers 20 may be geographically widely dispersed. Client: computer 22 is bidirectionally coupled to a local computer 40, to an auxiliary data processing system 50 and to a central processing facility 60. The central processing facility 60 is bidirectionally coupled to the server computer 10. The central processing facility 60 may also be connected to facilities other than the server computer 10 illustrated in FIG. 1. The local computer 40 is further bidirectionally coupled to a mass storage device 70. The client computer 22 interacts with a user 80 by providing information to the user via a display screen or other output device (not shown) and by accepting information from the user via a keyboard or other input device (also not shown).
Client computers 24 and 26 also interact with their users, (not shown in order to simplify the drawing). In addition, client computers 24 and 26 are bidirectionally coupled to the central processing facility 60. Such links are optional, however. The only requirements for any client computer 20 is a way to interact with a user, and a connection to the transport mechanism 30. Links to local computers, auxiliary data processing systems, and the central processing facility 60 are all optional, and need not be present in every one of the client computers 20.
The transport mechanism 30 includes a unidirectional high speed digital data link, such as a direct fiber optic or digital satellite link from the server 10 to the client computers 20. The data may be transported over the transport system 30 by a packet data system. In such a system, a stream of data packets, each including identification information indicating, among other things, the type of data contained in that packet and the actual data, is transmitted through the data link. Such a packet data system allows several independent streams of data, each identified by identification information in their packets, to be time multiplexed within a single stream of packets.
In addition, it is possible to multiplex a plurality of such packet data streams over respective channels on the same physical medium (fiber optic or satellite radio link) making up the transport mechanism 30. For example, different data streams may be modulated on carrier signals having different frequencies. These modulated carriers may be transmitted via respective transponders on a satellite link, for example. Further, if a particular transponder has sufficient capacity, it is possible to time multiplex several data streams on a single modulated carrier.
The client computers 20 each contain a data receiver for selecting one of the streams of packets being transported over the transport mechanism 30, receiving the selected stream of packets and extracting the data contained in them. Continuing the above example, the data receiver may include a tunable demodulator for receiving one of the respective modulated carriers from the satellite link. In addition, the data receiver may include circuitry for time demultiplexing the respective data streams being carried by that modulated carrier.
In operation, the server 10 produces a continuous data stream in the form of a stream of packets for the client computers 20. The server 10 repetitively inserts a packet, or successive packets, containing data representing the distributed computing application, including at least one executable code module, into the data stream. This code module contains executable code for the client computers 20. The data receiver in, for example, client computer 22, continuously monitors the packets in the data stream on transport mechanism 30. When a packet including identification information indicating that it contains the code module (or a portion of the code module) required by the client computer 22 is present in the data stream, the client computer 22 detects its presence, extracts the code module (or the portion of the code module) from that packet and stores it in the main memory. When the code module is completely received, the client computer 22 begins to execute it.
There may be more than one code module placed in the continuous data stream, each containing a different portion of the distributed computing application. For example, it is possible to divide the distributed computing application into small portions in such a manner that only one portion at a time need be executed at a time. The portion of the distributed computing application currently needed to execute is loaded into the memory of the client computer 22. When that portion has completed its execution, then a code module containing the executable code for the next portion of the distributed computing application is extracted from the data stream, stored in memory and executed. Each portion is extracted from the data stream as needed. If there is sufficient memory in the client computer 22, it is possible to load several code modules into the memory and switch between them, without extracting them from the data flow, but this is not necessary. By structuring a distributed computing application in this manner, the required memory size of the client computer 22 may be minimized.
The server 10 may also repetitively include a packet or packets containing one or more data modules in the data stream. The data modules contain data to be processed by the executable code in the code module. Prior to, or during the execution of the code from a previously extracted code module, the client computer 22 may require access to the data in the data module or modules. If so, the client computer 22 monitors the data stream for the required data module or modules. When packets containing the data module or modules (or portions of the data module or modules) are present in the data stream, they are extracted, and the contents stored in the main memory of the client computer 22. When all the required data modules have been completely received, the client computer 22 begins or continues execution of the code from the code module to process the data from the received data module or modules. As is the case for code modules, it is possible for more than one data module to be stored in memory, if there is sufficient memory in client computer 22.
The server 10 may further repetitively include in the data stream a packet or packets containing a directory of the code and data modules currently being included in the data stream. The directory includes a list of all the code and data modules which are present in the data stream, along with information about those modules. If a directory is present in the data stream, then, prior to extraction of any code or data modules from the data stream, the client computer 22 monitors the data stream for the directory. When packets containing the directory (or portions of the directory) are present in the data stream, they are extracted, and their data stored in the main memory of the client computer 22. When the directory has been completely received, the client computer 22 evaluates the entries in the directory, then requests the first code and/or data module from the data stream and execution proceeds as described above.
Any of the client computers 20 may join the distributed computing function represented by the packet stream at any time, and each of the client computers 20 may operate at its own speed, generally in response to the user 80. In order to allow for this, the server 10 repetitively places the directory and all the code and data modules which the client computers 20 may require to perform their portion of the distributed computing function into the data stream on the transport mechanism 30. Whenever one of the client computers 20 joins the distributed computing function, it monitors the newly selected packet stream on the transport mechanism 30 for the directory module, extracts it, and processes it as described above. During execution, whenever one of the client computers 20 requires the a new code and/or data module, it monitors the data stream on the transport mechanism 30 for the newly required code and/or data module, extracts it and either executes it, if it is a code module, or processes it if it is a data module, as described above.
The packet data stream may also include packets of auxiliary data. This data is not required by the client computer 22 for execution of the code, although it may be related to the execution because the user 80 may interact with the executing program on the client computer 22 based on received auxiliary data. The data stream receiver in the client computer 22 recognizes the auxiliary data packets in the data stream on the transport mechanism 30 and passes them directly to the auxiliary data processor 50. The auxiliary data processor 50 processes its packets independently of the client computer 22. If the auxiliary data must be presented to the user 80, the auxiliary data processor 50 may provide its own display device (not shown) which may be shared with the client computer 22, or the display device (not shown) associated with the client computer 22 may be shared with the auxiliary data processor 50, to provide a single information display to the user 80. The auxiliary data processor 50 may have links to other illustrated elements in (not shown), but that is dependent upon the type of data.
In an interactive TV system, for example, the auxiliary data includes the video and audio portions of the underlying television signal. For example, the auxiliary data would include video packets containing MPEG, or MPEG-like, encoded data representing the television image and audio packets containing digitally encoded audio. Further, there may possibly be several different audio packet streams carrying respective audio channels for stereo, second audio program (SAP) or multilanguage capability. In an auxiliary data processor 50 in such a system, the video packets would be supplied to a known MPEG (or similar) decoder (not shown) which would generate standard video signals, which would be supplied to a television receiver or video monitor (not shown). The audio packets would be supplied to a known audio decoder (not shown) which would generate standard audio signals for the television receiver or speakers (not shown).
In such an interactive TV system, the client computer 22 may, in response to execution of the executable code module, generate graphic displays to supply information to the user 80. These graphic displays may be combined with the standard video signal from the MPEG decoder in a known manner, and the combined image displayed on the television receiver or video monitor. The client computer 22 may also generate sounds to provide other information to the viewer. The generated sounds may be combined, in known manner, with the standard audio signals from the audio decoder, and the combined sound played through the television receiver or speakers.
Furthermore, time code data may be included in either or both of the television auxiliary packet data stream and the packet data stream representing the interactive TV application. This permits synchronization of any graphic images or sounds generated by the client computer 22 with the television signal from the auxiliary data. In this case, the client computer 22 would have access to the time code data, and would control the generation of the graphic image and/or sound to occur at the desired time, as supplied by the time code data.
In such an interactive TV system, both the client computer 22 and the auxiliary data processor 50 may be contained in a single enclosure, such as a television receiver, or television set-top decoder box. A television receiver, or decoder box would include connectors for attaching to a local computer or other equipment.
The user 80 provides input to the program running on the client computer 22 during its execution. This data may be required by the server 10 in order to effect the distributed computing function. In an interactive TV system, for example, user 80 may provide input to the client computer through a handheld remote control unit.
The user data is transferred to the server computer 10 via the central processing facility 60. In one embodiment, data is sent from the client computers 20 to the server computer 10 via modems through the telephone system acting as the central processing facility 60. The server computer 10 receives and processes the data received from the client computers 20 during execution of its portion of the distributed computing function.
Server computer 10 may generate new, or modify existing, code and/or data modules in the data stream on the transport mechanism 30, in a manner described below, based on that received data. Alternatively, the server computer 10 may immediately return information to the client computers 20 in the other direction through the central processing facility 60. The information in newly generated code and/or data modules is processed by all client computers 20 participating in the distributed computing function, while information passed from the server computer 10 to the client computers 20 through the central processing facility 60 is specifically related to the client computer (22, 24, 26) to which that information was sent.
In another embodiment, the central processing facility 60 may include its own computer system, separately connected by modem to both the client computers 20 and the server computer 10 through the telephone system. In either of the above embodiments, the central computing facility 60 provides access to other computers or processing facilities (not shown) via the telephone system. Thus, if information from other computer systems is needed to perform the distributed computing function, those computer systems may be accessed via modem through the telephone system by either the client computers 20 or the server computer 10.
An input/output (I/O) port on the client computer 22 is coupled to a corresponding port on the local computer 40. Local computer 40 is collocated with the client computer 22. Local computer 40 may be a personal computer used by the user 80 of the client computer 22, or may be a larger computer, or computer network located at the same site as the client computer 22. This allows the client computer 22 to access data on the attached mass storage 70 of the personal computer or a computer on the network located at the client computer 22 site. In addition, the client computer 22 may use the mass storage 70 of the local computer 40 for storage of data to be retrieved later. It is likely that the local computer 40 will include both an output device (not shown) such as a computer monitor and an input device (also not shown) such as a computer keyboard. Both of these may be shared with the client computer 22 and/or the auxiliary data processor 50, as described above.
For example, the distributed computing system illustrated in may be part of a widespread corporate computing system, and the server 10 may be located at a central location of that corporation. The client computer 22 may be located a remote location, and the local computer 40 may be coupled to the personal computer network at that location. Workers at that location may store shared data (e.g. financial information) on the server connected to that network. The distributed computing function may include gathering local financial data from the client computers at the remote locations, processing that financial data and returning overall financial results to the client computers. In such an application, the executable code executing on the client computer 22 accesses the data from the local computer 40 (either from its attached mass storage 70 or through the network) through the I/O port, and sends it to the server computer 10 through the central processing facility 60. The server computer 10 continues its processing based on the information received from client computer 22 (and other client computers 20), and returns the results of that processing to the client computers 20 either through the central processing facility 60 or via the data stream on the transport mechanism 30.
In another example, the distributed computing system may be an interactive television system, broadcasting a home shopping show as the distributed computing application. In such a case, the auxiliary data carries the video and audio portion of the television signal, which may show and describe the items being offered for sale, and may include both live actors and overlaid graphics generated at the central studio. Code and data modules making up the interactive television application may include data about the products which will be offered for sale during this show, or portion of the show, and executable code to interact with the user in the manner described below.
When a viewer wishes to order an item, a button is pressed on the TV remote control. This button signals the client computer 22 to display a series of instructions and menus necessary to solicit the information necessary to place the order, e.g. the item number, name and address of the viewer, the method of payment, the credit card number (if needed), etc. These instructions are generated in the client computer as graphics which are overlaid on the television video image. It is also possible for a computer generated voice to be generated and combined with the television audio either by voice-over, or by replacing the television audio. The viewer responds to the instruction by providing the requested information via the TV remote control. When the information requested by the on-screen display and/or voice instructions has been entered by the viewer, it is sent to a central computer via the modem in the client computer. An order confirmation may be sent in the other direction from the central computer.
It is also possible that permanent information about the viewer (i.e. the name, address, method of payment and credit card number) may be preentered once by the viewer, so it is not necessary to solicit that information each time an order is placed. The information is stored in permanent memory in the client computer. In such a case, when an order is placed, that information is retrieved from the permanent memory, appended to the item number and transmitted to the central computer. It is further possible that, by means of time codes, or other commands, inserted into the data stream, the client computer will know which item is currently being offered for sale. In such a case, the viewer will be able to order it by simply pressing one button on the TV remote control. In response, the client computer can combine the previously received information related to the item currently being offered for sale with the previously stored personal information related to the viewer, and transmit the order to the central computer and receive the confirmation in return.
Because the code and data modules related to the home shopping program are repetitively inserted into the data stream, a viewer may tune into the program at any time and be able to participate interactively. Similarly, it is not necessary for the viewer to participate interactively, but may simply ignore the interactive portion of the show.
It is also possible for the client computer 22 to receive control information from the local computer 40. For example, the user 80, using the local computer 40, could control the client computer 22 via the I/O port to select a desired one of the data streams on transport mechanism 30, and process the program currently being broadcast on that data stream, with interaction with the user 80 through the input and output devices (not shown) connected to the local computer 40.
It is further possible for the user 80 to cause the client computer 22 to access the server computer 10 through the central processing facility 60, instead of via the data stream on transport mechanism 30, and receive code and data modules via this bidirectional link.
FIG. 2 is a block diagram illustrating a server computer 10 as illustrated in FIG. 1. In FIG. 2, a source of distributed computing application code and data 101 includes an application compiler, and software management module (not shown) and has an output terminal coupled to an input terminal of a flow builder 102. An output terminal of flow builder 102 is coupled to an input terminal of a transport packetizer 104. An output terminal of transport packetizer 104 is coupled to a first input terminal of a packet multiplexer 106. An output terminal of packet multiplexer 106 is coupled to an input terminal of a transport multiplexer 110. An output terminal of transport multiplexer 10 is coupled to the physical medium making up the transport mechanism 30 (of FIG. 1) A second input terminal of packet multiplexer 106 is coupled to a source of auxiliary data packets 107. A clock 109 has respective output terminals coupled to corresponding input terminals of the transport packetizer 104 and auxiliary data source 107. A data transceiver 103 has an first bidirectional terminal coupled to the central processing facility 60 (of FIG. 1) and a second bidirectional data coupled to the application code and data source 101. Application code and data source 101, flow builder 102, transport packetizer 104, auxiliary data source 107, clock 109 and packet multiplexer 106, in combination, form a channel source 108 for the transport mechanism, illustrated by a dashed box in. Other channel sources, including similar components as those illustrated in channel source 108 but not shown in FIG. 1, are represented by another dashed box 108a. The other channel sources (108a) have output terminals coupled to other input terminals of the transport multiplexer 110, and may have input terminals coupled to central processing facilities through data transceivers.
In operation, data representing the distributed computing application program, and data related to the transmission of the program over the transport mechanism 30 are supplied to the flow builder 102 from the application source 101. This data may be supplied either in the form of files containing data representing the code and data modules, or by scripts providing information on how to construct the code and data modules, or other such information. The code and data modules may be constant or may change dynamically, based on inputs received from the client computers 20 via the central computing facility 60 and/or other sources. The executable code and data module files may be generated by a compiler, interpreter or assembler in a known manner in response to source language programming by an application programmer. The data file related to the transmission of the modules includes such information as: the desired repetition rates for the directory and the code and data modules to be included in the data stream; the size of main memory in the client computers 20 required to store each module, and to completely execute the application program; a priority level for the module, if it is a code module, etc.
Flow builder 102 processes the data from the application source 101. In response, flow builder 102 constructs a directory module, giving an overall picture of the application program. The information in the directory module includes e.g. the identification of all the code and data modules being repetitively transmitted in the data stream, their size and possibly other information related to those modules. Then the application program representative data is processed to generate the code and data modules. The directory, code and data modules thus constructed are formatted by adding module headers and error detection and/or correction codes to each module. A transmission schedule is also generated. After this processing is complete, the data representing the directory module and the code and data modules are repetitively presented to the transport packetizer 104 according to the schedule previously generated.
The transport packetizer 104 generates a stream of packets representing the directory module and the code and data modules as they are emitted from the flow builder 102. Each packet has a constant predetermined length, and is generated by dividing the data stream from the flow builder into groups of bits, and adding a packet header with information identifying the information contained in the packet, and an error detection and/or correction code, etc., to each group, such that each packet is the same predetermined length. (If there is insufficient data from the flow builder 102 to completely fill a packet, the packet is padded with null data.) These packets are time multiplexed with the auxiliary data packets, in a known manner, to form a single packet stream in the packet multiplexer 106. It is also possible for the generated packets to have varying lengths. In this case, the packet header for each packet will contain the length of that packet. In addition, time code data packets are placed in the data stream packets and/or the auxiliary data packets based on data received from the clock 109.
Packet streams from all of the channel sources (108, 108a) are multiplexed into a single transport channel, which is transmitted through transport mechanism 30. As described above, the packet streams may be frequency multiplexed by having each packet stream modulate a carrier signal at a different frequency, with all of the carriers being carried by a satellite link to the client computers 20, in a known manner. In addition, if there is sufficient capacity within one carrier channel several packet streams may be statistically time multiplexed, and used to modulate a single carrier, also in a known manner. For example, it has been proposed to time multiples up to eight interactive television data streams through a single satellite link.
Data from the client computers 20 via the central processing facility 60 (of FIG. 1) is received at the server computer 10 by the data transceiver 103, which may include its own processor (not shown). If an immediate response is generated, the transceiver 103 processor returns that response via the central processing facility 60 to a specific client computer (22-26), a specific set of the client computers 20 or to all client computers 20 in their turn. If, however, a common response to all client computers 20 is desired, the application programmer may amend the code and data files in the application code and data source 101 using the application compiler. These amended files are then processed by the flow builder again to generate another flow. It is further possible that the code and data files in the application source 101 may be amended automatically and dynamically (i.e. in real time) in response to data received from the transceiver 103, and the flow updated as the data is being received from the client computers 20.
FIG. 3 is a timing diagram illustrating the data streams produced by the server computer 10 in a distributed computing system as illustrated in FIG. 1. In FIG. 3 server computer 10 is shown as simultaneously producing a plurality of packet streams 32-38. Each packet stream (32-38) is shown as a horizontal band divided into packets having the same duration and number of bits. As described above, it is possible that the size of the packets within any packet stream vary with the amount of data to be carried. In FIG. 3 it can be seen that the starting times of the packets are not synchronized. It is possible to synchronize the packets, but it in not necessary. In FIG. 3, packets carrying data representing directories are designated DIR, packets carrying data representing code modules are designated CM, packets carrying data representing data modules are designated DM, and packets carrying auxiliary data are designated AUX.
In the top series of packets 32, the leftmost packet contains data representing a code module, CM. This is followed by three packets containing auxiliary data, AUX, followed by another packet containing data representing the code module, CM. From the series of packets 32 it can be seen that the code module is repetitively produced. There may be more or fewer packets in between successive repetitions of the code module packets CM. The rate of repetition may be specified by the programmer when the application is programmed, and may be varied during the execution of the application.
In the next series of packets 34, the leftmost packet contains auxiliary data, AUX. The next two packets contain respective portions of a code module (CM1,CM2). The last packet contains auxiliary data, AUX. From the series of packets 34 it can be seen that if a code module is too large to be contained in a single packet, it may be carried by more than one, with each packet containing a portion of the code module. Although two packets are illustrated in the series of packets 34 as containing the code module (CM1,CM2), any number of packets may be used to carry the code module, depending upon its size. The two packets carrying the code module, (CM1,CM2) are repetitively transmitted (not shown) in the series of packets 34, as described above.
In the series of packets 36, the leftmost packet contains data representing a code module (CM). The next packet (DM1) is a first packet containing data representing a data so module. The next packet contains auxiliary data, AUX. The next packet (DM2) is a second packet containing the remaining data representing the data module. From the series of packets 36 it may be seen that a data module (DM1,DM2), associated with the code module (CM), may also be included in the packet stream. Both the code module (CM) and the data module (DM1,DM2) are repetitively transmitted (not shown) in the series of packets 36. The rate of repetition of the code module (CM) may be different from that of the data module (DM1,DM2), and both rates may be specified by the application programmer and varied during the execution of the application.
It may further be seen that if the data module is too large to be contained in a single packet, it may be carried by more than one packet, with each packet containing a portion of the data module. Although two packets are illustrated in the series of packets 36 as containing the data module (DM1, DM2), any number of packets may be used to carry the data module, depending upon its size. It may be further seen that the packets carrying the data module need not be transmitted sequentially, but may have intervening packets in the packet stream. The same is true for multiple packets carrying a code module or directory module (not shown).
In the bottommost series of packets 38, the leftmost packet contains data representing the directory (DIR). The next packet contains data representing a code module (CM), followed by a packet containing auxiliary data (AUX) and a packet containing data representing a data module (DM). In the series of packet 38 all of a directory module (DIR), a code module (CM) and a data module (DM) in a single packet stream may be seen. The respective repetition rates of these three modules may be different, as specified by the programmer of the application, and may be varied during the execution of the application.
FIG. 4 is a block diagram of a client computer 22 as illustrated in FIG. 1. In FIG. 4, transport mechanism 30 (of FIG. 1) is coupled to an input terminal of a stream selector 202. An output terminal of stream selector 202 is coupled to respective input terminals of an auxiliary data extractor 204 and a packet data extractor 206. An output terminal of auxiliary data extractor 204 is coupled to the auxiliary data processor 50 (of FIG. 1). A bidirectional terminal of packet data extractor 206 is coupled to a corresponding terminal of a stream I/O adapter 208. A control output terminal of stream I/O adapter 208 is coupled to a corresponding control input terminal of stream selector 202. The combination of stream selector 202, auxiliary data extractor 204 and packet data extractor 206 form a data stream receiver 207 for client computer 22, illustrated by a dashed line in FIG. 4.
Stream I/O adapter 208 forms a part of a processing unit 224 in client computer 22, illustrated by a dashed line in FIG. 4. In addition to the stream I/O adapter 208, processing unit 224 includes a processor 210, read/write memory (RAM) 212 and read-only memory (ROM) 214 coupled together in a known manner via a system bus 216. Further input and output facilities are provided by an I/O port 218, coupled to the local processor 40 (of FIG. 1); user I/O adapter 220, for communicating with user 80; and modem 222, coupled to the central processing facility 60 (of FIG. 1); all also coupled to the system bus 216 in a known manner. Other adapters (not shown) may be coupled to system bus 216 to provide other capabilities to the processing unit 224.
As described above, auxiliary data extractor 204, I/O port 218 and modem 222 are not required in a client computer 20 according to the present invention. They are illustrated in FIG. 1 and FIG. 4 to show optional additional functionality.
In operation, processor 210 of processing unit 224 retrieves program instructions permanently stored in ROM 214, or temporarily stored in RAM 212, and executes the retrieved instructions to read data from ROM 212 and/or RAM 214, write data to RAM 212 and/or receive data from or supply data to outside sources via the I/O port 218, user I/O adapter 220 and/or modem 222, in a known manner. Under program control, processor 210 may also request a code and/or data module from the data stream supplied to the client computer 22 via the transport mechanism 30 (of FIG. 1). To retrieve this data, processor 210 first instructs stream I/O adapter 208 to send a selection control signal to the stream selector 202, possibly in response to user input from user I/O adapter 220. Then processor 210 issues a request for a specific code or data module to the stream I/O adapter 208. Stream I/O adapter 208 relays this request to the packet data extractor 204.
Transport mechanism 30 (of FIG. 1) supplies all of the plurality of packet: streams (32-38 of) it carries to the stream selector 202, which passes only the selected packet stream. Auxiliary data extractor 204 monitors the selected packet stream, extracts the auxiliary data packets from it and supplies them directly to the auxiliary data processor 50 (of FIG. 1). Packet data extractor 206 similarly monitors the selected packet stream, extracts the directory, code and/or data module packets requested by the stream I/O adapter 208 and supplies them to the stream I/O adapter 208. The data in the packets returned to the stream I/O adapter 208 is supplied to the RAM 212. When the entire module has been retrieved from the packet stream (which may require several packets, as described above), processor 210 is notified of its receipt by the stream I/O adapter 208. Processor 210 may then continue execution of its program.
The data stream in a distributed computing system illustrated in FIG. 1 is similar to a mass storage system in prior art systems. An application program executing on the processor 210 makes a request for a module listed in the directory in the same manner that such a program would make a request for a file containing a code or data module previously stored on a mass storage device in a prior art system. The data stream receiver 207 is similar to a mass storage device, and stream I/O 208 acts in a similar manner to a mass storage adapter on a prior art system by locating the desired data, transferring it to a predetermined location (I/O buffer) in the system memory and informing the processor of the completion of the retrieval. However, the stream I/O adapter 208 can only retrieve code and data from the data stream; data cannot be written to the data stream.
As described above, the distributed computing application may be divided into more than one code module, each containing executable code for a different portion of the distributed computing application. When a particular code module is desired, processor 210 requests that code module from stream I/O adapter 208. When execution of that module has completed, processor 210 requests the next module from stream I/O 208. Because code and data modules are repetitively carried on the data stream, a module may be deleted from RAM 212 when it is not currently needed without the necessity of temporarily being stored, because if it is required later, it may again be retrieved from the data stream when needed. However, if RAM 212 has sufficient capacity, processor 210 may request stream I/O adapter to simultaneously load several code modules into RAM 212. If this car, be done, then processor 210 may switch between code modules without waiting for stream I/O adapter 208 to extract them from the data stream.
As described above, other I/O adapters may be coupled to the system bus 216 in a known manner. For example, in an interactive TV system, a graphics adapter may be coupled to system bus 216. The graphics adapter generates signals representing graphical images, in a known manner, in response to instructions from the processor 210. Further, these signals may be combined with the standard video signal produced by the video decoder (described above) in the auxiliary data processor 50 of an interactive TV system. When the graphical image representative signal and the standard video signal are combined, the resulting signal represents an image in which the image generated by the graphics adapter is superimposed on the image represented by the broadcast video signal. It is also possible to selectively combine these two image representative signals under the control of the processor 210.
An interactive TV system, may also include a sound adapter coupled to the system bus 216. The sound adapter generates a signal representing a computer generated sound (such as music, synthesized voice or other sound), in a known manner, in response to instructions from the processor 210. Further, these signals may be combined with the standard audio signal produced by the audio decoder (described above) in the auxiliary data processor 50 of an interactive TV system. When the sound representative signal and the standard audio signal are combined, the resulting signal represents the combination of the sound generated by the sound adapter and the broadcast audio signal. It is also possible to selectively combine these two sound representative signals under the control of the processor 210.
The timing of the generation and display of the graphical image and sound representative signals, may be controlled by receipt of the time code data from the data stream. This enables an executable code module to synchronize the display of processor generated image and presentation of processor generated sound to the broadcast video and audio. It is further possible to synchronize the operation of the interactive TV application by the insertion of specialized packets into the data stream which cause an interrupt of the code currently executing in processor 210. Stream I/O 208 monitors the data stream for such specialized packets, and generates an interrupt, in a known manner, for the processor 210. Processor 210 responds to that interrupt, also in known manner, by executing an interrupt service routine (ISR). This ISR may be used for synchronization of the interactive TV application, or other purposes.
A client computer 22 in a distributed computing system as illustrated in FIG. 1 does not need a mass storage device, nor a large amount of RAM 212. Such a system decreases the cost of a client computer, and increases the functionality of the lower cost client computers. In addition, such a client computer has the option of participating in a distributed computing function, may join in the distributed computing function at any time (or may drop out and return later), and may participate at its own pace.

Claims (55)

What is claimed is:
1. A distributed computer system comprising:
a source of a data stream providing a series of time division multiplexed packets, ones of which contain auxiliary data that represent a video program, and others of which represent a distributed computing application associated with said video program, and wherein said distributed computing application is repetitively transmitted independent of receiving client computer apparatus during times that said video program is transmitted;
a client computer, which includes a packet selector connected to said source for selecting and directing packets containing said auxiliary data representing said video program to a video signal processor and selecting and directing packets containing said associated distributed computing application to a further processor, and
said further processor including means to assemble said distributed computing application and execute said distributed computing application to form an interactive video program in which execution of said distributed computing application alters said video program.
2. The distributed computer system of claim 1 wherein said further processor includes a graphics adapter for creating graphical images and interactively combining said graphical images with said video program.
3. The distributed computer system of claim 1 wherein said video program is a television program and said further processor includes a graphics adapter for creating graphical images and interactively combining said graphical images with said television program.
4. The distributed computer system of claim 1 wherein said further processor includes a sound adapter for creating synthesized sound and interactively combining said synthesized sound with said video program.
5. The distributed computer system of claim 1 wherein said further processor includes memory for storing program controls and responsive thereto requests of said packet selector a code and/or data module from the data stream.
6. A distributed computer system comprising:
a source of a time division multiplexed packet signal including a plurality of distributed computing applications, each distributed computing application being repetitively transmitted independent of receiving client computer apparatus, and each of said distributed computing applications being in a form of a series of packets;
a first one of packets of a respective series containing data representing an executable code module and including identification information indicating that the first one of packets of said series contains data representing said executable code module;
a second one of packets of the series contains data representing a data module and includes identification information indicating that said second one of packets contains data representing the data module; and
a third one of packets of the series contains auxiliary data and includes identification information indicating that the third one of packets contains auxiliary data;
a client computer including a data receiver for selecting packets of one of the plurality of distributed computing applications, and extracting the corresponding distributed computing application representative data included in the selected packets and applying it to computer program controlled apparatus for executing the extracted distributed computing application, said data receiver extracting auxiliary data from auxiliary packets in the data stream and supplying it to an auxiliary data processor.
7. A distributed computer system comprising:
a data stream source producing a data stream including a series of packets representing a plurality of time division multiplexed signals, one of said signals including data representing a distributed computing application, which distributed computing application is repetitively transmitted independent of receiving client computer apparatus, and at least one of the packets of the signal representing the distributed computing application includes a directory module containing information inter-relating packets associated with said distributed computing application;
a client computer, receiving the data stream, extracting the distributed computing application representative data from the data stream, and executing the extracted distributed computing application; and wherein
the client computer extracts said directory module from the data stream and using data contained in the directory module extracts packets associated with said distributed computing application and builds said distributed computing application and executes said distributed computing application.
8. The computer system of claim 7, wherein:
a first one of the series of packets contains data representing an executable code module and includes identification information indicating that the first one of the series of packets contains data representing an executable code module;
a second one of the series of packets contains data representing a data module and includes identification information indicating that the second one of the series of packets contains data representing a data module;
a third one of the series of packets contains data representing said directory module inter-relating respective transmitted modules associated with a single distributed computing application, and includes identification information indicating that the third one of the series of packets contains data representing said directory module; and
a fourth one of the series of packets contains auxiliary data and includes identification information indicating that the fourth one of the series of packets contains auxiliary data.
9. In a distributed computer system, a client computer, comprising:
an input terminal for receiving a packet data stream including packets of video signal time multiplexed with packets of data representing a distributed computing application which distributed computing application is repetitively transmitted independently of said client computer and at least one of the packets representing the distributed computing application includes a directory containing information inter-relating ones of the packets containing said distributed computing application;
a data stream receiver, coupled to said input terminal, for receiving the data stream, providing separate data streams of said video signal and said distributed computing application, extracting said directory packet and responsive to the directory, extracting packets containing said distributed computing application representative data; and
a processing unit, coupled to the data stream receiver, for assembling said distributed computing application and executing the distributed computing application comprising:
a system bus;
read/write memory, coupled to the system bus;
a data stream input/output adapter, coupled between the data stream receiver and the system bus, for receiving the extracted distributed computing application representative data from the data stream receiver, and storing it in the read/write memory, and having a control output terminal coupled to the selection control input terminal of the data stream selector, for producing the selection control signal; and
a processor, coupled to the system bus, for controlling the data stream input/output device to generate a selection control signal selecting a specified one of the plurality of data streams, and for assembling and executing the distributed computing application stored in the read/write memory.
10. A method to facilitate placing an order for an item, the method comprising:
at a source of a data stream, providing a series of time division multiplexed packets, ones of which contain auxiliary data that represent a video program, and others of which represent a distributed computing application associated with said video program, and wherein said distributed computing application is repetitively transmitted independent of receiving client computer apparatus during times that said video program is transmitted;
receiving an order request at a client system, the client system comprising a packet selector connected to said source for selecting and directing packets containing said auxiliary data representing said video program to a video signal processor and selecting and directing packets containing said associated distributed computing application to a further processor, said further processor including means to assemble said distributed computing application and execute said distributed computing application to form an interactive video program with an executable code, in which execution of said distributed computing application alters said video program, the executable code causing, at a client system, display of the interactive information associated with the video program while the video program is being shown at the client system, the interactive information associated with the video program describing an item to said video program viewer, the receiving of the order request at the client system is via the interactive information displayed at the client system;
automatically determining an item identity for an item to which the order request pertains; and
causing an order to be placed, the order including the item identity.
11. The method of claim 10 wherein the order request is received at the client system through detection of an order action by the user utilizing the client system.
12. The method of claim 11 wherein the order action is performed during the showing and/or describing of the item via the client system.
13. The method of 11 wherein the order action includes input of the item identity into the client system.
14. The method of claim 11 including receiving information, at the client system from the server system, related to the item and wherein the automatic determination of the item identity includes relating the order action to the received information related to the item.
15. The method of claim 14 wherein the relating includes the detecting of the order action during an offer of the item as specified by any one of a group including a code and a command included within the received information related to the item.
16. The method of claim 15 wherein the code is received within data transmitted from a server system to the client system.
17. The method of claim 11 including prompting the user to perform the order action utilizing the client system.
18. The method of claim 17 wherein the prompting includes communicating any one of group of prompts including a visual prompt and an audio prompt.
19. The method of claim 18 wherein the prompt includes any of a group including instructions, options and a menu.
20. The method of claim 17 wherein the prompting includes generating an audio prompt via an audio reproduction unit of the client system.
21. The method of claim 20 wherein the prompting includes generating an audio prompt via an audio reproduction unit of the client system.
22. The method of claim 11 wherein the detection of the order action includes detecting an interaction by the user with a control device of the client system.
23. The method of claim 22 wherein the interaction comprises a single action operation performed by the user.
24. The method of claim 23 wherein the single action operation comprises a single selection of a button of a remote control device.
25. The method of claim 10 wherein the item identity is received within data transmitted from a server system to the client system.
26. The method of claim 25 wherein the data includes multiplexed first and second streams of packets, the first stream of packets including display information to generate an image on a display of the client system, and the second stream of packets including an computing application.
27. The method of claim 26 wherein the second stream of packets includes code modules that comprise the computing application and data modules including data to be processed by the computing application.
28. The method of claim 10 wherein the retrieved personal information is retrieved from a storage device accessible by the client system and wherein the order is caused to be placed by the client system by a communication with the server system.
29. The method of claim 10 including receiving a client application program at the client system from the server system, the client application program to receive the order request and to cause the order to be placed.
30. The method of claim 29 wherein the client application program is received as part of data including content for display by the client system.
31. The method of claim 10 including receiving, at the client system from a server system, an order confirmation.
32. The method of claim 10, wherein the client system is associated with a television receiver.
33. The method of claim 10, wherein the client system is associated with a television set-top box.
34. A client system including:
an input terminal for receiving a packet data stream including packets of video signal time multiplexed with packets of data representing a distributed computing application which distributed computing application is repetitively transmitted independently of said client computer and at least one of the packets representing the distributed computing application includes a directory containing information inter-relating ones of the packets containing said distributed computing application;
a receiver, coupled to said input terminal, to receive the data stream including information related to an item, providing separate data streams of said video signal and said distributed computing application, extracting said directory packet and responsive to the directory, extracting packets containing said distributed computing application representative data; and
a processing unit, coupled to the data stream receiver, for assembling said distributed computing application and executing the distributed computing application to form an interactive video program with an executable code in which execution of said distributed computing application alters said interactive video program, the executable code causing, at the client system, display of interactive information associated with the video program while the interactive video program is being shown at the client system, the interactive information associated with the video program describing an item, the processing unit comprising:
a system bus;
read/write memory, coupled to the system bus;
a data stream input/output adapter, coupled between the data stream receiver and the system bus, for receiving the extracted distributed computing application representative data from the data stream receiver, and storing it in the read/write memory, and having a control output terminal coupled to the selection control input terminal of the data stream selector, for producing the selection control signal; and
a processor, coupled to the system bus, for controlling the data stream input/output device to generate a selection control signal selecting a specified one of the plurality of data streams, and for assembling and executing the distributed computing application stored in the read/write memory,
the processing unit to:
receive an order request at the client system via the interactive information displayed at the client system;
automatically determine an item identity for the item utilizing the information related to the item; and
cause an order to be placed, the order including the item identity.
35. The system of claim 34 wherein the processing unit is to receive the order request through detection of an order action by the user.
36. The system of claim 35 wherein processing unit is to detect the order action during the showing and/or describing of the item by the client system utilizing the information related to the item.
37. The system of claim 35 wherein the processing unit is to receive input of the item identity as part of the order action.
38. The system of claim 35 wherein the processing unit is to relate the order action to the information related to the item.
39. The system of claim 35 wherein the processing unit to detect the order action during an offer of the item as specified any one of a group including by a code and a command included within the information related to the item.
40. The system of claim 35 wherein the processing unit and/or the receiver is to prompt the user to perform the order action utilizing the client system.
41. The system of claim 40 wherein the processing unit and/or the receiver is to communicate a prompt via the client system.
42. The system of claim 41 wherein the prompt includes any of a group including an indicia, instructions and a menu.
43. The system of claim 35 wherein the processing unit is to detect the order action by detecting an interaction by the user with a control device of the client system.
44. The system of claim 43 wherein the interaction comprises a single action operation performed by the user.
45. The system of claim 44 wherein the single action operation comprises a single selection of a button of a remote control device.
46. The system of claim 34 wherein the receiver is to receive the data as multiplexed first and second streams of packets, the first stream of packets including display information to generate an image on a display of the client system, and the second stream of packets including information to be processed by an computing application, the receiver further including a first extractor to extract the first stream of packets from the data and a second extractor to extract the second stream of packets from the data.
47. The system of claim 46 wherein the second stream of packets includes at least a portion of the computing application.
48. The system of claim 34 wherein the processing unit and/or the receiver is to generate an audio prompt via an audio reproduction unit of the client system.
49. The system of claim 48 wherein the audio prompt comprises any one of a group including instructions, options and a menu.
50. The system of claim 34 including a storage medium from which the retrieved personal information is retrieved and wherein the order is placed by the client system utilizing a communication with a server system.
51. The system of claim 34 wherein the receiver to receive a client application program from a server system, the client application program being executable by the processing unit to receive the order request and to place the order.
52. The system of claim 51 wherein the receiver is to receive the client application program as part of the data.
53. The system of claim 34 wherein the receiver is to receive an order confirmation.
54. An interactive television system, the system including:
an input terminal for receiving a packet data stream including packets of video signal time multiplexed with packets of data representing a distributed computing application which distributed computing application is repetitively transmitted independently of said client computer and at least one of the packets representing the distributed computing application includes a directory containing information inter-relating ones of the packets containing said distributed computing application;
a receiver, coupled to said input terminal, to receive the data stream including information related to an item, providing separate data streams of said video signal and said distributed computing application, extracting said directory packet and responsive to the directory, extracting packets containing said distributed computing application representative data; and
a processing unit, coupled to the data stream receiver, for assembling said distributed computing application and executing the distributed computing application to form an interactive video program with an executable code in which execution of said distributed computing application alters said video program, the executable code causing, at a client system, display of interactive information associated with the video program while the video program is being shown at the client system, the interactive information associated with the video program describing an item to said video program viewer, the processing unit comprising:
a system bus;
read/write memory, coupled to the system bus;
a data stream input/output adapter, coupled between the data stream receiver and the system bus, for receiving the extracted distributed computing application representative data from the data stream receiver, and storing it in the read/write memory, and having a control output terminal coupled to the selection control input terminal of the data stream selector, for producing the selection control signal; and
a processor, coupled to the system bus, for controlling the data stream input/output device to generate a selection control signal selecting a specified one of the plurality of data streams, and for assembling and executing the distributed computing application stored in the read/write memory,
the processing unit to:
receive an order request at the client system via the interactive information displayed at the client system;
automatically determine an item identity for the item utilizing the information related to the item; and
cause an order to be placed, the order including the item identity.
55. The interactive television system of claim 54, wherein the receiver and the processing unit reside in a television set-top box.
US09/903,457 1994-04-28 2001-07-10 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 Expired - Lifetime USRE44685E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/903,457 USRE44685E1 (en) 1994-04-28 2001-07-10 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

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/233,908 US5819034A (en) 1994-04-28 1994-04-28 Apparatus for transmitting and receiving executable applications as for a multimedia system
US67252300A 2000-09-27 2000-09-27
US09/903,457 USRE44685E1 (en) 1994-04-28 2001-07-10 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

Related Parent Applications (2)

Application Number Title Priority Date Filing Date
US08/233,908 Reissue US5819034A (en) 1994-04-28 1994-04-28 Apparatus for transmitting and receiving executable applications as for a multimedia system
US67252300A Division 1994-04-28 2000-09-27

Publications (2)

Publication Number Publication Date
US20020038257A1 US20020038257A1 (en) 2002-03-28
USRE44685E1 true USRE44685E1 (en) 2013-12-31

Family

ID=24698910

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/903,457 Expired - Lifetime USRE44685E1 (en) 1994-04-28 2001-07-10 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

Country Status (1)

Country Link
US (1) USRE44685E1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140071231A1 (en) * 2012-09-11 2014-03-13 The Directv Group, Inc. System and method for distributing high-quality 3d video in a 2d format

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8302127B2 (en) * 2000-09-25 2012-10-30 Thomson Licensing System and method for personalized TV
CA2328795A1 (en) 2000-12-19 2002-06-19 Advanced Numerical Methods Ltd. Applications and performance enhancements for detail-in-context viewing technology
US8416266B2 (en) 2001-05-03 2013-04-09 Noregin Assetts N.V., L.L.C. Interacting with detail-in-context presentations
CA2345803A1 (en) 2001-05-03 2002-11-03 Idelix Software Inc. User interface elements for pliable display technology implementations
US9760235B2 (en) * 2001-06-12 2017-09-12 Callahan Cellular L.L.C. Lens-defined adjustment of displays
WO2002101534A1 (en) * 2001-06-12 2002-12-19 Idelix Software Inc. Graphical user interface with zoom for detail-in-context presentations
US7084886B2 (en) 2002-07-16 2006-08-01 Idelix Software Inc. Using detail-in-context lenses for accurate digital image cropping and measurement
CA2361341A1 (en) * 2001-11-07 2003-05-07 Idelix Software Inc. Use of detail-in-context presentation on stereoscopically paired images
US6892167B2 (en) * 2001-11-28 2005-05-10 Sypris Data Systems, Inc. Real-time data acquisition and storage network
CA2370752A1 (en) * 2002-02-05 2003-08-05 Idelix Software Inc. Fast rendering of pyramid lens distorted raster images
AU2003216494A1 (en) * 2002-03-01 2003-09-16 Gemstar Development Corporation System and method for preprogrammed purchasing of television offered products
US8392952B2 (en) * 2002-05-03 2013-03-05 Time Warner Cable Enterprises Llc Programming content processing and management system and method
US8120624B2 (en) * 2002-07-16 2012-02-21 Noregin Assets N.V. L.L.C. Detail-in-context lenses for digital image cropping, measurement and online maps
CA2393887A1 (en) 2002-07-17 2004-01-17 Idelix Software Inc. Enhancements to user interface for detail-in-context data presentation
CA2406047A1 (en) * 2002-09-30 2004-03-30 Ali Solehdin A graphical user interface for digital media and network portals using detail-in-context lenses
US20070097109A1 (en) * 2005-10-18 2007-05-03 Idelix Software Inc. Method and system for generating detail-in-context presentations in client/server systems
CA2449888A1 (en) 2003-11-17 2005-05-17 Idelix Software Inc. Navigating large images using detail-in-context fisheye rendering techniques
CA2407383A1 (en) * 2002-10-10 2004-04-10 Idelix Software Inc. Editing multiple layers of a presentation using detail-in-context lenses
CA2411898A1 (en) 2002-11-15 2004-05-15 Idelix Software Inc. A method and system for controlling access to detail-in-context presentations
US7486302B2 (en) * 2004-04-14 2009-02-03 Noregin Assets N.V., L.L.C. Fisheye lens graphical user interfaces
US8106927B2 (en) 2004-05-28 2012-01-31 Noregin Assets N.V., L.L.C. Graphical user interfaces and occlusion prevention for fisheye lenses with line segment foci
US9317945B2 (en) * 2004-06-23 2016-04-19 Callahan Cellular L.L.C. Detail-in-context lenses for navigation
US7714859B2 (en) 2004-09-03 2010-05-11 Shoemaker Garth B D Occlusion reduction and magnification for multidimensional data presentations
JP2006094415A (en) * 2004-09-27 2006-04-06 Toshiba Corp Video image apparatus and video image streaming method
US7995078B2 (en) 2004-09-29 2011-08-09 Noregin Assets, N.V., L.L.C. Compound lenses for multi-source data presentation
US7580036B2 (en) 2005-04-13 2009-08-25 Catherine Montagnese Detail-in-context terrain displacement algorithm with optimizations
US20060293969A1 (en) * 2005-06-28 2006-12-28 Sean Barger Method and System for Pre-Loading Media Players
US8020084B2 (en) * 2005-07-01 2011-09-13 Microsoft Corporation Synchronization aspects of interactive multimedia presentation management
US8656268B2 (en) * 2005-07-01 2014-02-18 Microsoft Corporation Queueing events in an interactive media environment
US20070006062A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation Synchronization aspects of interactive multimedia presentation management
US20070006078A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation Declaratively responding to state changes in an interactive multimedia environment
US8799757B2 (en) * 2005-07-01 2014-08-05 Microsoft Corporation Synchronization aspects of interactive multimedia presentation management
US20070006065A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation Conditional event timing for interactive multimedia presentations
US20070006238A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation Managing application states in an interactive media environment
US20070006079A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation State-based timing for interactive multimedia presentations
US8305398B2 (en) * 2005-07-01 2012-11-06 Microsoft Corporation Rendering and compositing multiple applications in an interactive media environment
US7941522B2 (en) * 2005-07-01 2011-05-10 Microsoft Corporation Application security in an interactive media environment
CN1903143A (en) * 2005-07-29 2007-01-31 广东冠昊生物科技有限公司 Biological type artificial blood vessel and method for preparing the same
CN100482178C (en) * 2005-08-04 2009-04-29 广东冠昊生物科技有限公司 Blood vessel tumor clip with biological film
US8031206B2 (en) 2005-10-12 2011-10-04 Noregin Assets N.V., L.L.C. Method and system for generating pyramid fisheye lens detail-in-context presentations
US7983473B2 (en) 2006-04-11 2011-07-19 Noregin Assets, N.V., L.L.C. Transparency adjustment of a presentation
US9026938B2 (en) * 2007-07-26 2015-05-05 Noregin Assets N.V., L.L.C. Dynamic detail-in-context user interface for application access and content access on electronic displays
CN101931541A (en) * 2009-06-25 2010-12-29 李冰 Method for realizing instantaneous rapid large-scale low-cost Internet publishing
KR102263369B1 (en) * 2015-01-13 2021-06-11 한국전자통신연구원 System and method for multi-computer control
CN107391359B (en) * 2016-05-17 2020-11-27 腾讯科技(深圳)有限公司 Service testing method and device
US11546612B2 (en) * 2021-06-02 2023-01-03 Western Digital Technologies, Inc. Data storage device and method for application-defined data retrieval in surveillance systems

Citations (180)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US4163255A (en) 1976-07-19 1979-07-31 Teleglobe Pay-Tv System, Inc. Billing method and system for a subscriber of a pay television system
US4247106A (en) 1978-04-12 1981-01-27 Jerrold Electronics Corporation System arrangement for distribution and use of video games
US4264925A (en) 1979-08-13 1981-04-28 Michael J. Freeman Interactive cable television system
US4277838A (en) 1978-05-08 1981-07-07 British Broadcasting Corporation Data receiving apparatus
US4290142A (en) 1978-02-22 1981-09-15 Heinrich-Hertz-Institut Fur Nachrichtentechnik Berlin Gmbh Interactive cable television system
US4323922A (en) 1979-12-17 1982-04-06 Oak Industries Inc. Television coding system with channel level identification
EP0145063A2 (en) 1983-11-18 1985-06-19 Alcatel N.V. Cable television network
US4528589A (en) 1977-02-14 1985-07-09 Telease, Inc. Method and system for subscription television billing and access
US4547851A (en) 1983-03-14 1985-10-15 Kurland Lawrence G Integrated interactive restaurant communication method for food and entertainment processing
JPS6172486U (en) 1984-10-19 1986-05-16
USRE32187E (en) 1976-09-22 1986-06-17 Etablissement Public De Diffusion Dit "Telediffusion De France" System for digitally transmitting and displaying texts on television screen
US4595951A (en) 1983-11-29 1986-06-17 Rca Corporation Teletext decoder using a common memory
US4595952A (en) 1983-11-29 1986-06-17 Rca Corporation Teletext decoder having a register array for operating on pixel words
US4600921A (en) 1983-10-19 1986-07-15 Zenith Radio Corporation Full-field teletext system with dynamic addressability
US4602279A (en) 1984-03-21 1986-07-22 Actv, Inc. Method for providing targeted profile interactive CATV displays
JPS6149574B2 (en) 1979-12-25 1986-10-30 Matsushita Electric Ind Co Ltd
US4623920A (en) 1982-04-15 1986-11-18 Le Groupe Videotron Ltee Cable network data transmission system
US4636791A (en) 1982-07-28 1987-01-13 Motorola, Inc. Data signalling system
US4636858A (en) 1984-10-30 1987-01-13 The United States Of America As Represented By The Secretary Of The Air Force Extracting digital data from a bus and multiplexing it with a video signal
US4652944A (en) 1984-06-25 1987-03-24 Kirsch Technologies, Inc. Computer memory back-up
US4680629A (en) 1984-02-28 1987-07-14 Mitsubishi Denki Kabushiki Kaisha Display unit
US4694490A (en) 1981-11-03 1987-09-15 Harvey John C Signal processing apparatus and methods
US4712131A (en) 1985-07-19 1987-12-08 Kabushiki Kaisha Toshiba Sync apparatus for image multiplex transmission system
JPS62286489A (en) 1986-06-06 1987-12-12 オムロン株式会社 Tv game system
US4724521A (en) 1986-01-14 1988-02-09 Veri-Fone, Inc. Method for operating a local terminal to execute a downloaded application program
US4734858A (en) * 1983-12-05 1988-03-29 Portel Services Network, Inc. Data terminal and system for placing orders
US4739310A (en) 1984-10-30 1988-04-19 Kabushiki Kaisha Toshiba Keyboard control system
US4740912A (en) 1982-08-02 1988-04-26 Whitaker Ranald O Quinews-electronic replacement for the newspaper
US4744080A (en) 1985-03-12 1988-05-10 U.S. Philips Corporation Apparatus for receiving digital sound/data information
US4757498A (en) 1985-03-12 1988-07-12 U.S. Philips Corporation Method and apparatus for handling data in television signals
JPS6328143Y2 (en) 1981-10-23 1988-07-29
US4766599A (en) 1985-08-28 1988-08-23 Nec Corporation Communication system with variably repeated transmission of data blocks
US4787085A (en) 1986-05-30 1988-11-22 Nippon Telegraph And Telephone Corporation Digital signal transmitting system
US4789863A (en) 1985-10-02 1988-12-06 Bush Thomas A Pay per view entertainment system
US4789895A (en) 1987-04-30 1988-12-06 Gte Government Systems Corporation System for synchronizing digital bit stream for telecommunication system
EP0306208A2 (en) 1987-09-02 1989-03-08 Ing. C. Olivetti & C., S.p.A. Method and apparatus for the transmission and/or reception of computer programs and/or data by way of teletext
US4851994A (en) 1984-08-03 1989-07-25 Sharp Kabushiki Kaisha Data I/O terminal equipment having mode setting functions for downloading various specified application programs from a host computer
US4866515A (en) 1987-01-30 1989-09-12 Sony Corporation Passenger service and entertainment system for supplying frequency-multiplexed video, audio, and television game software signals to passenger seat terminals
US4894789A (en) 1988-02-22 1990-01-16 Yee Keen Y TV data capture device
US4908707A (en) 1987-07-20 1990-03-13 U.S. Philips Corp. Video cassette recorder programming via teletext transmissions
JPH02105195A (en) 1988-10-14 1990-04-17 Konami Kogyo Kk Data broadcasting computer
US4924303A (en) 1988-09-06 1990-05-08 Kenneth Dunlop Method and apparatus for providing interactive retrieval of TV still frame images and audio segments
US4926255A (en) 1986-03-10 1990-05-15 Kohorn H Von System for evaluation of response to broadcast transmissions
US4935870A (en) 1986-12-15 1990-06-19 Keycom Electronic Publishing Apparatus for downloading macro programs and executing a downloaded macro program responding to activation of a single key
US4937863A (en) 1988-03-07 1990-06-26 Digital Equipment Corporation Software licensing management system
US4937784A (en) 1986-06-02 1990-06-26 Hitachi, Ltd. Distributed interactive processing method in complex system including plural work stations and plural host computers and apparatus using the same
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4974252A (en) 1987-06-03 1990-11-27 Club Theatre Network, Inc. Interactive commercial/entertainment network
EP0399300A2 (en) 1989-05-20 1990-11-28 Hitachi, Ltd. Semiconductor device and electronic apparatus using semiconductor device
US4975771A (en) 1989-02-10 1990-12-04 Kassatly Salim A Method and apparatus for TV broadcasting
US4982440A (en) 1988-04-21 1991-01-01 Videotron Ltee CATV network with addressable filters receiving MSK upstream signals
US4984155A (en) 1988-08-29 1991-01-08 Square D Company Order entry system having catalog assistance
US4991011A (en) 1988-12-23 1991-02-05 Scientific-Atlanta, Inc. Interactive television terminal with programmable background audio or video
US5003591A (en) 1989-05-25 1991-03-26 General Instrument Corporation Functionally modifiable cable television converter system
US5005171A (en) 1990-01-09 1991-04-02 At&T Bell Laboratories Telecommunication transmission format suited for network-independent timing environments
US5010499A (en) 1988-02-22 1991-04-23 Yee Keen Y Digital data capture for use with TV set or monitor
US5030948A (en) 1988-09-19 1991-07-09 Rush Charles T Multiple characteristic sensitive addressing schema for a multiple receiver data processing network
US5036314A (en) 1988-01-12 1991-07-30 Sarin S.S. Ausiliari E Ricerca Informatica Method and system for the integrated supply of telematic services and graphic information to user terminals, particularly for advertising purposes
US5075773A (en) 1987-12-07 1991-12-24 British Broadcasting Corporation Data transmission in active picture period
US5077607A (en) 1988-12-23 1991-12-31 Scientific-Atlanta, Inc. Cable television transaction terminal
US5093718A (en) 1990-09-28 1992-03-03 Inteletext Systems, Inc. Interactive home information system
WO1992006438A1 (en) 1990-10-01 1992-04-16 Bush Thomas A Transactional processing system
US5111296A (en) 1990-04-19 1992-05-05 Thomson Consumer Electronics, Inc. Data transfer from a television receiver having picture-in-picture capability to an external computer
US5111292A (en) 1991-02-27 1992-05-05 General Electric Company Priority selection apparatus as for a video signal processor
GB2249416A (en) 1990-12-31 1992-05-06 Ruego Dev Co Stock control system
US5113259A (en) 1990-04-19 1992-05-12 Thomson Consumer Electronics, Inc. Data transfer from an external computer to a television receiver having picture-in-picture capability
US5115309A (en) 1990-09-10 1992-05-19 At&T Bell Laboratories Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders
US5117354A (en) 1988-05-24 1992-05-26 Carnes Company, Inc. Automated system for pricing and ordering custom manufactured parts
US5121476A (en) 1988-02-22 1992-06-09 Yee Keen Y TV data capture device
US5124909A (en) 1988-10-31 1992-06-23 Hewlett-Packard Company Software program for providing cooperative processing between personal computers and a host computer
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
US5132992A (en) 1991-01-07 1992-07-21 Paul Yurt Audio and video transmission and receiving system
US5138440A (en) 1990-10-29 1992-08-11 General Instrument Corporation Method and apparatus for communicating a plurality of asynchronous signals over a digital communication path
US5144425A (en) 1991-08-26 1992-09-01 General Electric Company Apparatus for hierarchically dividing video signals
US5148275A (en) 1990-11-15 1992-09-15 Thomson Consumer Electronics, Inc. Second video program
US5151989A (en) 1987-02-13 1992-09-29 International Business Machines Corporation Directory cache management in a distributed data processing system
JPH04127688U (en) 1991-05-15 1992-11-20 日本電気株式会社 Optical communication module
US5168356A (en) 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
US5173589A (en) 1989-11-03 1992-12-22 Laboratoire Europeen De Recherches Electroniques Avancees, Societe En Nom Collectif Process for instantaneous confirmation of actions in relation to television programs and device for use of the process
US5181107A (en) 1989-10-19 1993-01-19 Interactive Television Systems, Inc. Telephone access information service distribution system
US5191573A (en) 1988-06-13 1993-03-02 Hair Arthur R Method for transmitting a desired digital video or audio signal
US5191410A (en) 1987-08-04 1993-03-02 Telaction Corporation Interactive multimedia presentation and communications system
US5195092A (en) 1987-08-04 1993-03-16 Telaction Corporation Interactive multimedia presentation & communication system
US5204947A (en) 1990-10-31 1993-04-20 International Business Machines Corporation Application independent (open) hypermedia enablement services
US5204897A (en) 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US5208748A (en) 1985-11-18 1993-05-04 Action Technologies, Inc. Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants
WO1993010605A1 (en) 1991-11-20 1993-05-27 Zing Systems, L.P. Transaction based interactive television system
US5220420A (en) 1990-09-28 1993-06-15 Inteletext Systems, Inc. Interactive home information system for distributing compressed television programming
US5221968A (en) 1990-06-27 1993-06-22 U.S. Philips Corp. Ideographic teletext transmissions
US5235415A (en) 1989-12-22 1993-08-10 Centre National D'etudes Des Telecommunications Device for the intelligible consultation of data relating to the fees programs of a subscription television and/or radio service
US5251301A (en) 1988-05-27 1993-10-05 Pc Connection, Inc. Computer remote control through a video signal
US5260999A (en) 1991-06-28 1993-11-09 Digital Equipment Corporation Filters in license management system
JPH0581035B2 (en) 1986-01-23 1993-11-11 Canon Kk
JPH0581034B2 (en) 1986-01-17 1993-11-11 Canon Kk
WO1993022876A1 (en) 1992-04-28 1993-11-11 Thomson Consumer Electronics, Inc. Auxiliary video information system including extended data services
US5262860A (en) 1992-04-23 1993-11-16 International Business Machines Corporation Method and system communication establishment utilizing captured and processed visually perceptible data within a broadcast video signal
EP0570683A2 (en) 1992-04-17 1993-11-24 International Business Machines Corporation Network server for local and remote resources
EP0582196A1 (en) 1992-08-05 1994-02-09 Sedepro Anchoring of a tyre carcass
US5287507A (en) 1992-03-27 1994-02-15 Sun Microsystems, Inc. Method and apparatus for portable object handles that use local caches
EP0583186A1 (en) 1992-07-30 1994-02-16 France Telecom Control unit for stabilising the ouput power of laser diodes
US5299197A (en) 1992-02-11 1994-03-29 Roger Schlafly Communications packet server protocol
US5303393A (en) 1990-11-06 1994-04-12 Radio Satellite Corporation Integrated radio satellite response system and method
US5343238A (en) 1991-05-23 1994-08-30 Hitachi, Ltd. Wide-screen television receiver with aspect ratio conversion function and method of displaying a range to be magnified and displayed
US5347632A (en) 1988-07-15 1994-09-13 Prodigy Services Company Reception system for an interactive computer network and method of operation
US5355170A (en) 1989-05-03 1994-10-11 Telefunken Fernseh Und. Rundfunk Gmbh Method for transmitting periodically repeated teletext data in a television receiver
US5361091A (en) 1990-09-28 1994-11-01 Inteletext Systems, Inc. Interactive home information system for distributing video picture information to television viewers over a fiber optic telephone system
JPH0689252B2 (en) 1986-03-31 1994-11-09 日本合成ゴム株式会社 Polyamide resin composition
JPH0690409B2 (en) 1985-10-17 1994-11-14 富士写真フイルム株式会社 Radiation image information reader
US5410343A (en) 1991-09-27 1995-04-25 Bell Atlantic Network Services, Inc. Video-on-demand services using public switched telephone network
US5418559A (en) 1992-10-23 1995-05-23 At&T Corp. Multi-channel television converter for conventional and interactive signals
GB2280977B (en) 1991-04-25 1995-07-05 Videotron Groupe Ltee A remote control system for at least selecting television channels
US5440632A (en) 1992-12-02 1995-08-08 Scientific-Atlanta, Inc. Reprogrammable subscriber terminal
US5440744A (en) 1990-08-14 1995-08-08 Digital Equipment Corporation Methods and apparatus for implementing server functions in a distributed heterogeneous environment
EP0680185A2 (en) 1994-04-28 1995-11-02 Thomson Consumer Electronics, Inc. A distributed computer system
US5465387A (en) * 1993-10-08 1995-11-07 At&T Corp. Adaptive fraud monitoring and control
WO1995030961A1 (en) 1994-05-06 1995-11-16 Mary Thomasma Tackbary Method and apparatus for communicating with a card distribution center for selecting, ordering and sending social expression cards
US5469431A (en) 1993-07-12 1995-11-21 Philips Electronics North America Corp. Method of and apparatus for channel mapping with relative service identification
US5469206A (en) 1992-05-27 1995-11-21 Philips Electronics North America Corporation System and method for automatically correlating user preferences with electronic shopping information
US5485221A (en) 1993-06-07 1996-01-16 Scientific-Atlanta, Inc. Subscription television system and terminal for enabling simultaneous display of multiple services
US5485197A (en) 1990-09-28 1996-01-16 Ictv, Inc. Carousel display
US5497185A (en) 1991-04-25 1996-03-05 Le Groupe Videotron Ltee. Remote control system for television audience data gathering
US5497420A (en) * 1994-02-07 1996-03-05 Le Groupe Vide/ otron Lte/ e Cable TV system using passwords
US5539449A (en) 1993-05-03 1996-07-23 At&T Corp. Integrated television services system
US5548532A (en) 1994-04-28 1996-08-20 Thomson Consumer Electronics, Inc. Apparatus and method for formulating an interactive TV signal
WO1996017466A3 (en) 1994-12-02 1996-08-29 British Telecomm Communication system for multiservice terminals
US5559549A (en) 1992-12-09 1996-09-24 Discovery Communications, Inc. Television program delivery system
US5581704A (en) 1993-12-06 1996-12-03 Panasonic Technologies, Inc. System for maintaining data coherency in cache memory by periodically broadcasting invalidation reports from server to client
US5581270A (en) 1993-06-24 1996-12-03 Nintendo Of America, Inc. Hotel-based video game and communication system
WO1996038799A1 (en) 1995-05-30 1996-12-05 Amazon.Com, Inc. Secure method and system for communicating a list of credit card numbers over a non-secure network
US5583560A (en) 1993-06-22 1996-12-10 Apple Computer, Inc. Method and apparatus for audio-visual interface for the selective display of listing information on a display
US5600364A (en) 1992-12-09 1997-02-04 Discovery Communications, Inc. Network controller for cable television delivery systems
US5621456A (en) * 1993-06-22 1997-04-15 Apple Computer, Inc. Methods and apparatus for audio-visual interface for the display of multiple program categories
US5627940A (en) 1990-04-26 1997-05-06 Canon Kabushiki Kaisha Method and apparatus for interactive document preparation using a natural language
US5640501A (en) 1990-10-31 1997-06-17 Borland International, Inc. Development system and methods for visually creating goal oriented electronic form applications having decision trees
US5640577A (en) 1991-12-30 1997-06-17 Davox Corporation Data processing system with automated at least partial forms completion
US5657414A (en) 1992-12-01 1997-08-12 Scientific-Atlanta, Inc. Auxiliary device control for a subscriber terminal
US5664111A (en) 1994-02-16 1997-09-02 Honicorp, Inc. Computerized, multimedia, network, real time, interactive marketing and transactional system
US5663757A (en) 1989-07-14 1997-09-02 Morales; Fernando Software controlled multi-mode interactive TV systems
US5666293A (en) 1994-05-27 1997-09-09 Bell Atlantic Network Services, Inc. Downloading operating system software through a broadcast channel
US5715314A (en) 1994-10-24 1998-02-03 Open Market, Inc. Network sales system
US5727163A (en) 1995-03-30 1998-03-10 Amazon.Com, Inc. Secure method for communicating credit card data when placing an order on a non-secure network
US5729549A (en) 1995-03-16 1998-03-17 Bell Atlantic Network Services, Inc. Simulcasting digital video programs for broadcast and interactive services
US5734589A (en) 1995-01-31 1998-03-31 Bell Atlantic Network Services, Inc. Digital entertainment terminal with channel mapping
US5737595A (en) 1992-11-24 1998-04-07 Io Research Pty. Limited Distributed database system and database receiver therefor
US5745681A (en) 1996-01-11 1998-04-28 Sun Microsystems, Inc. Stateless shopping cart for the web
WO1998021679A1 (en) 1996-11-13 1998-05-22 Microsoft Corporation System and method for conducting commerce over a distributed network
US5758126A (en) 1996-03-19 1998-05-26 Sterling Commerce, Inc. Customizable bidirectional EDI translation system
US5757416A (en) 1993-12-03 1998-05-26 Scientific-Atlanta, Inc. System and method for transmitting a plurality of digital services including imaging services
EP0845747A2 (en) 1996-11-28 1998-06-03 Hitachi, Ltd. A delivery managing system
EP0594353B1 (en) 1992-10-23 1998-06-10 AT&T Corp. Method of initializing terminals in a signal distribution system
US5768539A (en) 1994-05-27 1998-06-16 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
EP0855659A1 (en) 1997-01-22 1998-07-29 Lucent Technologies Inc. System and method for providing anonymous personalized browsing in a network
EP0855687A2 (en) 1997-01-15 1998-07-29 AT&T Corp. System and method for distributed content electronic commerce
US5793302A (en) * 1992-11-17 1998-08-11 Stambler; Leon Method for securing information relevant to a transaction
US5805825A (en) 1995-07-26 1998-09-08 Intel Corporation Method for semi-reliable, unidirectional broadcast information services
US5822324A (en) 1995-03-16 1998-10-13 Bell Atlantic Network Services, Inc. Simulcasting digital video programs for broadcast and interactive services
US5826166A (en) 1995-07-06 1998-10-20 Bell Atlantic Network Services, Inc. Digital entertainment terminal providing dynamic execution in video dial tone networks
US5848399A (en) 1993-11-30 1998-12-08 Burke; Raymond R. Computer system for allowing a consumer to purchase packaged goods at home
US5847750A (en) 1993-07-09 1998-12-08 Zenith Electronics Corporation Method of accessing a repetitively transmitted video program
EP0883076A2 (en) 1997-06-04 1998-12-09 International Business Machines Corporation Network charge server
US5936659A (en) 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
US5951639A (en) 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
US5960411A (en) 1997-09-12 1999-09-28 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US5963924A (en) 1996-04-26 1999-10-05 Verifone, Inc. System, method and article of manufacture for the use of payment instrument holders and payment instruments in network electronic commerce
US5973747A (en) 1993-12-15 1999-10-26 Henley Trading Limited Television program management system
US6185585B1 (en) 1997-12-16 2001-02-06 Corporate Media Partners System and method for distribution and navigation of internet content
US6188436B1 (en) 1997-01-31 2001-02-13 Hughes Electronics Corporation Video broadcast system with video data shifting
US6195364B1 (en) 1999-08-24 2001-02-27 Qwest Communications International Inc. VSDL multiple service provider interface
US6222530B1 (en) 1998-08-21 2001-04-24 Corporate Media Partners System and method for a master scheduler
US6240448B1 (en) 1995-12-22 2001-05-29 Rutgers, The State University Of New Jersey Method and system for audio access to information in a wide area computer network
JP2001220925A (en) 2000-02-08 2001-08-17 Motoharu Hori Earthquake-resistant charnel house (coffin) with dew condensation prevention type in tomb
JP2003012738A (en) 2001-06-28 2003-01-15 Nippon Shokubai Co Ltd Polymerizable resin composition
JP2004127688A (en) 2002-10-02 2004-04-22 Hitachi Lighting Ltd Fluorescent lamp
JP2004156875A (en) 2002-11-08 2004-06-03 Kangen Yoyu Gijutsu Kenkyusho:Kk Waste disposing system
US20040261127A1 (en) 1991-11-25 2004-12-23 Actv, Inc. Digital interactive system for providing full interactivity with programming events
JP2005236437A (en) 2004-02-17 2005-09-02 Aiphone Co Ltd Nurse call system
US20080178222A1 (en) 1993-09-09 2008-07-24 United Video Properties, Inc. Electronic television program guide schedule system and method
JP2011112423A (en) 2009-11-25 2011-06-09 Hioki Ee Corp Linear irradiator, and imaging unit for visual examination of substrate to be inspected containing linear irradiator

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US32187A (en) * 1861-04-30 Samuel w

Patent Citations (195)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US4163255A (en) 1976-07-19 1979-07-31 Teleglobe Pay-Tv System, Inc. Billing method and system for a subscriber of a pay television system
USRE32187E (en) 1976-09-22 1986-06-17 Etablissement Public De Diffusion Dit "Telediffusion De France" System for digitally transmitting and displaying texts on television screen
US4528589A (en) 1977-02-14 1985-07-09 Telease, Inc. Method and system for subscription television billing and access
US4290142A (en) 1978-02-22 1981-09-15 Heinrich-Hertz-Institut Fur Nachrichtentechnik Berlin Gmbh Interactive cable television system
US4247106A (en) 1978-04-12 1981-01-27 Jerrold Electronics Corporation System arrangement for distribution and use of video games
US4277838A (en) 1978-05-08 1981-07-07 British Broadcasting Corporation Data receiving apparatus
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
JPS6149574B2 (en) 1979-12-25 1986-10-30 Matsushita Electric Ind Co Ltd
JPS6328143Y2 (en) 1981-10-23 1988-07-29
US5233654A (en) 1981-11-03 1993-08-03 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4694490A (en) 1981-11-03 1987-09-15 Harvey John C Signal processing apparatus and methods
US4965825A (en) 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US5109414A (en) 1981-11-03 1992-04-28 Personalized Mass Media Corporation Signal processing apparatus and methods
US4704725A (en) 1981-11-03 1987-11-03 Harvey John C Signal processing apparatus and methods
US4623920A (en) 1982-04-15 1986-11-18 Le Groupe Videotron Ltee Cable network data transmission system
US4636791A (en) 1982-07-28 1987-01-13 Motorola, Inc. Data signalling system
US4740912A (en) 1982-08-02 1988-04-26 Whitaker Ranald O Quinews-electronic replacement for the newspaper
US4547851A (en) 1983-03-14 1985-10-15 Kurland Lawrence G Integrated interactive restaurant communication method for food and entertainment processing
US4600921A (en) 1983-10-19 1986-07-15 Zenith Radio Corporation Full-field teletext system with dynamic addressability
EP0145063B1 (en) 1983-11-18 1988-06-15 Alcatel N.V. Cable television network
EP0145063A2 (en) 1983-11-18 1985-06-19 Alcatel N.V. Cable television network
US4595951A (en) 1983-11-29 1986-06-17 Rca Corporation Teletext decoder using a common memory
US4595952A (en) 1983-11-29 1986-06-17 Rca Corporation Teletext decoder having a register array for operating on pixel words
US4734858B1 (en) * 1983-12-05 1997-02-11 Portel Services Network Inc Data terminal and system for placing orders
US4734858A (en) * 1983-12-05 1988-03-29 Portel Services Network, Inc. Data terminal and system for placing orders
US4680629A (en) 1984-02-28 1987-07-14 Mitsubishi Denki Kabushiki Kaisha Display unit
US4602279A (en) 1984-03-21 1986-07-22 Actv, Inc. Method for providing targeted profile interactive CATV displays
US4652944A (en) 1984-06-25 1987-03-24 Kirsch Technologies, Inc. Computer memory back-up
US4851994A (en) 1984-08-03 1989-07-25 Sharp Kabushiki Kaisha Data I/O terminal equipment having mode setting functions for downloading various specified application programs from a host computer
JPS6172486U (en) 1984-10-19 1986-05-16
US4739310A (en) 1984-10-30 1988-04-19 Kabushiki Kaisha Toshiba Keyboard control system
US4636858A (en) 1984-10-30 1987-01-13 The United States Of America As Represented By The Secretary Of The Air Force Extracting digital data from a bus and multiplexing it with a video signal
US4744080A (en) 1985-03-12 1988-05-10 U.S. Philips Corporation Apparatus for receiving digital sound/data information
US4757498A (en) 1985-03-12 1988-07-12 U.S. Philips Corporation Method and apparatus for handling data in television signals
US4712131A (en) 1985-07-19 1987-12-08 Kabushiki Kaisha Toshiba Sync apparatus for image multiplex transmission system
US4766599A (en) 1985-08-28 1988-08-23 Nec Corporation Communication system with variably repeated transmission of data blocks
US4789863A (en) 1985-10-02 1988-12-06 Bush Thomas A Pay per view entertainment system
JPH0690409B2 (en) 1985-10-17 1994-11-14 富士写真フイルム株式会社 Radiation image information reader
US5208748A (en) 1985-11-18 1993-05-04 Action Technologies, Inc. Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants
US4724521A (en) 1986-01-14 1988-02-09 Veri-Fone, Inc. Method for operating a local terminal to execute a downloaded application program
JPH0581034B2 (en) 1986-01-17 1993-11-11 Canon Kk
JPH0581035B2 (en) 1986-01-23 1993-11-11 Canon Kk
US4926255A (en) 1986-03-10 1990-05-15 Kohorn H Von System for evaluation of response to broadcast transmissions
JPH0689252B2 (en) 1986-03-31 1994-11-09 日本合成ゴム株式会社 Polyamide resin composition
US4787085A (en) 1986-05-30 1988-11-22 Nippon Telegraph And Telephone Corporation Digital signal transmitting system
US4937784A (en) 1986-06-02 1990-06-26 Hitachi, Ltd. Distributed interactive processing method in complex system including plural work stations and plural host computers and apparatus using the same
JPS62286489A (en) 1986-06-06 1987-12-12 オムロン株式会社 Tv game system
US4935870A (en) 1986-12-15 1990-06-19 Keycom Electronic Publishing Apparatus for downloading macro programs and executing a downloaded macro program responding to activation of a single key
US4866515A (en) 1987-01-30 1989-09-12 Sony Corporation Passenger service and entertainment system for supplying frequency-multiplexed video, audio, and television game software signals to passenger seat terminals
US5151989A (en) 1987-02-13 1992-09-29 International Business Machines Corporation Directory cache management in a distributed data processing system
US4789895A (en) 1987-04-30 1988-12-06 Gte Government Systems Corporation System for synchronizing digital bit stream for telecommunication system
US4974252A (en) 1987-06-03 1990-11-27 Club Theatre Network, Inc. Interactive commercial/entertainment network
US4908707A (en) 1987-07-20 1990-03-13 U.S. Philips Corp. Video cassette recorder programming via teletext transmissions
US5191410A (en) 1987-08-04 1993-03-02 Telaction Corporation Interactive multimedia presentation and communications system
US5195092A (en) 1987-08-04 1993-03-16 Telaction Corporation Interactive multimedia presentation & communication system
EP0306208A2 (en) 1987-09-02 1989-03-08 Ing. C. Olivetti & C., S.p.A. Method and apparatus for the transmission and/or reception of computer programs and/or data by way of teletext
US5075773A (en) 1987-12-07 1991-12-24 British Broadcasting Corporation Data transmission in active picture period
US5036314A (en) 1988-01-12 1991-07-30 Sarin S.S. Ausiliari E Ricerca Informatica Method and system for the integrated supply of telematic services and graphic information to user terminals, particularly for advertising purposes
US4894789A (en) 1988-02-22 1990-01-16 Yee Keen Y TV data capture device
US5010499A (en) 1988-02-22 1991-04-23 Yee Keen Y Digital data capture for use with TV set or monitor
US5121476A (en) 1988-02-22 1992-06-09 Yee Keen Y TV data capture device
US4937863A (en) 1988-03-07 1990-06-26 Digital Equipment Corporation Software licensing management system
US4982440A (en) 1988-04-21 1991-01-01 Videotron Ltee CATV network with addressable filters receiving MSK upstream signals
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
US5347632A (en) 1988-07-15 1994-09-13 Prodigy Services Company Reception system for an interactive computer network and method of operation
US4984155A (en) 1988-08-29 1991-01-08 Square D Company Order entry system having catalog assistance
US4924303A (en) 1988-09-06 1990-05-08 Kenneth Dunlop Method and apparatus for providing interactive retrieval of TV still frame images and audio segments
US5030948A (en) 1988-09-19 1991-07-09 Rush Charles T Multiple characteristic sensitive addressing schema for a multiple receiver data processing network
JPH02105195A (en) 1988-10-14 1990-04-17 Konami Kogyo Kk Data broadcasting computer
US5124909A (en) 1988-10-31 1992-06-23 Hewlett-Packard Company Software program for providing cooperative processing between personal computers and a host computer
US5077607A (en) 1988-12-23 1991-12-31 Scientific-Atlanta, Inc. Cable television transaction terminal
US4991011A (en) 1988-12-23 1991-02-05 Scientific-Atlanta, Inc. Interactive television terminal with programmable background audio or video
US4975771A (en) 1989-02-10 1990-12-04 Kassatly Salim A Method and apparatus for TV broadcasting
US5355170A (en) 1989-05-03 1994-10-11 Telefunken Fernseh Und. Rundfunk Gmbh Method for transmitting periodically repeated teletext data in a television receiver
EP0399300A2 (en) 1989-05-20 1990-11-28 Hitachi, Ltd. Semiconductor device and electronic apparatus using semiconductor device
US5003591A (en) 1989-05-25 1991-03-26 General Instrument Corporation Functionally modifiable cable television converter system
US5663757A (en) 1989-07-14 1997-09-02 Morales; Fernando Software controlled multi-mode interactive TV systems
US5181107A (en) 1989-10-19 1993-01-19 Interactive Television Systems, Inc. Telephone access information service distribution system
US5173589A (en) 1989-11-03 1992-12-22 Laboratoire Europeen De Recherches Electroniques Avancees, Societe En Nom Collectif Process for instantaneous confirmation of actions in relation to television programs and device for use of the process
US5235415A (en) 1989-12-22 1993-08-10 Centre National D'etudes Des Telecommunications Device for the intelligible consultation of data relating to the fees programs of a subscription television and/or radio service
US5005171A (en) 1990-01-09 1991-04-02 At&T Bell Laboratories Telecommunication transmission format suited for network-independent timing environments
US5111296A (en) 1990-04-19 1992-05-05 Thomson Consumer Electronics, Inc. Data transfer from a television receiver having picture-in-picture capability to an external computer
US5113259A (en) 1990-04-19 1992-05-12 Thomson Consumer Electronics, Inc. Data transfer from an external computer to a television receiver having picture-in-picture capability
US5627940A (en) 1990-04-26 1997-05-06 Canon Kabushiki Kaisha Method and apparatus for interactive document preparation using a natural language
US5221968A (en) 1990-06-27 1993-06-22 U.S. Philips Corp. Ideographic teletext transmissions
US5440744A (en) 1990-08-14 1995-08-08 Digital Equipment Corporation Methods and apparatus for implementing server functions in a distributed heterogeneous environment
US5115309A (en) 1990-09-10 1992-05-19 At&T Bell Laboratories Method and apparatus for dynamic channel bandwidth allocation among multiple parallel video coders
US5361091A (en) 1990-09-28 1994-11-01 Inteletext Systems, Inc. Interactive home information system for distributing video picture information to television viewers over a fiber optic telephone system
US5093718A (en) 1990-09-28 1992-03-03 Inteletext Systems, Inc. Interactive home information system
US5220420A (en) 1990-09-28 1993-06-15 Inteletext Systems, Inc. Interactive home information system for distributing compressed television programming
US5485197A (en) 1990-09-28 1996-01-16 Ictv, Inc. Carousel display
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
US5138440A (en) 1990-10-29 1992-08-11 General Instrument Corporation Method and apparatus for communicating a plurality of asynchronous signals over a digital communication path
US5640501A (en) 1990-10-31 1997-06-17 Borland International, Inc. Development system and methods for visually creating goal oriented electronic form applications having decision trees
US5204947A (en) 1990-10-31 1993-04-20 International Business Machines Corporation Application independent (open) hypermedia enablement services
US5303393A (en) 1990-11-06 1994-04-12 Radio Satellite Corporation Integrated radio satellite response system and method
US5148275A (en) 1990-11-15 1992-09-15 Thomson Consumer Electronics, Inc. Second video program
GB2249416A (en) 1990-12-31 1992-05-06 Ruego Dev Co Stock control system
US5132992A (en) 1991-01-07 1992-07-21 Paul Yurt Audio and video transmission and receiving system
US5168356A (en) 1991-02-27 1992-12-01 General Electric Company Apparatus for segmenting encoded video signal for transmission
US5111292A (en) 1991-02-27 1992-05-05 General Electric Company Priority selection apparatus as for a video signal processor
US5497185A (en) 1991-04-25 1996-03-05 Le Groupe Videotron Ltee. Remote control system for television audience data gathering
GB2280977B (en) 1991-04-25 1995-07-05 Videotron Groupe Ltee A remote control system for at least selecting television channels
JPH04127688U (en) 1991-05-15 1992-11-20 日本電気株式会社 Optical communication module
US5343238A (en) 1991-05-23 1994-08-30 Hitachi, Ltd. Wide-screen television receiver with aspect ratio conversion function and method of displaying a range to be magnified and displayed
US5204897A (en) 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US5260999A (en) 1991-06-28 1993-11-09 Digital Equipment Corporation Filters in license management system
US5144425A (en) 1991-08-26 1992-09-01 General Electric Company Apparatus for hierarchically dividing video signals
US5410343A (en) 1991-09-27 1995-04-25 Bell Atlantic Network Services, Inc. Video-on-demand services using public switched telephone network
WO1993010605A1 (en) 1991-11-20 1993-05-27 Zing Systems, L.P. Transaction based interactive television system
US5343239A (en) 1991-11-20 1994-08-30 Zing Systems, L.P. Transaction based interactive television system
US20040261127A1 (en) 1991-11-25 2004-12-23 Actv, Inc. Digital interactive system for providing full interactivity with programming events
US5640577A (en) 1991-12-30 1997-06-17 Davox Corporation Data processing system with automated at least partial forms completion
US5299197A (en) 1992-02-11 1994-03-29 Roger Schlafly Communications packet server protocol
US5287507A (en) 1992-03-27 1994-02-15 Sun Microsystems, Inc. Method and apparatus for portable object handles that use local caches
EP0570683A2 (en) 1992-04-17 1993-11-24 International Business Machines Corporation Network server for local and remote resources
EP0570683A3 (en) 1992-04-17 1998-04-29 International Business Machines Corporation Network server for local and remote resources
US5262860A (en) 1992-04-23 1993-11-16 International Business Machines Corporation Method and system communication establishment utilizing captured and processed visually perceptible data within a broadcast video signal
WO1993022876A1 (en) 1992-04-28 1993-11-11 Thomson Consumer Electronics, Inc. Auxiliary video information system including extended data services
US5469206A (en) 1992-05-27 1995-11-21 Philips Electronics North America Corporation System and method for automatically correlating user preferences with electronic shopping information
EP0583186B1 (en) 1992-07-30 1996-09-18 France Telecom Control unit for stabilising the ouput power of laser diodes
EP0583186A1 (en) 1992-07-30 1994-02-16 France Telecom Control unit for stabilising the ouput power of laser diodes
EP0582196A1 (en) 1992-08-05 1994-02-09 Sedepro Anchoring of a tyre carcass
EP0594353B1 (en) 1992-10-23 1998-06-10 AT&T Corp. Method of initializing terminals in a signal distribution system
US5418559A (en) 1992-10-23 1995-05-23 At&T Corp. Multi-channel television converter for conventional and interactive signals
US5793302A (en) * 1992-11-17 1998-08-11 Stambler; Leon Method for securing information relevant to a transaction
US5737595A (en) 1992-11-24 1998-04-07 Io Research Pty. Limited Distributed database system and database receiver therefor
US5657414A (en) 1992-12-01 1997-08-12 Scientific-Atlanta, Inc. Auxiliary device control for a subscriber terminal
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
US5559549A (en) 1992-12-09 1996-09-24 Discovery Communications, Inc. Television program delivery system
US5990927A (en) 1992-12-09 1999-11-23 Discovery Communications, Inc. Advanced set top terminal for cable television delivery systems
US5539449A (en) 1993-05-03 1996-07-23 At&T Corp. Integrated television services system
US5485221A (en) 1993-06-07 1996-01-16 Scientific-Atlanta, Inc. Subscription television system and terminal for enabling simultaneous display of multiple services
US5583560A (en) 1993-06-22 1996-12-10 Apple Computer, Inc. Method and apparatus for audio-visual interface for the selective display of listing information on a display
US5621456A (en) * 1993-06-22 1997-04-15 Apple Computer, Inc. Methods and apparatus for audio-visual interface for the display of multiple program categories
US5581270A (en) 1993-06-24 1996-12-03 Nintendo Of America, Inc. Hotel-based video game and communication system
US5847750A (en) 1993-07-09 1998-12-08 Zenith Electronics Corporation Method of accessing a repetitively transmitted video program
US5469431A (en) 1993-07-12 1995-11-21 Philips Electronics North America Corp. Method of and apparatus for channel mapping with relative service identification
US20080178222A1 (en) 1993-09-09 2008-07-24 United Video Properties, Inc. Electronic television program guide schedule system and method
US5465387A (en) * 1993-10-08 1995-11-07 At&T Corp. Adaptive fraud monitoring and control
US5848399A (en) 1993-11-30 1998-12-08 Burke; Raymond R. Computer system for allowing a consumer to purchase packaged goods at home
US5757416A (en) 1993-12-03 1998-05-26 Scientific-Atlanta, Inc. System and method for transmitting a plurality of digital services including imaging services
US5706435A (en) 1993-12-06 1998-01-06 Panasonic Technologies, Inc. System for maintaining data coherency in cache memory by periodically broadcasting a single invalidation report from server to clients
US5581704A (en) 1993-12-06 1996-12-03 Panasonic Technologies, Inc. System for maintaining data coherency in cache memory by periodically broadcasting invalidation reports from server to client
US5973747A (en) 1993-12-15 1999-10-26 Henley Trading Limited Television program management system
US5497420A (en) * 1994-02-07 1996-03-05 Le Groupe Vide/ otron Lte/ e Cable TV system using passwords
US5664111A (en) 1994-02-16 1997-09-02 Honicorp, Inc. Computerized, multimedia, network, real time, interactive marketing and transactional system
US5548532A (en) 1994-04-28 1996-08-20 Thomson Consumer Electronics, Inc. Apparatus and method for formulating an interactive TV signal
EP0680185A2 (en) 1994-04-28 1995-11-02 Thomson Consumer Electronics, Inc. A distributed computer 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
WO1995030961A1 (en) 1994-05-06 1995-11-16 Mary Thomasma Tackbary Method and apparatus for communicating with a card distribution center for selecting, ordering and sending social expression cards
US5978855A (en) 1994-05-27 1999-11-02 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
US5768539A (en) 1994-05-27 1998-06-16 Bell Atlantic Network Services, Inc. Downloading applications software through a broadcast channel
US5666293A (en) 1994-05-27 1997-09-09 Bell Atlantic Network Services, Inc. Downloading operating system software through a broadcast channel
US5715314A (en) 1994-10-24 1998-02-03 Open Market, Inc. Network sales system
WO1996017466A3 (en) 1994-12-02 1996-08-29 British Telecomm Communication system for multiservice terminals
US5734589A (en) 1995-01-31 1998-03-31 Bell Atlantic Network Services, Inc. Digital entertainment terminal with channel mapping
US6130898A (en) 1995-03-16 2000-10-10 Bell Atlantic Network Services, Inc. Simulcasting digital video programs for broadcast and interactive services
US5729549A (en) 1995-03-16 1998-03-17 Bell Atlantic Network Services, Inc. Simulcasting digital video programs for broadcast and interactive services
US5822324A (en) 1995-03-16 1998-10-13 Bell Atlantic Network Services, Inc. Simulcasting digital video programs for broadcast and interactive services
US5715399A (en) 1995-03-30 1998-02-03 Amazon.Com, Inc. Secure method and system for communicating a list of credit card numbers over a non-secure network
US5727163A (en) 1995-03-30 1998-03-10 Amazon.Com, Inc. Secure method for communicating credit card data when placing an order on a non-secure network
WO1996038799A1 (en) 1995-05-30 1996-12-05 Amazon.Com, Inc. Secure method and system for communicating a list of credit card numbers over a non-secure network
US5973684A (en) 1995-07-06 1999-10-26 Bell Atlantic Network Services, Inc. Digital entertainment terminal providing dynamic execution in video dial tone networks
US5826166A (en) 1995-07-06 1998-10-20 Bell Atlantic Network Services, Inc. Digital entertainment terminal providing dynamic execution in video dial tone networks
US5805825A (en) 1995-07-26 1998-09-08 Intel Corporation Method for semi-reliable, unidirectional broadcast information services
US6240448B1 (en) 1995-12-22 2001-05-29 Rutgers, The State University Of New Jersey Method and system for audio access to information in a wide area computer network
US5745681A (en) 1996-01-11 1998-04-28 Sun Microsystems, Inc. Stateless shopping cart for the web
US5936659A (en) 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
US5951639A (en) 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
US5758126A (en) 1996-03-19 1998-05-26 Sterling Commerce, Inc. Customizable bidirectional EDI translation system
US5963924A (en) 1996-04-26 1999-10-05 Verifone, Inc. System, method and article of manufacture for the use of payment instrument holders and payment instruments in network electronic commerce
WO1998021679A1 (en) 1996-11-13 1998-05-22 Microsoft Corporation System and method for conducting commerce over a distributed network
EP0845747A2 (en) 1996-11-28 1998-06-03 Hitachi, Ltd. A delivery managing system
EP0855687A2 (en) 1997-01-15 1998-07-29 AT&T Corp. System and method for distributed content electronic commerce
EP0855659A1 (en) 1997-01-22 1998-07-29 Lucent Technologies Inc. System and method for providing anonymous personalized browsing in a network
US6188436B1 (en) 1997-01-31 2001-02-13 Hughes Electronics Corporation Video broadcast system with video data shifting
EP0883076A2 (en) 1997-06-04 1998-12-09 International Business Machines Corporation Network charge server
US5960411A (en) 1997-09-12 1999-09-28 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US6185585B1 (en) 1997-12-16 2001-02-06 Corporate Media Partners System and method for distribution and navigation of internet content
US6222530B1 (en) 1998-08-21 2001-04-24 Corporate Media Partners System and method for a master scheduler
US6195364B1 (en) 1999-08-24 2001-02-27 Qwest Communications International Inc. VSDL multiple service provider interface
JP2001220925A (en) 2000-02-08 2001-08-17 Motoharu Hori Earthquake-resistant charnel house (coffin) with dew condensation prevention type in tomb
JP2003012738A (en) 2001-06-28 2003-01-15 Nippon Shokubai Co Ltd Polymerizable resin composition
JP2004127688A (en) 2002-10-02 2004-04-22 Hitachi Lighting Ltd Fluorescent lamp
JP2004156875A (en) 2002-11-08 2004-06-03 Kangen Yoyu Gijutsu Kenkyusho:Kk Waste disposing system
JP2005236437A (en) 2004-02-17 2005-09-02 Aiphone Co Ltd Nurse call system
JP2011112423A (en) 2009-11-25 2011-06-09 Hioki Ee Corp Linear irradiator, and imaging unit for visual examination of substrate to be inspected containing linear irradiator

Non-Patent Citations (226)

* Cited by examiner, † Cited by third party
Title
"barnesandnoble.com's Proposed Findings of Fact and Conclusions of Law", amazon.com, Inc. v. barnesandnoble.com, Inc. and barnesandnoble.com, LLC, No. C99-1695P, filed Nov. 22, 1999,United States District Court, Western District of Washington at Seattle.
"Contents Table of Contents", ISPF V4R2.0 User's Guide, Oct. 9, 1995, pp. 1-9, Document No. SC34-4484-01, IBM BookManager, Web Page: http://publib.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/ISPUGD02/CCONTENTS.
"Declaration of John W. Lockwood in Support of barnesandnoble.com's Opposition to amazon.com's Motion for a Preliminary Injunction", amazon.com, Inc. v. barnesandnoble.com.inc. and barnesandnoble.com, LLC, No. C99-1695P, filed Nov. 8, 1999, United States District Court, Western District of Washington at Seattle.
"Declaration of Professor Martin J. Adelman in Support of barnesandnoble.com's Opposition to amazon.com's Motion for a Preliminary Injunction", amazon.com, Inc. v. barnesandnoble.com, Inc. and barnesandnoble.com, LLC, No. C99-1695P, filed Nov. 8, 1999, United States District Court, Western District of Washington at Seattle.
"Diagram of Example Operation", Web Page: http://www.bountyquest.com/images/b1025-17b.jpg, p. 1, No Date Given.
"Doonsbury" by G. B. Trudeau, May 2 through May 8, 1992, www.doonsbury.com.
"National Association of Broadcasters (NAB) ED-National Association of Broadcasters (NAB): Grand Alliance HDTV System Specification, Passage Text", Grand Alliance HDTV System Specification. Draft Document submitted to the ACATS Technical Subgroup, Reprint from proceedings of Annual Broadcast Engg. Conference, Chapter V-Transport System, (Feb. 22, 1994), 7-10.
"Order on Plantiff's Motion for Preliminary Injunction", amazon.com, Inc. v. barnesandnoble.com.inc. and barnesandnoble.com, LLC, , No. C99-1695P, decided Dec. 1, 1999, United States District Court, Western District of Washington at Seattle.
"Strictly Exchange Online Auction Software", All CruiseAuction.com, No Date Given, pp. 1-3, Web page: http:/www.autionhosting.com/.
"U.S. Appl. No. 08/233,908, Advisory Action mailed Feb. 28, 1997", 1 pg.
"U.S. Appl. No. 08/233,908, Final Office Action Mailed Dec. 23, 1996", 6 pgs.
"U.S. Appl. No. 08/233,908, Non-Final Office Action mailed Apr. 11, 1997", 6 pgs.
"U.S. Appl. No. 08/233,908, Non-Final Office Action mailed Jun. 17, 1996", 9 pgs.
"U.S. Appl. No. 08/233,908, Notice of Allowability mailed May 11, 1998", 3 pgs.
"U.S. Appl. No. 08/233,908, Response filed Feb. 7, 1997 to Office Action mailed Dec. 23, 1996", 8 pgs.
"U.S. Appl. No. 08/233,908, Response filed Jun. 30, 1997 to Non-Final Office Action Mailed Apr. 11, 1997", 8 pgs.
"U.S. Appl. No. 08/233,908, Response filed Mar. 18, 1997 to Advisory Action mailed Feb. 28, 1997", 6 pgs.
"U.S. Appl. No. 08/233,908, Response filed Sep. 23, 1996 to Non-Final Office Action Mailed Jun. 17, 1996", 17 pgs.
"U.S. Appl. No. 08/819,274, Advisory Action mailed Sep. 9, 1998", 1 pg.
"U.S. Appl. No. 08/819,274, Final Office Action mailed May 13, 1998", 6 pgs.
"Basis of Digital Technology in Broadcasting (9th), Service Image of ISDB & Supportive Basis Technology". Toru Kuroda, NHK Technical Research Laboratory Report, No. 45, NHK Science & Technical Research Laboratories, (Oct. 1, 1993). 10-45.
"Chinese Application Serial No. 031029655, Notice of Allowance mailed Dec. 15, 2006", with English translation, 4 pgs.
"Chinese Application Serial No. 200610093448.8, Office Action Mailed May 15, 2009", 10 pgs.
"Chinese Application Serial No. 200610093448.8, Office Action mailed Sep. 12, 2008", OAR-MISC, 14 pgs.
"Chinese Application Serial No. 200610093448.8, Response filed Dec. 24, 2012 to Office Action mailed Oct. 8, 2012", with English translation of claims, 6 pgs.
"Chinese Application Serial No. 200610101903.4, Office Action mailed Aug. 21, 2009", 5 pages.
"Chinese Application Serial No. 200610101903.4, Office Action mailed Jan. 12, 2012", 12 pgs.
"Chinese Application Serial No. 200610101903.4, Response filed Apr. 15, 2011 to Office Action mailed Feb. 1, 2011", 11pgs.
"Chinese Application Serial No. 200610101903.4, Response filed Apr. 27, 2012 to Office Action mailed Jan. 12, 2012", 7 pgs.
"Chinese Application Serial No. 200610101903.4, Voluntary Amendment filed Oct. 31, 2008", with English translation of claims, 20 pgs.
"Chinese Application Serial No. 201220160793.X, Third Office Action mailed Mar. 27, 2013", with English translation of claims, 18 pgs.
"European Application Serial No. 03002720.5, Datasheet for the decision mailed Jan. 27, 2011", 23 pgs.
"European Application Serial No. 03002720.5, Notice of Opposition mailed Jul. 27, 2011", 6 pgs.
"European Application Serial No. 03002720.5, Office Action mailed Oct. 26, 2010", 34 pgs.
"European Application Serial No. 03002720.5, Summons to Attend Oral Proceedings Received mailed Jun. 18, 2010", 9 pgs.
"European Application Serial No. 03002721.3, Office Action mailed Feb. 3, 2011", 6 pgs.
"European Application Serial No. 03002723.9, Notice of Opposition mailed Aug. 31, 2011", 6 pgs.
"European Application Serial No. 03002723.9, Notice of Opposition mailed May 31, 2012", 6 pgs.
"European Application Serial No. 95105803.1, Notice of Allowance mailed Mar. 30, 2004", 6 pgs.
"European Application Serial No. 95105803.1, Office Action mailed Oct. 29, 2003", 6 pgs.
"Information Technology—Coding of Moving Pictures and Associated Audio For Digital Storage Media at up to About 1,5 Mbits/s—Part 3: Audio", © ISO/IEC1993, ISO/IEC International Standard 11172-3, (Aug. 1, 1993), 60 pgs.
"International Application Serial 03002722.1-1244, Response filed Jul. 3, 2007 to Office Action mailed Feb. 19, 2007", 9 pgs.
"International Application Serial No. 03002720.5-1244, European Search Report completed May 22, 2006", 3 pgs.
"International Application Serial No. 03002720.5-1244, Office Action mailed Feb. 19, 2007", 5 pgs.
"International Application Serial No. 03002720.5-1244, Response filed Jul. 3, 2007 to Office Action mailed Feb. 19, 2007", 11 pgs.
"International Application Serial No. 03002721.3-1244, Office Action mailed Feb. 19, 2007", 6 pgs.
"International Application Serial No. 03002721.3-1244, Response filed Oct. 18, 2007 to Non-Final Office Action mailed Feb. 19, 2007", 7 pgs.
"International Application Serial No. 03002722.1-1244, European Search Report competed May 23, 2006", 3 pgs.
"International Application Serial No. 03002722.1-1244, Office Action mailed Feb. 19, 2007", 5 pgs.
"International Application Serial No. 03002723.9, EP Office Action mailed Feb. 19, 2007", 4 pgs.
"International Application Serial No. 03002723.9, European Search Report completed May 19, 2006", 4 pgs.
"International Application Serial No. 03002723.9, Response filed Jul. 3, 2007 to EP Office Action mailed Feb. 19, 2007", 15 pgs.
"International Application Serial No. 95105803.1-1244, First Examiner's Report mailed Oct. 29, 2003", 6 pgs.
"International Application Serial. No. 03002721.3-1244, European Search Report completed May 18, 2006", 3 pgs.
"Japanese Applicatiion Serial No.2010-185225, Office Action Response filed Feb. 23, 2012", Without English Translation, 19 pgs.
"Japanese Application Serial No. 2006-9187, Office Action mailed Jan. 12, 2010", 29 pgs.
"Japanese Application Serial No. 2009-101935, Appeal Decision", 40 pgs.
"Japanese Application Serial No. 2009-101935, Final Office Action mailed Apr. 20, 2010", 4 Pgs.
"Japanese Application Serial No. 2010-185225, Final Office Action mailed Aug. 23, 2011", w/English Translation, 5 pgs.
"Japanese Application Serial No. 2010-185225, Office Action mailed Feb. 15, 2011", 8 pgs.
"Japanese Application Serial No. 2010-185225—Office Action Received", 6 pgs.
"Japanese Application Serial No. 2012-037961, Office Action mailed Jun. 26, 2012", 6 pgs.
"Japanese Application Serial No. 2012-037961, Response filed Oct. 25, 2012 to Office Action mailed Jun. 26, 2012", with English translation of claims, 13 pgs.
"Japanese Application Serial No. 98882/1995, Japanese Office Action mailed Jul. 5, 2005", 5 pgs.
"Japanese Application Serial No. 98882/1995, Office Action mailed Aug. 5, 2009", 44 pgs.
"Japanese Application Serial No. 98882/1995, Office Action mailed May 16, 2008", with English translation of claims, 7 pgs.
"Japanese Application Serial No. 98882/1995, Office Action mailed Nov. 18, 2008", 23 pgs.
"Thailand Application Serial No. 024080, Notice of Allowance mailed Feb. 6, 2006", 6 pgs.
"U.S. Appl. No. 08/819,274, Final Office Action mailed Jul. 2, 1998", 5 pgs.
"U.S. Appl. No. 08/819,274, Non-Final Office Action mailed Jan. 7, 1998", 6 pgs.
"U.S. Appl. No. 08/819,274, Notice of Allowance mailed Sep. 25, 1998", 3 pgs.
"U.S. Appl. No. 08/819,274, Preliminary Amendment filed Mar. 18, 1997", 7 pgs.
"U.S. Appl. No. 08/819,274, Response filed Aug. 28, 1998 to Final Office Action mailed Jul. 2, 1998", 5 pgs.
"U.S. Appl. No. 08/819,274, Response filed Feb. 27, 1998 to Non-Final Office Action mailed Jan. 7, 1998", 10 pgs.
"U.S. Appl. No. 08/819,274, Response filed Jun. 12, 1998 to Final Office Action mailed May 13, 1998", 9 pgs.
"U.S. Appl. No. 08/819,274, Response filed Sep. 18, 1998 to Final Office Action maild Jul. 2, 1998", 2 pgs.
"U.S. Appl. No. 09,903,448, Response filed Jun. 6, 2012 to Non Final Office Action mailed Jan. 6, 2012", 20 pgs.
"U.S. Appl. No. 09/672,523 Final Office Action mailed Jan. 6, 2009", 19 pgs.
"U.S. Appl. No. 09/672,523 Final Office Action mailed May 1, 2006", 31 pgs.
"U.S. Appl. No. 09/672,523 Non Final Office Action mailed Jul. 9, 2003", 44 pgs.
"U.S. Appl. No. 09/672,523 Non Final Office Action mailed Mar. 8, 2004", 6 pgs.
"U.S. Appl. No. 09/672,523 Non Final Office Action mailed May 3, 2007", 36 pgs.
"U.S. Appl. No. 09/672,523 Response filed Apr. 8, 2004 to Non Final Office Action mailed Mar. 8, 2004", 25 pgs.
"U.S. Appl. No. 09/672,523 Response filed Aug. 3, 2007 to Non-Final Office Action mailed May 3, 2007", 14 pgs.
"U.S. Appl. No. 09/672,523 Response filed Nov. 10, 2003 to Non Final Office Action mailed Jul. 9, 2003", 25 pgs.
"U.S. Appl. No. 09/672,523, Appeal Brief filed Nov. 17, 2010", 122 pgs.
"U.S. Appl. No. 09/672,523, Decision on Pre-Appeal Brief Request mailed Oct. 26, 2009", 2 pgs.
"U.S. Appl. No. 09/672,523, Decision on Pre-Appeal Brief Request mailed Sep. 27, 2006", 2 pgs.
"U.S. Appl. No. 09/672,523, Examiner Interview Summary mailed Apr. 12, 2013", 3 pgs.
"U.S. Appl. No. 09/672,523, Examiner Interview Summary mailed Dec. 5, 2012", 3 pgs.
"U.S. Appl. No. 09/672,523, Examiner's Answer to Appeal Brief mailed Jan. 12, 2011", 18 pgs.
"U.S. Appl. No. 09/672,523, Final Office Action mailed Nov. 20, 2002", 34 pgs.
"U.S. Appl. No. 09/672,523, Non-Final Office Action mailed Jan. 15, 2002", 36 pgs.
"U.S. Appl. No. 09/672,523, Non-Final Office Action mailed Jun. 11, 2009", 16 pgs.
"U.S. Appl. No. 09/672,523, Non-Final Office Action mailed Nov. 18, 2009", 15 pgs.
"U.S. Appl. No. 09/672,523, Pre-Appeal Brief Request filed Aug. 1, 2006", 5 pgs.
"U.S. Appl. No. 09/672,523, Pre-Appeal Brief Request filed Oct. 12, 2009", 5 pgs.
"U.S. Appl. No. 09/672,523, Preliminary Amendment filed Oct. 6, 2000", 73 pgs.
"U.S. Appl. No. 09/672,523, Response filed Apr. 15, 2002 to Non-Final Office Action mailed Jan. 15, 2002", 40 pgs.
"U.S. Appl. No. 09/672,523, Response filed Feb. 20, 2003 to Final Office Action mailed Nov. 20, 2002", 16 pgs.
"U.S. Appl. No. 09/672,523, Response filed Mar. 30, 2009 to Final Office Action mailed Jan. 6, 2009", 5 pgs.
"U.S. Appl. No. 09/672,523, Supplemental Amendment filed Apr. 5, 2013", 3 pgs.
"U.S. Appl. No. 09/672,523, Supplemental Amendment filed Mar. 28, 2013", 4 pgs.
"U.S. Appl. No. 09/72,523, Notice of Appeal mailed Aug. 1, 2006", 6 pgs.
"U.S. Appl. No. 09/903,091 Final Office Action mailed Aug. 3, 2006", 20 pgs.
"U.S. Appl. No. 09/903,091 Final Office Action mailed Jan. 11, 2007", 20 pgs.
"U.S. Appl. No. 09/903,091 Response filed Jan. 3, 2007 to Final Office Action mailed Aug. 3, 2006", 16 pgs.
"U.S. Appl. No. 09/903,091, Examiner Interview Summary mailed Feb. 15, 2007", 2 pgs.
"U.S. Appl. No. 09/903,091, Examiner Interview Summary mailed Nov. 10, 2010", 3 pgs.
"U.S. Appl. No. 09/903,091, Final Office Action mailed Apr. 30, 2009", 12 pgs.
"U.S. Appl. No. 09/903,091, Non Final Office Action mailed Feb. 2, 2011", 12 pgs.
"U.S. Appl. No. 09/903,091, Non-Final Office Action mailed Apr. 1, 2010", 15 pgs.
"U.S. Appl. No. 09/903,091, Non-Final Office Action mailed May 8, 2003", 8 pgs.
"U.S. Appl. No. 09/903,091, Non-Final Office Action mailed Sep. 16, 2008", OARN, 16 pgs.
"U.S. Appl. No. 09/903,091, Premilinary Amendment mailed Feb. 10, 2001", 13 pgs.
"U.S. Appl. No. 09/903,091, Response filed Aug. 8, 2003 to Non-Final Office Action mailed Jul. 8, 2003", 20 pgs.
"U.S. Appl. No. 09/903,091, Response filed Jan. 16, 2009 to Non-Final Office Action mailed Sep. 16, 2008", 14 pgs.
"U.S. Appl. No. 09/903,091, Response filed Jul. 30, 2009 to Final Office Action mailed Apr. 30, 2009", 14 pgs.
"U.S. Appl. No. 09/903,091, Response filed Sep. 1, 2010 to Non Final Office Action mailed Apr. 1, 2010", 16 pgs.
"U.S. Appl. No. 09/903,448 Final Office Action mailed Sep. 3, 2008", FOAR, 17 pgs.
"U.S. Appl. No. 09/903,448, Examiner Interview Summary mailed Jun. 29, 2010", 3 pgs.
"U.S. Appl. No. 09/903,448, Examiner Interview Summary mailed May 23, 2013", 3 pgs.
"U.S. Appl. No. 09/903,448, Final Office Action mailed Apr. 30, 2010", 23 pgs.
"U.S. Appl. No. 09/903,448, Final Office Action mailed Aug. 15, 2012", 14 pgs.
"U.S. Appl. No. 09/903,448, Non Final Office Action mailed Jan. 6, 2012", 12 pgs.
"U.S. Appl. No. 09/903,448, Non Final Office Action mailed Jun. 9, 2011", 9 pgs.
"U.S. Appl. No. 09/903,448, Non-Final Office Action mailed Jan. 30, 2008", 3 pgs.
"U.S. Appl. No. 09/903,448, Non-Final Office Action mailed Jul. 1, 2009", 12 pgs.
"U.S. Appl. No. 09/903,448, Preliminary Amendment mailed Jul. 10, 2001", 51 pgs.
"U.S. Appl. No. 09/903,448, Response filed Jan. 5, 2009 to Final Office Action mailed Sep. 3, 2008", 29 pgs.
"U.S. Appl. No. 09/903,448, Response filed Jul. 30, 2010 to Final Office Action mailed Apr. 30, 2010", 24 pgs.
"U.S. Appl. No. 09/903,448, Response filed Jun. 13, 2012 to Non Final Office Action mailed Jan. 6, 2012", 14 pgs.
"U.S. Appl. No. 09/903,448, Response filed May 30, 2008 to Non-Final Office Action mailed Jan. 30, 2008", 44 pgs.
"U.S. Appl. No. 09/903,448, Response filed Nov. 2, 2009 to Non Final Office Action mailed Jul. 1, 2009", 23 pgs.
"U.S. Appl. No. 09/903,448, Response filed Oct. 11, 2011 to Non Final Office Action mailed Jun. 9, 2011", 16 pgs.
"U.S. Appl. No. 09/903,458 Final Office Action mailed Aug. 21, 2008", FOAR, 13 pgs.
"U.S. Appl. No. 09/903,458 Response to Non-Final Office Action filed Apr. 14, 2008", 15 pgs.
"U.S. Appl. No. 09/903,458, Examiner Interview Summary mailed Feb. 24, 2009", 2 pgs.
"U.S. Appl. No. 09/903,458, Non-Final Office Action mailed May 29, 2009", 9 pgs.
"U.S. Appl. No. 09/903,458, Non-Final Office Action mailed Oct. 12, 2007", 34 pgs.
"U.S. Appl. No. 09/903,458, Preliminary Amendment mailed Jul. 10, 2001", 3 pgs.
"U.S. Appl. No. 09/903,458, Response filed Feb. 24, 2009 to Restriction Requirement mailed Feb. 4, 2009", 3 pgs.
"U.S. Appl. No. 09/903,458, Response filed Oct. 20, 2008 to Final Office Action mailed Aug. 21, 2008", 13 pgs.
"U.S. Appl. No. 09/903,458, Response filed Oct. 29, 2009 to Non Final Office Action mailed May 29, 2009", 10 pgs.
"U.S. Appl. No. 09/903,458, Restriction Requirement mailed Feb. 4, 2009", 6 pgs.
Acharya S, Alonso R, Franklin M, Zdonik S, "Broadcast Disk: Data Management for Asymmetric Communication Environments" Proceedings of the ACM SIGMOD International conference on Management of Data, San Jose, CA May 1995 (first published in Brown University Technical Report CS-94-43, Oct. 1994).
Acharya S, Alonso R, Franklin M, Zdonik S, "Dissemination-based Data Delivery Using Broadcast Disks" IEEE Personal Communications, vol. 2(6), 50-60, 1995.
Adaptive Micro-Ware Inc.; LBRT167568-LBRT167571; no date given.
Albright, Thomas B., "Simple Internet Purchase Procedure" Web Page: http://www.bountyquest.com/images/b1025-17a.jpg, pp. 1, No Date Given.
Ammar M H, Wong JW, "The Design of Teletext Broadcast Cycles" Elsevier Science Publishers B.V., 1985. [Wong's group, Dept of Computer Science, University of Waterloo, Ontario, Canada].
Ananymous, "Internet Gets Shopping Mall", Information & Interactive Services Report, Apr. 22, 1994, vol. 15, No. 8, 1 page.
Anon, "Conference on Electronic Delivery of Data and Software", London, Engl Conference Date: Sep. 16, 1986, Sponsor: IERE, London, Engl, Publ Inst Electron Radio Eng n. 69. Publ by IERE, London, Engl 145p.
Antonelli C J, Honeyman P, "Integrating Mass Storage and File Systems", Proceedings, Twelfth IEEE Symposium on Mass Storage Systems, Apr. 26-29, 1993. Monterey, CA.
Appeal, amazon.com, Inc. v. barnesandnoble.com.inc. and barnesandnoble.com, LLC, 00-1109, Decided Feb. 14, 2001, United States Court of Apeals for the Federal Circuit.
barnesandnoble.com's Opposition to amazon.com's Motion for a Preliminary Injunction, amazon.com, Inc. v. barnesandnoble.com.inc. and barnesandnoble.com, LLC, ,No. C99-1695P, filed Nov. 8, 1999, United States District Court, Western of Washington at Seattle.
Bereiter, Philips, Video-on-Demand vor, Blick durch die Wirtschaf-Beilage zur Frankfurter Allgemeinen Zeitung, v37, n71 Apr. 13, 1994, pp. 8, 1994.
Berners-Lee, T., "Hypertext Markup Language-2.0", Network Working Group MIT/W3C RFC 1866, Nov. 1995, pp. 1-51.
Bountyquest, "1-Click Patent: No Exact Match But Runners Up Will Split $10,000 Cash Prize", Bountyquest.com, No Date Given, pp. 1-3, Web Page: http://www.bountyquest/infocenter/iclick.htm.
Bountyquest, "1-Click Prior Art" Web Page: http://www.bountyquest.com/patentinfo/oneclickart.htm, No Date Given, pp. 1-8, bountyquest.
Bowen T F, Goapl G, Herman G, Hickey T, Lee K C, Mansfield W H, Raitz J, Weinrib A, "The Datacycle Architecture" Communications of the ACM, vol. 35, No. 12, Dec. 1992.
Brody, Herb, Information Highway: Technology Review, Aug./Sep. 1993, vol. 96, No. 6, p. 30.
Brown, L.J., et al., "BBC Telesoftware-3 Years On", Affiliation: BBC Enterprises Ltd., London, UK, Conference on Electronic Delivery of Data and Software, (Publ. No. 69) p. 35-8, Publisher: IERE, London, UK, Publication Date: 1986 Country of Publication: UK 160 pp.
Bundy, Matthew J., "SkyPix System Design", Doc. No. 920162-K-02-01-0.2, Project: SkyPix System, Customer: Starscan, Adaptive Micro-Ware, Inc, pp. 1-18, Appendix A-1-A-8.
Bundy, Matthew J., "SkyPix System Specification", Doc. No. 920162-K-02-01-0.11, Project: SkyPix System, Customer: Starscan, Adaptive Micro-Ware, Inc, pp. 1-12, Appendix A.
Carcione, Frank, J., "Quarterly Report", Telvue Corp. 10-Q, Sep. 30, 1995, pp. 1-10, Washington, DC., Web page: http://www.secinfo.com/dpJXs.a6.htm.
Chambers, J.P., "BBC Datacast-The Transmission System", Journal: Electronics & Wireless World, vol. 92, No. 1609, p. 95-8, Publication Date: Nov. 1986, Country of Publication: UK.
Chouinard, G., "Broadcasting of HDTV: Beyond the Vision Signal", Third International Colloquium on Advanced Television Systems: HDTV '87. Colloquium Proceedings, p. 4/7/1-23, Publisher: CBC Eng, Montreal, Que., Canada, Publication Date: 1988 Country of Publication: Canada 2 vol. (674+148) pp., p. vol. 1.
Clark, Derek, "Specification", Doc. No. 900171-F-10-01-2.0, Project: Comm Frame Data specification, Customer: Starscan, Adaptive Micro-Ware, Inc., pp. 1-121.
Cominetti M., et al., "Data Broad Casting Services", cent. ric., Torino Italy, Journal: Electronica e Telecomunicazioni, 1990. 39 (2) 83-88, Country of Publication: Italy.
D'Amato, P., et al., "Datavideo: the New Data Broadcasting System Through Television Channels", Televideo RAI, Roma, Italy, Journal: Electronica c Telecomunicazioni vol. 40, No. 2 p. 65-74, Publ. Date: Aug. 1991 Country of Publication: Italy.
Declaration of Steven I. Wallach in Support of barnesandnoble.com's Opposition to amazon.com's Motion for Preliminary Injunction, amazon.com, Inc. v. barnesandnoble.com.inc. and barnesandnoble.com, LLC, No. C99-1695P, filed Nov. 8, 1999, United States District Court, Western District of Washington at Seattle.
Dr. Hisham Ei-Shishiny, et al., "A Regional Broadcast-Centric Education System", IEEE Symposium on Computers and Communications, Alexandria, Egypt, Jul. 1-3, 1997.
European Search Report-EP 95 10 5803, Mar. 6, 2002.
Florida Today Space Online; "GE pacenet to Merge with Gilat"; http://www.floridaoday.com/space/explore/stories/1998b/100498f.htm; Oct. 4, 1998; LBRT167572-LBRT167577.
Fujimoto, et al., "Matsushit Data Multiplex System for Satellite Communications", Journal: National Technical Report, vol. 39, No. 3, p. 316-23, Publication Date: Jun. 1993, Country of Publication: Japan.
Gifford D K, "Polychannel Systems for Mass Digital Communication" Communications of ACM, vol. 33, No. 2, Feb. 1990. [MIT lab, Gifford's group].
Gifford D K, Lucassen J M, Berlin S T, "The Application of Digital Broadcast Communication to Large Scale Information Systems" IEEE Journal on Selected Areas in Communications, vol. SAC-3, No. 3, May 1985. [MIT lab, Gifford's group].
Green N, Hedger J, "ORACLE on Independent Television" Sep. 1976.
Greenspun, Philip, "Chapter 14: Ecommerce" Philip And Alex's Guide to Web Publishing, No Date Given, pp. 1-31, Web Page: Http://www.arsdigita.com/books/panda/ecommerce.
Guenot, A., "CIDAC: Integrated Circuit for Acquisition and Control (In Teletext)", RTC-Compelec, Paris, France, Journal: Acta Electraonica vol. 27, No. 1-2 p. 139-44, Publication Date: 1985 Country of Publication: France.
Hedger, J, "Broadcast Telesoftware: Experience with ORACLE" Online conferences Ltd., 1980.
Herman G, Gopal G, Lee K C, Weinrib A, "The Datacycle Architecture for Very High Throughput Database Systems" Proceedings of Association for Computing Machinery Special Interest Group on Management of Data, 1987 Annual Conference, San Francisco, May 27-29, 1987. [Bell Lab, Herman & Gopal's group, Bell Communications Research, Inc., Morristown, NJ.]
Imielinski T, Viswanathan S, Badrinath B R, "Energy Efficient Indexing on Air" Proceedings of the 1994 ACM SIGMOD, International Conference on Management of Data, Minneapolis, Minnesota, May 24-27, 1994.
Imielinski T, Viswanathan S, Badrinath B R, "Power Efficient Filtering of Data on Air" Advances in Database Technology-EDBT '94, Proceedings, 4th International conference on Extending Database Technology, Cambridge, United Kingdom, Mar. 28-31, 1994. [Rutger's group, Imielinski's lab, Dept. of Computer Science, Rutgers University].
Imieliski T, Badrinath B R, "Mobile Wireless Computing" Communications of the ACM, vol. 37, No. 10, Oct. 1994.
Ketchpel, Steven P, et al., "Shopping Models: A Flexable Architecture for Information Commerce", Proceeding of the 2nd ACM International Conference on Digital Libraries. Jul. 25-28, 1997, pp. 65-74, ACM Press, Philadelphia, PA, USA.
Kristol, D, et al. "HTTP State Management Mechanism", Bell Laboratories, Lucent Technologies, Feb. 1997, pp. 1-21, Network Working Group, Web Page: http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2109.html.
Lumbatis, Kurt, "Menu Object Data Specification", Doc. No. 921001-A-01-0.4, Project: Menu Generation, customer: Starscan, Adaptive Micro-Ware,Inc., pp. 1-17, Appendix A-B.
M-CAM, Inc. "Intellectual Property Analysis of Amazon's U.S. Patent No. 5,960,411", Patently Obvious Litigation Report, M-Cam.com, Mar. 2, 2001, pp. 1-6, NE Charlottesville, VA.
Menu Header, Description: A Menue Header, Entry-Count-The number of header entries to follow., Menu Scroll, Description: A menu scroll, Menu Footer, Description: A menu footer, Info Block, Description: An information block, Adaptive Micro-Ware, Inc.
Menu Object, Description: A Menu Object, An Image Bitmap, Palette-Colors-Number of colors in palette, Adaptive Micro-Ware, Inc.
Mukuhira Yasuhiro, et al., VPT System for VHS VCR, Sanyo Electric Co., Ltd., Sanyo Tech Rev, 1990, vol. 22, No. 1, p. 3-9, FIG. 7, REF 5, Journal No. F0222AAV ISSN No. 0285-516X CODEN: STRVD.
Mulner, H., et al., "Modern Videotex Services and Interactive Telesoftware", Inst. for Info Process., Tech. Univ. Gaz, Austria, Videotex International,.Proceedings of the Conference p. 345-51, Publisher: Online Int. Pinner, UK, Publication Date: 1985 Country of Publication: UK xiv+404 pp.
Nishizawa Taiji, et al., Jpn. Broadcast, Corp, Sci. and Tech. Res. Lab.; Tokyo Bradcast. Syst., Inc.; Matsushitadenkisangyo Eizoonkyojohoken Terebijon Gakkaishi (Journal of the Institute of Television Engineers of Japan), 1994, Vol. 48, No. 7, p. 794-803, FIG. 4, TBL. 4, REF. 56, Journal No. F0330ABG, ISSN No. 0386-6831.
Ohtsuki Mitsuhiro, et al. "Experimental Receiving System for TV-Multiplexed Data Broadcasting", NEC Home Electronics Ltd., R & O Labs, NEC Giho (NEC Technical Journal), 1989, Vol. 42, No. 5, p. 10-15, FIG. 12, TBL. 2, REF.5.
Ohtsuki, M., et al. "Experimental Receiving System For TV-Multiplexed Data Broadcasting", R& D Lab., NEC Home Electron. Ltd., Tokyo, Japan , Journal: NEC Technical Journal vol. 42, No. 5 p. 10-15, Publication Date: Apr. 1989 Country of Publication: Japan.
O'Reilly, Tim, "Reilly Awards $10,000 1-Click County to Three "Runners Up"", O'Reilly Network, Patents DEVCENTER, Mar. 14, 2001, pp. 1-5, Web Page: http://www.oreillynet.com/pub/a/patents/2001/03/14/bounty.html.
Pongratz, Hanns Joerg, "Computer Graphics in Videotex", T echnischen Univ Grax, Inst fuer Informationsverarbeitung, Grax, Austria, Angewandte Informatik, Applied Informatics v. 27 n 6 Jun. 1985 p. 232-238, Publication year: 1985.
Poole et al., "Cable TV Plugs Into Internet", Unix World, Nov. 1993, vol. X, No. 11, p. 16.
Reilly, Mark L., "Comm Frame Specification", Doc. No. 912621-A-01-01-1.3, Project: starscan Data Delivery, Customer: Northwest Starscan, Adaptive Micro-Ware, Inc., pp. 1-14.
Reilly, Mark L., "Specification", Doc. No. 921071-A-02-02-0.4, Project: Data Object Delivery Interface, Customer: Northwest Starscan, Adaptive Micro-Ware, Inc., pp. 1-8.
Reilly, Mark L., Critical Issues Update, Issue Heading: Comm Frame Spec, Oct. 28, 1991, Adaptive Micro-Ware, Inc, Technology Development, Adaptive Micro-Ware, Inc.
Reilly, Mark L., Memorandum, Subject: Fractional Channel Frame Formats, Oct. 2, 1991, Adaptive Micro-Ware, Inc, Technology Development, Adaptive Micro-Ware, Inc.
Representative ITV services. (Interactive Television) (Is ITV Here to Stay?), Byte, v18, n2, p. 141(1), Feb. 1993.
Rice, Dale, Centralization, Standardization Are "Way to Go", American Banker, Mar. 9, 1987, vol. 152, No. 46, p. 11.
Richards, T., et al., "The Interactive Island-Singapore's Teleview System", Journal: IEEE Review vol. 37, No. 7 p. 259-63, Publication Date: Jul. 18, 1991 Country of Publication: UK.
Satellite Broadcasting and Communications Association; SSBCA Satellite Industry Key Dates; http://www.scba.com/ket-data.html; LBRT167554-LBRT167552; copyright 1998-2002; pp. 1-15.
Smithson, P.M., et al., "The Development of an Operational Computer Based Satellite Data Broadcasting System", Tenth International Conference on Digital Satellite Communications (Conf. Publ. No. 403) Pat vol. 2 p. 405-12 vol. 2, Publisher IEEE, London, UK, Publication date: 1994 Country of Publication: UK 2 vol. (712) pp.
Smithson; P.M., et al., "The Development of an Operational Computer Based Satellite Data Broadcasting System", Plymonth Univ., UK, Tenth International Conference on Digital Satellite Communications (Con. Publ. No. 403) Part vol. 2 p. 405-12 vol. 2, Publisher: IEEE, London, UK, Publication Date: 1994 Country of Publication: UK 2 vol.
Stallard, W.G., "Data Broadcasting", Corporate Source: Independent Broadcasting Authority, London, Engl, Source: IBA Technical Review (Independent Broadcasting Authority) n 24, Nov 1988, p. 48-49, Publication Year: 1988.
Stallings, William, "Consultative Committee on International Telegraphy and Telephony", Telecommunications, v24, n3, p. 29(5), Mar. 1990.
startrek.com: The official Star Trek Web Site! Web Page: http://www.startrek.com/, p. 1-2, No Date Given.
Storey, J R, et al., "A Description of the Broadcast Telidon System", IEEE Transactions on Consumer Electronics, vol. CE-26, (Aug. 1980), 9 pgs.
Stow, R.G., "Receiving Conditional Access Teletext", Philips Consumer Electron., Croydon, UK, IEEE Colloquium on Encryption for Cable and DBS' (Digest No. 24) p. 5/1-4, Publisher: IEEE, London, UK, Publication Date: 1986, Conference Location: London, UK.
Swift, Tammy, "The everchanging maketplace: From the neighborhood grocery to the hyperstores of today", The Forum, Aug. 18, 1999, pp. 1-7, The Everchanging marketplace Web page: http://www.in-forum.com/specials/century/jan3/week34.html.
Temesi, A., et al.. "Telesoftware-The Simple Way", Inst. of Telecommun. Electron., Budapest Tech. Univ., Hungary, Publisher: North-Holland, Amsterdam, Netherlands, Publication Date: 1988 Country of Publication: Netherlands x+225 pp.
Van Den Boom, Henrie, "Interactive Videotex System For Two-Way CATV Networks", Eindhoven Univ of Technology, Eindhoven, Neth, AEU, Archiv fue Elektronik & Uebertragungstechnik: Elect. & Com. v40 n 6 Nov.-Dec. 1986 p. 397-401, Publ. Year: 1986.
Wilcox, Andrew., "MiniVend-multi-catalog shopping cart and mall", Describes Mini Vend 2.03, Verssion 0.2, with portions from Vend 0.3., No Date Given, pp. 1-93, Web Page: http://bill.minivend.com/2simp/mimivend.html.
Wong J W, "Broadcast Delivery" Proceedings of IEEE, vol. 76, No. 12, Dec. 1988.
Woolnough, Roger, Teleview Puts Datacom On Screen-Hybrid videotex melds phone, TV, Electronic Engineering Times, 1988, N 499,49, Publication Date: Aug. 15, 1988.
www.satbiznews.com; "A Look Back at 1991"; http://www.sabiznews.com/91look.html; LBRT167548-LBRT167552; 1991.
Yamada, Ken, "Hewlett Devises Way for Palm-Top PC to be linked to "Interactive" Television", Wall Street Journal, Oct. 7, 1992, p. B3.
Yang, D.J., et al.. "Proposed Home Information System in Taiwan: Videoinfo system", Industrial Technology Research Inst, Hsinchu, Taiwan, Chicago, IL, USA, Digest of Technical Papers-IEEE International Conference on Consumer Electronics 1994. IEEE, Pisataway, NJ, USA, 94CH3363-9. p. 178-179, Publication Year: 1994.
Zachary et al., "Technology: HP is building Gadget to Make TVS Interactive"; Wall Street Journal; New york; Feb. 27, 1992 from Proquest database online (hereinafter Zachary). *
Zachary, G Pascal, "Technology: HP is Building Gadget to Make TVs Interactive", Wall Street Journal, Feb. 27, 1992, p. B1.
Zdonik S, "Are "Disks in the Air" Just Pie in the Sky?" IEEE, Workshop on Mobile Computing Systems and Applications, Santa Cruz, CA, Dec. 1994. [Brown's lab, Zdonik's Group, Dept. of Computer Science, Brown Univ., affiliated with Dept. of Computer Science, University of Maryland].

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140071231A1 (en) * 2012-09-11 2014-03-13 The Directv Group, Inc. System and method for distributing high-quality 3d video in a 2d format
US9743064B2 (en) * 2012-09-11 2017-08-22 The Directv Group, Inc. System and method for distributing high-quality 3D video in a 2D format

Also Published As

Publication number Publication date
US20020038257A1 (en) 2002-03-28

Similar Documents

Publication Publication Date Title
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
US5819034A (en) Apparatus for transmitting and receiving executable applications as for a multimedia system
US5818441A (en) System and method for simulating two-way connectivity for one way data streams
EP1110394B1 (en) Simulating two way connectivity for one way data streams for multiple parties
EP1053641B1 (en) A hand-held apparatus for simulating two way connectivity for one way data streams
US7278154B2 (en) Host apparatus for simulating two way connectivity for one way data streams
EP1528809B1 (en) Interactivity with audiovisual programming
KR100513294B1 (en) Method, apparatus and system for providing information of an object included in multimedia content
JPH11195065A (en) Information flow system and information supply system
JPH09130774A (en) Two-way television system

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

CC Certificate of correction
AS Assignment

Owner name: OPENTV, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:THOMSON CONSUMER ELECTRONICS, INC.;REEL/FRAME:050372/0466

Effective date: 19990628