Method and system of deploying an application between computers

Electrical computers and digital processing systems: multicomput – Network computer configuring

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S202000, C709S203000, C709S208000, C709S241000, C709S241000, C717S176000, C717S177000

Reexamination Certificate

active

06738806

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates generally to allocation of computer resources and more specifically relates to a method and system for deploying an application between two or more computers in a fashion that is transparent to a user.
BACKGROUND OF THE INVENTION
The development of network computing (“NC”) technology has spawned the development of several intelligent devices, ranging from simple thin-client desk-top computers, to internet-aware screen phones, mobile phones, personal digital assistants (“PDAs”), public kiosks, smart-card based banking devices, etc. The Java computer language has been an important feature of this technological development, as it provides a “Write Once, Run Anywhere” platform which is an effective way to pass an application from a server to a device for local execution on the device. Thus, Java provides the ability to transparently deliver, via a communications mechanism, such as a general purpose network or a special purpose communications port, software to a variety of devices having different hardware platforms and has become a standard language for internet applications.
While Java can be run on a variety of different intelligent devices, such intelligent devices still require a minimum set of hardware resources capable of executing necessary resident software applications that allow a user to interact with the device and the network. Thus, developers of intelligent devices are confronted with a tension between the desire to reduce required hardware resources and yet increase device software functionality. Furthermore, software developers wishing to offer an application for execution on a range of devices are confronted with devices having different available hardware resources, and thus an application designed for execution on a device with reduced hardware resources will underutilize available hardware on another device having improved hardware resources.
An additional difficulty is confronted by hardware developers and software developers working concurrently to develop an intelligent device with at least one software application. While a hardware developer can provide proposed specifications to a software developer for the final hardware device, it is possible that the finalized device has hardware functionality (such as central processing unit power or random access memory) which differs from that anticipated, and thus the device would be over or under utilized. The software developer can therefore be required to modify an otherwise completed software application to suit the final hardware design.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide a novel method and system of deploying an application between computers which obviates or mitigates at least one of the disadvantages of the prior art.
In an embodiment of the invention, there is provide a method of deploying an application for shared execution between at least one alternate computing resource and a device, comprising the steps of:
categorizing the application into device objects and server objects;
creating a set of managed objects from the server objects;
loading the server objects onto the at least one alternate computing resource; and
loading the managed objects and the device objects onto the device.
In a particular aspect of the embodiment, the alternate computing resource is a Java-based server, and the device is Java-based. Furthermore, the device objects and server objects are based on the JavaBeans specification, and the managed objects are created using the “mogen” tool from the Java Dynamic Management Kit.
In another embodiment of the invention, there is provided a system for deploying a device application, the application being categorized into server objects and device objects, where the system comprises a device operable for communication with a computer network and operable for executing the device objects and a set of managed objects, the managed objects being proxies for the server objects. The system also comprises at least one alternate computing resource operable for communication over the network and operable for executing the server objects, the server objects for receiving function calls passed from the managed objects over the network and returning values for the function calls back to the managed objects.
In a particular aspect of the embodiment, the alternate computing resource is a Java-based server, and the device is a Java-based intelligent device.
In yet another embodiment of the invention, there is provided a software application categorizable (i.e. capable of being categorized) into at least one server object and at least one device object, each of the at least one server objects being created by an operation into corresponding managed objects, the at least one server object for execution on an alternate computing resource and for receiving function calls passed from the managed objects and returning values for the function calls back to the managed objects, the at least one device object and the at least one managed object being executable as the application on a device in a transparent fashion to a user.
In another embodiment, there is provided a software application for execution on a device connectable to an alternate computing resource over an network, the application comprising: at least one device object; and, at least one managed object for interaction with the at least one device object, the at least one managed objects each having a corresponding server object executing on the alternate computing resource, the server objects for receiving method calls or function calls passed from the managed objects and returning values for the method calls or function calls back to the managed objects.


REFERENCES:
patent: 5857201 (1999-01-01), Wright et al.
patent: 5890158 (1999-03-01), House et al.
patent: 6067416 (2000-05-01), Fraser
patent: 6263491 (2001-07-01), Hunt
patent: 6263498 (2001-07-01), Alcorn et al.
patent: 6266666 (2001-07-01), Ireland et al.
patent: 6269373 (2001-07-01), Apte et al.
patent: 6321263 (2001-11-01), Luzzi et al.
patent: 6324542 (2001-11-01), Wright et al.
patent: 6341289 (2002-01-01), Burroughs et al.
patent: 6356946 (2002-03-01), Clegg et al.
patent: 6401238 (2002-06-01), Brown et al.
patent: 6407751 (2002-06-01), Minami et al.
patent: 6434595 (2002-08-01), Suzuki et al.
patent: 6442754 (2002-08-01), Curtis
patent: 6484214 (2002-11-01), Sundermier
patent: 6496979 (2002-12-01), Chen et al.
patent: 6519625 (2003-02-01), Murrell et al.
patent: 6567846 (2003-05-01), Garg et al.
patent: 6571389 (2003-05-01), Spyker et al.
Sun Microsystems, Java Beans Version 1.01, Hamilton, G., 1996, Sun Microsystems, Mountainview, CA.*
Java Dynamic Management Kit 3.0 Programming Guide, 1998 Sun Microsystems Inc.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system of deploying an application between computers does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system of deploying an application between computers, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system of deploying an application between computers will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3239911

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.