Patents Examined by John Courtenay, III
  • Patent number: 6961937
    Abstract: A method for advertising an availability of a processing resource to execute a process is provided. The method includes enabling a registry service and the processing resource to register with the registry service. The processing resource is configured to be one of numbers of network interconnected resources. Also included in the method is enabling a system controller code to find and select a suitable and available processing resource registered with the registry service to execute the process. The system controller code is configured to be executed on a computer that is networked with the number of interconnected resources. The method further includes enabling the system controller code to communicate with a selected processing resource and updating a status of the processing resource in the registry service upon a termination of executing the process.
    Type: Grant
    Filed: September 28, 2001
    Date of Patent: November 1, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Madhava V. Avvari, Satya N. Dodda, David S. Herron, Bae-Chul Kim, Gabriel R. Reynaga, Konstantin I. Boudnik, Narendra Patil
  • Patent number: 6957214
    Abstract: A system for accessing information from data sources. A user domain translates queries from users and applications for recognition by an aggregation domain, receives responses from the aggregation domain, and translates the responses for recognition by the users and applications. An aggregation domain receives translated queries from the user domain, translates the queries for recognition by a data source domain, receives responses from the data source domain, translates the responses for recognition by the user domain, and transmits the translated responses to the user domain. A data source domain receives the translated queries from the aggregation domain, identifies data sources to receive the queries, translates the queries to the data sources, receives responses from the data sources, translates the responses, and transmits the translated responses to the aggregation domain. A knowledge base the domains use to automatically function includes data models and conceptual terminology translations.
    Type: Grant
    Filed: June 22, 2001
    Date of Patent: October 18, 2005
    Assignee: The Johns Hopkins University
    Inventors: David P. Silberberg, John R. Schneider, Amy K. Karlson
  • Patent number: 6954788
    Abstract: A communication resource system and method for determining communication product capacity in a communication network based on the physical capacity of individual network components. The communication resource system compiles spare capacity information for the individual network components into information on a quantity of communication products that may be provided based on the capacity available on the individual network components. The communication resource system includes a processing coupled to an interface system. The processing system is configured to process equipment capacity information and circuit capacity information to generate the product capacity information. The interface system is configured to receive the equipment and circuit capacity information and provide the product capacity information for the processing system.
    Type: Grant
    Filed: June 26, 2002
    Date of Patent: October 11, 2005
    Assignee: Qwest Communications International, Inc.
    Inventors: Michelle R. Barnett Jordan, Henry Alcala, Nell M. Trask, Stephen John Molnar, Jr., Jason Garry Stutchbury
  • Patent number: 6954933
    Abstract: A method and apparatus is provided for providing and integrating high-performance message queues. “Contexts” are provided that allow independent worlds to be created and execute in parallel. A context is created with one or more threads. Each object is created with context affinity, allowing any thread inside the context to modify the object or process pending messages. Threads in a different context are unable to modify the object or process pending messages for that context. To help achieve scalability and context affinity, both global and thread-local data is often moved into the context. Remaining global data has independent locks, providing synchronized access for multiple contexts. Each context has multiple message queues to create a priority queue. There are default queues for sent messages and posted messages, carry-overs from legacy window managers, with the ability to add new queues on demand. A queue bridge is also provided for actually processing the messages.
    Type: Grant
    Filed: June 26, 2001
    Date of Patent: October 11, 2005
    Assignee: Microsoft Corporation
    Inventor: Jeffrey E. Stall
  • Patent number: 6954934
    Abstract: Management of links, such as URLs or other link formats, that have been embedded within blocks of data, such as data received by an E-mail application program, file transfer program, or other data transfer environment. When a block of data is received, an agent or other construct examines the block of data to identify links within the block of data. Meta-data associated with the link is extracted, and the link and associated meta-data is stored in a collective. The collective may be displayed and organized with a viewer. The viewer may be integral to an application program, such as an E-mail application program, or it may integral to an operating system, or it may be a standalone application program.
    Type: Grant
    Filed: March 15, 2001
    Date of Patent: October 11, 2005
    Assignee: Intel Corporation
    Inventor: Arvind Kumar
  • Patent number: 6954932
    Abstract: A system and a method, capable of executing a process operation by using a plurality of applications, are provided. While a corresponding relationship of data used in these applications is previously defined, a data converting unit converts data about an execution result of an application. An application initiating unit executes another application by using the converted data. The present invention has an object to provide both a system and a method, capable of controlling an execution of an application program, while data can be transferred/received among plural application programs having no specific relationship with each other. Furthermore, the present invention has another object to provide both a workflow system and a workflow method, capable of utilizing application programs which are different from each other every process previously defined in the workflow.
    Type: Grant
    Filed: March 20, 2001
    Date of Patent: October 11, 2005
    Assignee: Hitachi, Ltd.
    Inventors: Atsushi Nakamura, Hitoshi Yui, Jun Yoshida
  • Patent number: 6954849
    Abstract: An instruction pipeline in a microprocessor includes one or more of the pipelines maintaining a return buffer. Upon detecting a call instruction, a pipeline will push the return address onto its return buffer. The pipeline will then determine if the call instruction was detected by a second pipeline and will send the return address to the second pipeline if the call was not detected by the second pipeline. Upon detecting a return instruction, the pipeline will pop the return address at the top of its return buffer. The return address may then be used in the instruction pipeline. The pipeline will send a request to a third pipeline to fill its return buffer with entries from the third pipeline's return buffer. The pipeline will determine if the return instruction was detected by a second pipeline and will send the return address at the top of its return buffer to the second pipeline if the return was not detected by the second pipeline.
    Type: Grant
    Filed: February 21, 2002
    Date of Patent: October 11, 2005
    Assignee: Intel Corporation
    Inventors: John Alan Miller, Michael J. St. Clair
  • Patent number: 6954922
    Abstract: Methods, systems, and articles of manufacture consistent with the present invention time profile program threads using data corresponding to states of the registers of a processor(s) executing the threads. Methods, systems, and articles of manufacture consistent with the present invention determine whether a selected thread of execution of a multi-threaded program is running by suspending execution of the multi-threaded program, retrieving register data corresponding to the selected thread, computing register information based on the register data, comparing the computed register information with stored register information from a previous suspension of the multi-threaded program, and regarding the selected thread as running if the computed register information is different from stored register information.
    Type: Grant
    Filed: April 29, 1998
    Date of Patent: October 11, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Sheng Liang
  • Patent number: 6952693
    Abstract: A method for mining association rules in a database that is divided into multiple partitions associated with respective computing nodes. The method includes transmitting messages among the nodes with respect to local support of an itemset in the respective partitions of the database. Responsive to the messages transmitted by a subset of the nodes, the itemset is determined to be globally frequent in the database before the nodes outside the subset have transmitted the messages with respect to the local support of the itemset in their respective partitions. An association rule is computed with respect to the itemset, responsive to having determined the itemset to be globally frequent.
    Type: Grant
    Filed: February 22, 2002
    Date of Patent: October 4, 2005
    Inventors: Ran Wolff, Assaf Schuster
  • Patent number: 6952706
    Abstract: A method for providing stand-in objects, where relationships among objects are automatically resolved in an object oriented relational database model without the necessity of retrieving data from the database until it is needed. A “fault” class is defined, as well as fault objects whose data haven't yet been fetched from the database. An object that's created for the destination of a relationship whenever an object that includes the relationship is fetched from the database. When an object is fetched that has relationships, fault objects are created to “stand-in” for the destination objects of those relationships. Fault objects transform themselves into the actual enterprise objects—and fetch their data—the first time they're accessed. Subsequently, messages sent to the target objects are responded to by the objects themselves. This delayed resolution of relationships occurs in two stages: the creation of a placeholder object for the data to be fetched, and the fetching of that data only when it's needed.
    Type: Grant
    Filed: September 5, 2002
    Date of Patent: October 4, 2005
    Assignee: Apple Computer
    Inventors: Richard Williamson, Linus Upson, Daniel Willhite, Jack Greenfield
  • Patent number: 6952824
    Abstract: A method of processing network data in a network processor includes using three or more threads to process a beginning portion, a middle portion, and an end portion of data packet. The first thread processes the beginning portion; one or more middle threads process the middle portion, and a last thread processes the end portion. First information is indirectly passed from the first thread to the last thread via a first buffer with the middle threads progressively updating the first information. Second information is directly passed from the first thread to the last thread via a second buffer.
    Type: Grant
    Filed: November 10, 2000
    Date of Patent: October 4, 2005
    Assignee: Intel Corporation
    Inventors: Donald F. Hooper, Matthew J. Adiletta, Gilbert M. Wolrich
  • Patent number: 6952830
    Abstract: System and method to uniformly access devices. The method may include receiving at least one high-level request regarding at least one designated device of a plurality of devices from an application program, translating the high-level request to one or more low-level requests, and communicating the low-level request(s) to a device driver associated with one or more devices. The method may further include receiving a low-level message from a device, translating the low-level message to a high-level message, and forwarding the high-level message to the application program that sent the high-level request. The system may include a processor and a memory coupled to a bus, an application program, and a multiplexor to forward requests from the application program to a plurality of device drivers for corresponding devices, and to forward information received from the device drivers regarding the devices to the application program.
    Type: Grant
    Filed: August 16, 2001
    Date of Patent: October 4, 2005
    Assignee: Occam Networks, Inc.
    Inventors: Kedar Madineni, Koral Ilgun
  • Patent number: 6950873
    Abstract: An apparatus and method for port sharing among a plurality of server processes are provided. The apparatus and method provide an intermediate layer between the communication port and the server processes. This intermediate layer provides a port mapping such that data messages received via a shared communication port are mapped to separate ports based on the domain of the data message. Each server process is configured to listen to a different virtual communication port. The mapping of the present invention maps data messages received in the shared communication port to one of these virtual communication ports based on the domain to which the data message belongs. This mapping is also performed with outgoing messages from the server as well.
    Type: Grant
    Filed: August 2, 2001
    Date of Patent: September 27, 2005
    Assignee: International Business Machines Corporation
    Inventors: Vinit Jain, Dwip N. Banerjee
  • Patent number: 6950923
    Abstract: A memory architecture in accordance with an embodiment of the present invention improves the speed of method invocation. Specifically, method frames of method calls are stored in two different memory circuits. The first memory circuit stores the execution environment of each method call, and the second memory circuit stores parameters, variables or operands of the method calls. In one embodiment the execution environment includes a return program counter, a return frame, a return constant pool, a current method vector, and a current monitor address. In some embodiments, the memory circuits are stacks; therefore, the stack management unit to cache can be used to cache either or both memory circuits. The stack management unit can include a stack cache to accelerate data transfers between a stack-based computing system and the stacks. In one embodiment, the stack management unit includes a stack cache, a dribble manager unit, and a stack control unit.
    Type: Grant
    Filed: January 17, 2003
    Date of Patent: September 27, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: James Michael O'Connor, Marc Tremblay
  • Patent number: 6951023
    Abstract: The present invention relates to logic systems which use a message-based API, and in particular to telecommunication systems. The present invention aims to overcome drawbacks in the way in which data is sent between, for example, a gatekeeper unit and a service application running on a service platform. By providing a formatter or formatter units on the gatekeeper units, incoming messages may be pre-processed thereby reducing the bandwidth requirements for data transfer. Each formatter unit may be specific to a service application, and ensures that data arrives at the service platform in the appropriate format.
    Type: Grant
    Filed: October 29, 2001
    Date of Patent: September 27, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Sebastien Bouat, Thierry Quervel
  • Patent number: 6951016
    Abstract: A code server operates in a data processing system having an operating system or environment, such as OS/2 or Windows, which processes coded programs in discrete code modules. The code server maintains linkage information between the various code modules forming an association representing all the linkage data for the entire program. This information is gathered by way of searching through the files of the computer network or by direct insertion into the code module information table. Once the associative data has been gathered, a coded program may be retrieved quickly and efficiently without the need for repetitive on-line searching because the user need refer only to the code server which contains a look-up tables storing the data representing the associative information.
    Type: Grant
    Filed: January 16, 2003
    Date of Patent: September 27, 2005
    Inventor: Stephen F. B. Pickett
  • Patent number: 6951012
    Abstract: A method for increasing debug log performance uses pre-logging subroutines, i.e., helper methods, to pass multiple elements of a string message as separate parameters. The helper methods typically determine whether a debug logging system is enabled at a specific logging level before allocating memory or CPU resources for string concatenation. If the debug logging system is disabled, the method returns to the client program without allocating resources to concatenate and log the message, thus significantly increasing debug log performance.
    Type: Grant
    Filed: October 2, 2001
    Date of Patent: September 27, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Vernon E. McGeorge, Jr.
  • Patent number: 6948173
    Abstract: A graphical method for sequencing computer control task uses objects to represent the task to be performed by the computer. The objects are placed in a directional field having a directional attribute which specifies how the tasks are to be sequenced. The sequence of tasks to be performed collectively defines a procedure. When the procedure is initiated, the computer automatically sequences the task within the procedure based on the relative special location of the task objects and the directional attribute. The sequence can be modified by changing the relative location of the task objects or by changing the directional attribute.
    Type: Grant
    Filed: August 4, 1997
    Date of Patent: September 20, 2005
    Inventor: Fred Steven Isom
  • Patent number: 6944862
    Abstract: A method (300) and system for scheduling execution of activities, such as jobs of a batch processing. An estimated duration of each job is predicted (365-367) as a running average of the measured durations of completed instances of the job executed previously. The method of the invention uses historical data to identify (375-385) repeatable patterns for the job duration; for example, a decision tree is inducted using the completed instances of the job as training examples. The decision tree is applied for classifying (325) each new instance of the job to be executed, according to its planned time of execution; the estimated duration of the job is revised (330) using an adjustment factor associated with the class assigned to the new instance of the job.
    Type: Grant
    Filed: January 8, 2002
    Date of Patent: September 13, 2005
    Assignee: International Business Machines Corporation
    Inventors: Sergio Caggese, Scot MacLellan
  • Patent number: 6944699
    Abstract: A virtual machine monitor (VMM) is included in a computer system that has a protected host operating system (HOS). A virtual machine running at least one application via a virtual operating system is connected to the VMM. Both the HOS and the VMM have separate operating contexts and disjoint address spaces, but are both co-resident at system level. A driver that is downloadable into the HOS at system level forms a total context switch between the VMM and HOS contexts. A user-level emulator accepts commands from the VMM via the system-level driver and processes these commands as remote procedure calls. The emulator is able to issue host operating system calls and thereby access the physical system devices via the host operating system. The host operating system itself thus handles execution of certain VMM instructions, such as accessing physical devices.
    Type: Grant
    Filed: November 27, 2002
    Date of Patent: September 13, 2005
    Assignee: VMware, Inc.
    Inventors: Edouard Bugnion, Scott W. Devine, Mendel Rosenblum