Patents Examined by George L. Opie
  • Patent number: 6973649
    Abstract: A method and apparatus for utilizing graphical representations of programming objects to reflect the state of programming objects. State reflection is unique in that it reflects the state of programming objects at the time of programming, rather than during execution, in a visual programming language. The visual programming language comprises a set of graphic aspects which are associated with data element states via a set of graphic aspect references. Each programming object used in the visual programming language comprises a set of data elements. The programming objects may be related via super and subclass objects structures. The method detects when a data element has changed its state and reflects that state change in the visual representation of the programming objects and their respective graphic aspects. A list of graphic aspect references points to a number of graphic aspects which may or may not be applicable to the detected state change.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: December 6, 2005
    Assignee: International Business Machines Corporation
    Inventor: Donald P. Pazel
  • Patent number: 6968372
    Abstract: A system and method of synchronizing at least one variable such as a counter among a network of distributed computers where the computers communicate via asynchronous message passing. The distributed computers are organized as nodes in a tree. Each computer in the tree is capable of functioning as a parent, child, or both. For each variable to be synchronized, each parent receives a contribution from a child which includes contributions from any children of the child and returns other contributing values to the child. The child then updates the local value of the variable with the returned contributing values. The returned contributing values include contributions to the variable from all computers in the tree other than the child and other than any children subordinate to the child in the tree. Each computer can have multiple children.
    Type: Grant
    Filed: October 17, 2001
    Date of Patent: November 22, 2005
    Assignee: Microsoft Corporation
    Inventors: Donald Thompson, Ernest R. Ewert
  • Patent number: 6957438
    Abstract: An application programming interface for use in a network device includes at least one control module that is capable of controlling a forwarding plane of the network device. In particular, the network device forwards packets across a network, and includes the forward plane for processing data packets. The application programming interface includes an input module that receives function calls, at least one control module (mentioned above) that receives input control data via the function calls, and an output module that forwards output control data from the control module. The control module produces the output control data based upon the input control data. The output control data is capable of controlling execution of the forwarding plane.
    Type: Grant
    Filed: March 24, 2000
    Date of Patent: October 18, 2005
    Assignee: Nortel Networks Limited
    Inventors: Franco Travostino, Bradley Cain
  • 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: 6922835
    Abstract: A small footprint device can securely run multiple programs from unrelated vendors by the inclusion of a context barrier isolating the execution of the programs. The context barrier performs security checks to see that principal and object are within the same context or to see that a requested action is authorized for an object to be operated upon. Each program or set of programs runs in a separate context, however, one context has access to all program modules without context barrier constraints.
    Type: Grant
    Filed: January 22, 1999
    Date of Patent: July 26, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Joshua Susser, Mitchel B. Butler, Andy Streich
  • Patent number: 6880157
    Abstract: The present invention provides a universal information appliance management system capable of utilizing a distributed object system without regard to whether the appliance is embodied as a hardware device or embodied as software capable of being executed by any other hardware device such that the hardware device is indistinguishable from the software device. In addition, the invention provides a virtual reality interface including a dynamic virtual reality object capable of adapting to interaction by the user. Additionally, the invention provides a system and method for providing distributed functionality over a network including receiving a request to perform a task on a first digital information appliance, the task requiring a resource not included on the first digital information appliance. The digital information appliance locates a second digital information appliance over a network, the second digital information appliance including the resource.
    Type: Grant
    Filed: April 4, 2000
    Date of Patent: April 12, 2005
    Assignee: Gateway, Inc.
    Inventor: Allan Havemose
  • Patent number: 6859926
    Abstract: An apparatus and method for performing workload management is provided. In particular, an apparatus and method for performing workload management using class shares and tiers is provided. In the apparatus and method, each process is associated with a particular class of workload. Each class has an associated number of shares representing the importance of the class relative to other classes. Each class, in turn, is associated with a particular tier of workload importance. Classes of processes compete with other classes of processes in their same tier for system resources based on the number of shares that they have. These shares are representative of the percentage of the system resource the process is provided relative to the other classes in the same tier. Classes in one tier compete with classes in other tiers for system resources based on the priority assigned to the tiers.
    Type: Grant
    Filed: September 14, 2000
    Date of Patent: February 22, 2005
    Assignee: International Business Machines Corporation
    Inventors: Larry Bert Brenner, Luke Matthew Browning, Kenneth Bernard Rozendal
  • Patent number: 6802064
    Abstract: In the disclosed data transfer request processing scheme, data transfer requests with deadlines for completing requested data transfers are classified into first class data transfer requests and second class data transfer requests. Then, the processing of first class data transfer requests is scheduled according to a first scheduling policy in which a completion of data transfers requested by the data transfer requests within the deadlines specified for the data transfer requests is a primary key factor in determining an order of processing, while the processing of second class data transfer requests is scheduled according to a second scheduling policy in which a reduction of amounts of the mechanical actions required in carrying out data transfers requested by the data transfer requests is a primary key factor in determining an order of processing.
    Type: Grant
    Filed: March 24, 2000
    Date of Patent: October 5, 2004
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Hiroshi Yao, Tatsunori Kanai
  • Patent number: 6799316
    Abstract: Initially, a SMI trap detects an application accessing a memory location associated with a physical hardware device. The SMI trap receives the device address for the address bus and compares that address with memory addresses for hardware devices being virtualized by virtual device simulators. If the address matches an available virtual device, the SMI caches the address, hooks and caches the corresponding IO instruction for the memory address and issues a SMI. A SMI handler receives the SMI and determines which virtual device simulator to call. Once activated by the SMI handler, the virtual device simulator interacts with the application and then returns control to the processor.
    Type: Grant
    Filed: March 23, 2000
    Date of Patent: September 28, 2004
    Assignee: International Business Machines Corporation
    Inventors: Maximino Aguilar, Sanjay Gupta, Roy Moonseuk Kim, James Michael Stafford
  • Patent number: 6766347
    Abstract: A computer system includes a real-time interrupt that causes the operating system to determine which isochronous tasks are pending. In one embodiment, applications that include isochronous tasks are certified to be well-behaved and the operating system will only initiate applications that are known to be well-behaved by checking a list of certified applications. The operating system will not initiate an application if insufficient resources are available for executing the tasks of the application. Each application informs the operating system of an execution rate and a maximum duration of its isochronous tasks. Prior to initiating an application, the operating system verifies that resources are available to execute the isochronous tasks of the application. The operating system includes a non-maskable interrupt to terminate isochronous tasks. Termination may be necessary if an isochronous task fails to execute within its specified maximum duration.
    Type: Grant
    Filed: June 9, 1998
    Date of Patent: July 20, 2004
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Dale E. Gulick
  • Patent number: 6725188
    Abstract: An operating system is simulated to run in conjunction with a native operating system, allowing processes originally developed for the operating system being simulated to be ported to the environment of the native operating system with a minimum of effort. Ported processes will consume resources of both operating systems, the native operating system and the simulated operating system, that are cleaned or otherwise removed when the ported process ends by setting up a monitoring facility to detect when the ported process ends. When that occurs, the simulated operating system resources are cleaned by a cleanup process that impersonates the ported process that ended. The cleanup process is also monitored, so that when it ends, additional cleanup processes are called into action to cleanup the system resources of the remaining simulated operating system used by the ported process that ended, and the system resources used by the cleanup process.
    Type: Grant
    Filed: April 3, 2000
    Date of Patent: April 20, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Randall Ko Shingai, Jeffrey D. Merrick, James R. Smullen
  • Patent number: 6708224
    Abstract: Methods, systems and computer program products are provided which coordinate operations for a plurality of interrelated tasks executing on a computer using actual state objects and desired state objects. For each event including coordination between two of the plurality of interrelated tasks, a first (or initiator) task initiates operations by a second (or executor) task to carry out a desired sequence of operations. The initiator task sets a desired state object to the desired state and submits a request to the executor task. The executor task, in turn, operates on the request in order to update an actual state object to the desired state stored in the desired state object by the initiator task. Write control over the desired state object is therefore granted to the initiator task while write control over the actual state object is granted to the executor task.
    Type: Grant
    Filed: January 19, 1999
    Date of Patent: March 16, 2004
    Assignee: NetIQ Corporation
    Inventors: William Tsun, Vikas Chandra, John Lee Wood, Peter James Schwaller
  • Patent number: 6694345
    Abstract: External job scheduling capabilities are provided to a local job control system lacking or having insufficient job scheduling capabilities. This is accomplished by encapsulating running of a user job by the local job control system (LJCS) within running of a marker job at a node management system, which is responsive to an external resource scheduler. The technique includes starting a marker job by the resource scheduler external to the local job control system, wherein the marker job corresponds to a user job to be run by the LJCS; responsive to starting of the marker job, starting the user job by the LJCS; and upon termination of the user job, ending the marker job started by the resource scheduler, wherein starting of the user job by the LJCS is responsive to the resource scheduler's starting of the marker job and wherein ending of the marker job is responsive to termination of the user job.
    Type: Grant
    Filed: October 5, 1999
    Date of Patent: February 17, 2004
    Assignee: International Business Machines Corporatioin
    Inventors: David Paul Brelsford, Joseph Francis Skovira
  • Patent number: 6671707
    Abstract: A method for practical concurrent copying garbage collection offering minimal thread blocking times. The method comprises achieving dynamic consistency between objects in an old memory space and objects in a new memory space. Threads are allowed to progress during garbage collection and threads are flipped one at a time. No read barrier is required.
    Type: Grant
    Filed: October 19, 1999
    Date of Patent: December 30, 2003
    Assignee: Intel Corporation
    Inventors: Richard L. Hudson, J. Eliot B. Moss
  • Patent number: 6654780
    Abstract: Managing processor resources in a non-dedicated computer system. An amount of a processor resource is allocated to a real-time application of the computer system. The amount does not exceed a limit chosen for a group of real-time applications, wherein the group includes the real-time application being allocated the resource. A selected amount of the processor resource remains available to execute other types of applications and work on the system. During processing of the real-time application, use of the processor resource does not exceed a chosen maximum value, thereby ensuring the processor resource is not monopolized by the real-time application and allowing other types of work to be processed on the system.
    Type: Grant
    Filed: March 28, 1997
    Date of Patent: November 25, 2003
    Assignee: International Business Machines Corporation
    Inventors: Catherine Krueger Eilert, Peter Bergersen Yocom
  • Patent number: 6629153
    Abstract: A method and apparatus for providing peer ownership of shared objects. In the invention, shared objects are implemented as a shell object with shared object state stored in shared memory. Each process that shares the object is granted a shell object within their process space which points to the object state in shared memory. All processes share equal access to the shared object, with no single process determining the lifetime of the shared object. The shutdown of any single process results in the termination of that process's respective shell object, without the necessary termination of the shared object state in shared memory. There is therefore no shutdown problem. Further, performance is enhanced because all processes access the shared object state in shared memory in what is essentially an in-process call. In an embodiment of the invention, a peer ownership manager acts as the object server for all shared objects whose object state resides in shared memory.
    Type: Grant
    Filed: September 17, 1997
    Date of Patent: September 30, 2003
    Assignee: Trilogy Development Group, Inc.
    Inventors: Neeraj Gupta, Andrew Price
  • Patent number: 6598069
    Abstract: An exemplary embodiment of the invention is a method for assigning resources in a system configurable into logical partition clusters. The method includes defining at least one logical partition cluster. A LPC name index record storing a LPC name index for each of a plurality of resources is provided. The LPC name index record is indexed by a resource identifier. A LPC name record storing at least one LPC name is also provided. At least one LPC name index points to a LPC name in the LPC name record and each LPC name identifies an LPC. A resource is assigned to a group in response to the LPC name index record and the LPC name record.
    Type: Grant
    Filed: September 28, 1999
    Date of Patent: July 22, 2003
    Assignee: International Business Machines Corporation
    Inventors: William J. Rooney, Harry M. Yudenfriend, Jeffrey P. Kubala
  • Patent number: 6591414
    Abstract: A binary program conversion apparatus capable of converting an original binary program into a new binary program which runs at higher speed in a target computer having a cache memory. The binary program conversion apparatus comprises an executing part, a generating part and a producing part. The executing part executes the original binary program. The generating part generates executed blocks information indicating first instruction blocks which are executed by the executing part. The producing part produces, based on the executed blocks information generated by the generating part, the new binary program which contains second instruction blocks corresponding to the plural of the first instruction blocks and which causes, when being executed in the computer, the computer to store second instruction blocks corresponding to the first instruction blocks executed by the executing part at different locations of the cache memory.
    Type: Grant
    Filed: October 3, 1997
    Date of Patent: July 8, 2003
    Assignee: Fujitsu Limited
    Inventors: Yoshinobu Hibi, Hidefumi Nishi, Toshiki Izuchi, Masaharu Kitaoka
  • Patent number: 6553429
    Abstract: A conditional thunk utility employing an assembler-level direct-branch thunk technique. In a condition-check alternative, the conditional thunk utility performs a condition check followed by a direct-branch jump. The condition-check methodology is implemented using an assembler-level direct-branch technique, and the conditional thunk utility does not utilize the stack to queue the arguments of a function call. Thus, the stack is not altered from its desired condition just prior to executing the API function call. The condition-check alternative checks the thunk condition for each function call and, for this reason, may be used when the thunk condition can vary relatively frequently while the host computer system is running. In a jump-table alternative, the conditional thunk utility performs an assembler-level jump table check followed by a direct jump to a target address.
    Type: Grant
    Filed: June 5, 1998
    Date of Patent: April 22, 2003
    Assignee: Microsoft Corporation
    Inventors: Brian D. Wentz, James Edward Walsh
  • Patent number: 6539415
    Abstract: The system and method of the present invention provides a structure and method for implementing a configurable and scalable A/V system that enables a user to perform processes across one or more A/V processing devices coupled together via a network. In one embodiment, a plurality of configurable A/V systems are coupled via a network. At least two of the A/V systems include digital signal processors (DSPs) that. are programmable. The A/V systems also include other resources, such as data storage, synchronizers, analog to digital converters, digital to analog converters, etc., to support the variety of audio/video processing to be performed. In one embodiment, the user inputs at least one task to performed. The task is broken down into basic processing components or primitives. These primitives are defined in a processor descriptor block maintained by the system. The processor descriptor block indicates the processing requirements and distributability of the process across the network.
    Type: Grant
    Filed: September 24, 1997
    Date of Patent: March 25, 2003
    Assignees: Sony Corporation, Sony Pictures Entertainment, Inc.
    Inventor: James Mercs