Computer system architecture and method for multi-user, real-time applications
First Claim
1. A method for processing real-time applications, the method comprising:
- providing a front-end server;
providing a plurality of dedicated processors coupled to the front-end server so that the front-end server can communicate with at least one of the plurality of dedicated processors;
selecting at least one of the plurality of dedicated processors to execute a selected application;
transferring the selected application from a memory device to the at least one of the plurality of dedicated processors for execution;
initiating communication between a plurality of users and the at least one of the selected dedicated processors so that the plurality of users can participate in the execution of the selected application;
executing the selected application at the at least one of the selected dedicated processors; and
suspending communication between the plurality of users and the front end server.
2 Assignments
0 Petitions
Accused Products
Abstract
An architecture is disclosed for a computer system that runs applications serving multiple users. The computer system includes multiple processors, some of which run quick applications, i.e., requiring real time response, while others run applications with less stringent requirements. Each real time processor can be dedicated to running just one instance of an application. The processors can be of disparate types running disparate operating systems and optimized for disparate applications. The system is centrally controlled with the processors communicating among themselves over a shared LAN or via a communications switch. The system may also facilitate simultaneous voice and data communications among users. Users communicate with the system using any of a number of standard techniques: including dial-up telephone lines, ISDN, packet access services, ADSL, cable TV and the like.
48 Citations
15 Claims
-
1. A method for processing real-time applications, the method comprising:
-
providing a front-end server;
providing a plurality of dedicated processors coupled to the front-end server so that the front-end server can communicate with at least one of the plurality of dedicated processors;
selecting at least one of the plurality of dedicated processors to execute a selected application;
transferring the selected application from a memory device to the at least one of the plurality of dedicated processors for execution;
initiating communication between a plurality of users and the at least one of the selected dedicated processors so that the plurality of users can participate in the execution of the selected application;
executing the selected application at the at least one of the selected dedicated processors; and
suspending communication between the plurality of users and the front end server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
storing a plurality of applications in the memory device, the memory device being coupled to the front-end server; and
at the front-end server, generating appropriate communication signals to download the selected application to the at least one of the plurality of dedicated processors.
-
-
3. A method according to claim 1 further comprising:
storing applications in a memory associated with each of the plurality of dedicated processors.
-
4. A method according to claim 1 wherein selecting at least one of the plurality of dedicated processors includes polling the plurality of dedicated processors by the front-end server to determine which one of the plurality of dedicated processors is available to execute the selected application before that application is downloaded to the selected dedicated processor.
-
5. A method according to claim 1 wherein selecting at least one of the plurality of dedicated processors includes the plurality of dedicated processors communicating their status to the front-end server.
-
6. A method according to claim 1 wherein the plurality of dedicated processors are heterogeneous.
-
7. The method of claim 1 further comprising:
providing a voice bridge between one or more users of the plurality of users.
-
8. The method of claim 1 further comprising:
providing a voice bridge between one or more users of the plurality of users and one or more processors of the plurality of dedicated processors.
-
9. A method for processing real-time applications which may be executed by a plurality of users, the method comprising:
-
providing a front-end server that has access to a plurality of applications;
providing a plurality of dedicated processors that communicate with the front-end server, the plurality of dedicated processor being inhomogeneous;
receiving a message from at least one user of the plurality of users to the front-end server that the at least one user desires to have executed a particular application;
retrieving the particular application selected by the at least one user;
selecting a dedicated process that is of the appropriate type and capacity to run the particular application;
downloading the particular application selected by the at least one user to a memory in the selected dedicated processor;
initiating communication between the plurality of users and the selected dedicated processor; and
executing the particular application selected by the at least one user on the selected dedicated processor. - View Dependent Claims (10, 11)
requesting at the front-end server status information from the plurality of dedicated processors; and
receiving the status information at the front-end server.
-
-
11. The method of claim 9 further comprising:
after initiating communication between the plurality of users and the selected dedicated processor, suspending communication between the plurality of users and the front-end server so that the plurality of users are communicating directly with the selected dedicated processor.
-
12. A computer system architecture for processing real-time applications, the architecture comprising:
-
a front-end server;
a plurality of dedicated processors coupled to the front-end server so that the front-end server can communicate with at least one of the plurality of dedicated processors;
a coupler communicating with the front-end server, the plurality of dedicated processors and a plurality of users, wherein one or more users communicates with the front-end server to select a selected application and the front-end server communicates with the plurality of users and at least one selected dedicated processor executes the desired application, the coupler including;
means for selecting at least one of the plurality of dedicated processors to execute the selected application; and
means for decoupling a plurality of users from the front-end server and coupling the plurality of users to the at least one of the selected dedicated processors so that the plurality of users is communicating directly with the selected dedicated processors so that the plurality of users can participate in the execution of the selected application. - View Dependent Claims (13, 14, 15)
-
Specification