Patents Examined by Sue Lao
  • Patent number: 6862733
    Abstract: A method in a computer system is disclosed for programmatically locating any file and building a shortcut for future reference to that file. First, a shortcut cache is created if one does not exist. Then, the shortcut cache is searched for a shortcut for the file. The shortcut contains the location and name of the file. If the shortcut name is not found, then the shortcut directory for the current user is located in the system registry, and it is searched for the shortcut name. If the shortcut name is still not found, the shortcut directory for all users is located in the system registry, and it is searched for the shortcut name. If the shortcut name is found then it is stored in the shortcut cache; and, the location and name of the file is returned to the requester.
    Type: Grant
    Filed: November 19, 1998
    Date of Patent: March 1, 2005
    Assignee: Unisys Corporation
    Inventors: Sunil Vasudeo Abhyankar, Mark Jeffrey Tadman, Linjun Zhou
  • Patent number: 6862732
    Abstract: A data processing system that enables event modules to transmit event data to a module capable of processing the event data, generating a response, and when required producing a response profile to be sent to a location. The response is produced by the system executing one or more scripts to perform processing and gather data from processing modules. As the response is being generated by the execution of the script, the scripts self-modify based upon the data gathered. The system recognizes the necessary changes and dynamically generates a response to the changes. If the response profile must be transmitted to another location, the response profile will be in a format that the receiving location will recognize.
    Type: Grant
    Filed: February 25, 1998
    Date of Patent: March 1, 2005
    Assignee: Metaserver, Inc.
    Inventors: Richard Kenneth Schultz, Howard Kent Gilbert, Ashish Suresh Deshpande
  • Patent number: 6854116
    Abstract: Method and means for controlling the execution sequence of a first sequence of modules in a first task. The first sequence of modules are linked to one another and have at least one sequence of execution. The method stores in each of the first sequence of modules a skip value representing which of subsequent modules to execute. The method executes the first of the first sequence of said modules, and then executes the next of the modules indicated by the skip value. Conservation of processor bandwidth is accomplished by avoiding the loading of modules which will not be executed. Method and means are further provided for simultaneous activation/deactivation of a set of tasks by a processor, each of the tasks normally executed in a sequential fashion by one or more processors. A list of tasks to be activated/deactivated is stored, including the timing relationship for the activation process. The list is then implemented as frame numbers for activation and requested state in the actual task list.
    Type: Grant
    Filed: January 14, 1998
    Date of Patent: February 8, 2005
    Assignee: Apple Computer, Inc.
    Inventors: Eric C. Anderson, Hugh B. Svendsen
  • Patent number: 6851114
    Abstract: A system and method are provided for isolating the execution of a plurality of applications which access shared data. A limited number of special classes encapsulate data that should be shared by all classes in the multitasking system. Static fields of all classes, including the special classes, are virtualized such that each application has its own copy of static fields and class monitors. However, a special class has special program code associated with it, such that an invocation of any of the methods of the special class causes a switch of an application ID associated with the thread (referred to herein as an effective thread application ID or TA-ID) to a constant value. Thus, the applications may access a single, shared copy of the special class. The TA-ID may be changed back to the original value upon exiting one of the methods.
    Type: Grant
    Filed: November 6, 2000
    Date of Patent: February 1, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Grzegorz J. Czajkowski
  • Patent number: 6848108
    Abstract: An invention for creating, sending, and using self-descriptive objects as messages over a network is disclosed. In an embodiment of the present invention, self-descriptive persistent dictionary objects are serialized and sent as messages across a message queuing network. The receiving messaging system unserializes the message object, and passes the object to the destination application. The application then queries or enumerates message elements from the instantiated persistent dictionary, and performs the programmed response. Using these self-descriptive objects as messages, the sending and receiving applications no longer rely on an a priori convention or a special-coding serialization scheme. Rather, messaging applications can communicate arbitrary objects in a standard way with no prior agreement as to the nature and semantics of message contents.
    Type: Grant
    Filed: June 30, 1998
    Date of Patent: January 25, 2005
    Assignee: Microsoft Corporation
    Inventor: Ilan Gabriel Caron
  • Patent number: 6845508
    Abstract: A stream class driver for use in a computer operating system functions together with a minidriver. The minidriver is associated with a particular design for an adapter, which is a hardware device that generates or receives streaming data. The stream class driver deals with common operating system tasks such as direct memory access, scatter/gather memory use and Plug n Play. The stream class driver is independent of the hardware design and can therefore function with any type of streaming device or external buses such as USB or IEEE 1394. The minidriver functionality is limited to only those functions required by the unique aspects of the hardware and for the minimum requirements of operation, thereby minimizing the complexity and burden of designing minidrivers for hardware devices.
    Type: Grant
    Filed: July 27, 2001
    Date of Patent: January 18, 2005
    Assignee: Microsoft Corporation
    Inventor: William G. Parry
  • Patent number: 6845505
    Abstract: A web server configured to respond to client requests over a network such as the World Wide Web includes a web listener having a Hypertext Transfer Protocol (HTTP) daemon, a plurality of extension programs configured to perform respective operations, and a web request broker configured to identify one of the programs for responding to a client request, and determine the availability of an instance of the identified program. The web request broker maintains control of multiple instances of each server extension program to provide enhanced server operation without overwhelming server resources. The web request broker maintains a minimum number of instances of the identified program in memory, each executed in its own address space. The web request broker determines whether an available instance of the identified program is available from an existing number of instances, and selectively initiates a new instance of the program if no other instance is available.
    Type: Grant
    Filed: February 3, 1997
    Date of Patent: January 18, 2005
    Assignee: Oracle International Corporation
    Inventors: Seshu Adunuthula, Mala Anand, Tsung-Jen Chou, Shehzaad Nakhoda, Raymond Ng, Robert Pang, Ankur Sharma, Matthew Bookman
  • Patent number: 6836878
    Abstract: A technique for permitting a developer to be presented with a visual programming environment which includes different representations of a class library from which a developer may select classes for inclusion in an application under development. The environment includes a class window, a composition editor window, and a methods window. To permit greater understanding of the class library that the developer is working with, the class library can be presented in the class window in a class tree format, in a class list format, or in a graphical format which includes graphical representations of the classes. The developer may select a class for inclusion in the application under development from any of the three formats. The methods window is provided for displaying the methods (code) for a selected class. The methods of a class may be modified or new methods added via the methods window after the class has been added to the application under development.
    Type: Grant
    Filed: June 4, 1996
    Date of Patent: December 28, 2004
    Assignee: International Business Machines Corporation
    Inventors: Gennaro A. Cuomo, Binh Q. Nguyen, Richard J. Redpath
  • Patent number: 6834389
    Abstract: In a computer network (100), a first object (102) is moved from a current host address and port number (104) to a new host address and port number (114). A forwarder object (122) associated with the first object (102) is created at the current host and port number (104). The forwarder object (122) includes the new host address and port number (114) for the first object (102). A second object (126) at a different host address and port number (128) creates a message (MSG2) destined for the first object (102). Not knowing that the first object (102) has moved, the second object sends the message (MSG2) to the current host address and port number (104). The forwarder object (122) intercepts and forwards the message (MSG2) to the first object (102) at the new host address and port number (114). The first object (102) returns a reply message (REPLY2) directly to the second object (126). The reply message (REPLY2) includes the new host address and port number (114) for the first object (102).
    Type: Grant
    Filed: November 25, 1998
    Date of Patent: December 21, 2004
    Assignee: Recursion Software, Inc.
    Inventor: Graham W. Glass
  • Patent number: 6832380
    Abstract: Client-server software partitions Windows applications into multi-media and other less-observable instructions such that client may run audio/visual-related commands remotely, thereby appearing to client-user as when application were run solely by central server. Clients may access application through web-sites or remote access servers. Client requests may be atomized such that instruction set sub-sets are partitioned correspondingly. Operating system parameters on which application is run may be accessed selectably. Server may centralize client administration and provide metering of application usage.
    Type: Grant
    Filed: June 28, 1996
    Date of Patent: December 14, 2004
    Assignee: Tarantella, Inc.
    Inventors: Edwin J. Lau, Randall G. Menna, Prashant Navare, Tung Nguyen, James Salois
  • Patent number: 6829764
    Abstract: A task schedule is enforced among multiple processes by setting process priorities based upon which tasks are running on which processes and based upon the task schedule. The task scheduling may be provided by a local or global scheduler which uses application information to prioritize tasks. The task schedule, or priority list, is provided at Local Activity Schedulers which schedule the activities for their local execution elements/nodes. Execution of activities locally are performed by any number of processes that reside in each execution element. These processes are assigned operating system priorities by the respective Local Activity Scheduler based on their assigned activities for execution and the task schedule.
    Type: Grant
    Filed: June 23, 1997
    Date of Patent: December 7, 2004
    Assignee: International Business Machines Corporation
    Inventors: Mitchell Adam Cohen, Anant Deep Jhingran, Ronald Mraz
  • Patent number: 6823521
    Abstract: Two computer systems communicate with each other using active datastreams that each identify executable code for sending and receiving the corresponding active datastream, and for performing any processing required by the active datastream. Each active datastream also includes a unique datastream identifier. When a first computer system (source) has a request to send to a second computer system (target), the source computer system creates an active datastream object that represents the request. Once the active datastream object is created, a method on the active datastream object is invoked to send the active datastream object to the target. A datastream factory on the target reads the datastream identifier of the transmitted active datastream object, determines from the datastream identifier the class of active datastream object being received, and creates a new instance of the class corresponding to the datastream identifier.
    Type: Grant
    Filed: February 26, 1999
    Date of Patent: November 23, 2004
    Assignee: International Business Machines Corporation
    Inventors: Clifton Malcolm Nock, Christopher Robert Smith
  • Patent number: 6823525
    Abstract: A direct access driver solves limitations of DirectX operation under the Microsoft architecture when using multiple monitors. The direct access driver allows applications employing DirectX application program interfaces to use hardware acceleration without display errors on the monitors. Display errors can occur if multiple frame buffer addresses are returned in response to “GetFrameBufferAddress” DirectX calls. This invention returns a single address for two or more frame buffers on a display driver card by performing, without the DirectX application's knowledge, background operations that track hardware acceleration demands from two or more graphic user interfaces and frame buffers. The background operations entail constantly changing the frame buffer pointers relative to the location of offscreen DirectX application data, while one or more DirectX applications are moved in the display space from monitor to monitor.
    Type: Grant
    Filed: January 3, 2001
    Date of Patent: November 23, 2004
    Assignee: ATI Technologies Inc.
    Inventor: Tom C. Martyn
  • Patent number: 6817018
    Abstract: A method of delivering messages between application programs is provided which ensures that no messages are lost and none are delivered more than once. The method uses asynchronous message queuing. One or more queue manager programs (100) is located at each computer of a network for controlling the transmission of messages to and from that computer. Messages to be transmitted to a different queue manager are put onto special transmission queues (120). Transmission to an adjacent queue manager comprises a sending process (130) on the local queue manager (100) getting messages from a transmission queue and sending them as a batch of messages within a syncpoint-manager-controlled unit of work. A receiving process (150) on the receiving queue manager receives the messages and puts them within a second syncpoint-manager-controlled unit of work to queues (180) that are under the control of the receiving queue manager.
    Type: Grant
    Filed: May 21, 1997
    Date of Patent: November 9, 2004
    Assignee: International Business Machines Corporation
    Inventors: Paul Clarke, Peter Johnson, William Kingston, Robin Miles Drew, George Black, Roger Meli
  • Patent number: 6817019
    Abstract: The present invention discloses a method, apparatus, and article of manufacture for tracking and propagating state changes in a message-driven computer program. In accordance with the present invention, a program in the memory of a computer receives a notification signal indicating that an event has occurred and transitions a first component from a current state to a new state based on the notification signal, wherein the states are represented by discrete objects or components. The computer program propagates, to a second component subordinate to a first component representing the new state, a signal indicating the new state of the first component.
    Type: Grant
    Filed: May 31, 1996
    Date of Patent: November 9, 2004
    Assignee: International Business Machines Corporation
    Inventors: I-Shin Andy Wang, Jy-Jine James Lin
  • Patent number: 6813769
    Abstract: A component-based framework includes system services and component integration interfaces that provide a run-time environment for component-based server application in which server application components have control over the duration of their state independent of client action. The framework provides functions that a server application component calls to indicate its work for a client is complete, and its state is to be destroyed. On the component's return from the client's method call, the framework destroys the component's state thus releasing any server computer resources held by the component. This allows the server application components to be programmed so as to minimize the duration that their state remains in memory consuming server computer resources, and which enhances scalability of the server application.
    Type: Grant
    Filed: October 28, 1997
    Date of Patent: November 2, 2004
    Assignee: Microsoft Corporation
    Inventors: Rodney Limprecht, Patrick James Helland, Mohsen Al-Ghosein
  • Patent number: 6813770
    Abstract: A system and method for managing network devices. The framework may provide a suitable system for managed object data type conversions between various data description languages, such as an interface definition language (e.g., OMG IDL) and an abstract syntax notation (e.g., ASN1). This conversion facility may be used in both request and event network traffic, so common libraries may be used. Two separate libraries may be used: a converter framework library and a converter implementation library. The framework library provides a collection classes that may be used by the clients of the converter libraries. Most classes in the converter framework library are handle classes (or wrappers) to the real implementation (or body) classes in the converter implementation library. Framework classes hide the details of the real implementation classes and provide a simple, consistent interface to any data type converter via IDL.
    Type: Grant
    Filed: April 21, 2000
    Date of Patent: November 2, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Sai V. Allavarpu, Rajeev Angal
  • Patent number: 6804820
    Abstract: A modem device driver, particularly for use in a receiver/decoder (2020) for a digital broadcast system in which received signals are passed through a receiver to the receiver/decoder and thence to a television set. The receiver/decoder is controlled by a virtual machine (4007) which includes a run time engine (4008). The receiver/decoder includes a plurality of interfaces to external units, and logical driver devices for the interfaces. A device driver (500) for controlling a modem interface comprises a buffer memory (503) for receiving messages, a control memory (502) for storing control parameters, and a logic unit (501) for controlling the device driver and the flow of messages. The logic unit includes a comparator (511) for matching Event, ACK, an NACK patterns stored in the control memory against the end of messages stored in the buffer memory.
    Type: Grant
    Filed: March 31, 2000
    Date of Patent: October 12, 2004
    Assignee: Canal+Societe Anonyme
    Inventors: Jerome Meric, Jean-Bernard Gerard Maure Beuque
  • Patent number: 6795969
    Abstract: A method of establishing a process agent comprising storing a library of first software programs representing system resources, storing a second software program representing a corresponding service agent which includes pointers to associated ones of the first software programs which are represented by the service agent, storing a software program for invoking a general process, including the steps of: requesting a usage right for functional services represented by the service agent required by the general process, sending pointers to system resources required for the general process from the service agent to the software program for operating the general process, and storing the pointers sent from the service agent in association with the software program for operating the general process, and executing the software program for operating the general process using the system resources identified by the stored pointers.
    Type: Grant
    Filed: October 11, 2001
    Date of Patent: September 21, 2004
    Assignee: Mitel Corporation
    Inventors: Thomas A. Gray, Deborah L. Pinard
  • Patent number: 6792606
    Abstract: A preferred embodiment of the present invention provides an improved system and method for object persistence. The preferred embodiment facilitates the creation of persistent objects in a way that is orthogonal to class and does not require the use of persistent mixin classes. The preferred embodiment uses reference objects, which to the view of the system act as the object itself, and storage objects which persistently store the data for the persistent objets. The reference objects include pointers to the storage object, and provide address translation and indirection when accesses are to be made to the persistent object data stored in the storage object.
    Type: Grant
    Filed: July 17, 1998
    Date of Patent: September 14, 2004
    Assignee: International Business Machines Corporation
    Inventors: Steven L. Halter, Paul B. Monday