Patents Examined by Sue Lao
  • Patent number: 6782538
    Abstract: A system for efficiently generating keys for subsequently objects during object creation and for finding and activating objects using the generated keys in an object oriented system includes one or more processors, a storage system, one or more I/O controllers, a system bus, operatively connecting the processors, the storage system and the I/O controllers, a system control program for controlling the operation of the system, and an extensible instance manager which generates keys and manages instances of objects under the control of the system control program.
    Type: Grant
    Filed: December 14, 1995
    Date of Patent: August 24, 2004
    Assignee: International Business Machines Corporation
    Inventors: George Prentice Copeland, Geoffrey Martin Hambrick, Robert Howard High, Jr.
  • Patent number: 6766518
    Abstract: In an interface-based binary object system capable of supporting multiple interfaces into objects created by class templates, a relationship is defined as a pair of complementary collections on two separate interfaces, each interface found on separate objects. A link between objects is formed when an interface of one object lists an object supporting the related interface included in the object and vice versa. The collections may be of objects supporting the related interfaces or may be of specific relationship objects leading to objects supporting the related interfaces. The collections are potentially multi-valued entities that enable relationships to be established between objects according to one-to-one, many-to-one, and many-to-many architectures. By implementing a specific relationship object, behavior may be imparted to the relationship itself thereby providing more robust system behavior.
    Type: Grant
    Filed: February 3, 2000
    Date of Patent: July 20, 2004
    Assignee: Microsoft Corporation
    Inventors: Philip Alan Bernstein, David R. Shutt
  • Patent number: 6763454
    Abstract: A system for allocating resources for use by devices of a computer. Device information for the devices of the computer is collected to uniquely identify the devices and to describe the device characteristics associated with the operation of those devices with the computer. A list of device configurations is constructed in response to the collection of device information. Each device is represented by at least one device configuration, which defines the resource element requirements for the corresponding device. Computer resources, which support the functions of the devices within the computer, are allocated based upon the device configurations and the availability of the desired resources. This allocation process prevents a potential conflicting use of computer resources by the installed devices.
    Type: Grant
    Filed: September 21, 1995
    Date of Patent: July 13, 2004
    Assignee: Microsoft Corp.
    Inventors: Marc D. Wilson, Ralph A. Lipe, Pierre-Yves Santerre
  • Patent number: 6760909
    Abstract: A virtual memory system includes a hardware-implemented translation lookaside buffer (HTLB) as well as a software-implemented translation lookaside buffer (VTLB). The VTLB is in the system's unmapped memory. The system further includes a plurality of address maps, corresponding to an operating system kernel and to individual tasks executing within the system. The kernel has an address space which includes both mapped and unmapped memory. The address maps corresponding to the individual tasks are stored in the mapped memory of the kernel's address space. The address map corresponding to the kernel itself, however, is stored in the kernel's unmapped memory. HTLB misses are handled by referring to the VTLB. VTLB misses are handled by referring to an appropriate one of the address maps. The code for handling these misses resides in unmapped memory of the kernel's address space. This arrangement prevents recursive TLB misses, without requiring permanent or “wired” VTLB entries.
    Type: Grant
    Filed: July 14, 1998
    Date of Patent: July 6, 2004
    Assignee: Microsoft Corporation
    Inventors: Richard P. Draves, Gilad Odinak
  • Patent number: 6757905
    Abstract: A system and method provide for synchronous operation of linked command objects in a general purpose software application. The software application provides a user with a variety of operations that manipulate available data objects. The software application manages the data objects in a number of contexts. Each context manages the existence and execution of a number of command objects. Each command object operates on one or more data objects in its context. To support synchronous operations that affect the state of data objects in more than one context, command objects are linked to each other. When one command object is executed, the context of the command object identifies a command object linked to the executed command object and initiates the execution of the linked command object via the context that manages that command object. This synchronization allows for synchronous undo and redone operations. The delete states of the command objects are also synchronized.
    Type: Grant
    Filed: September 19, 2000
    Date of Patent: June 29, 2004
    Assignee: Apple Computer, Inc.
    Inventors: Gregory S. Friedman, Thomas W. Becker
  • Patent number: 6757895
    Abstract: A method for selecting options for a virtual machine in a data processing system. The browser provides an interface in which the interface allows for selection of options for use by the virtual machine. A selection of an option is received for use by the virtual machine. The selection of the option is stored, wherein the selection of the option is used by the browser when initializing the virtual machine.
    Type: Grant
    Filed: July 31, 1998
    Date of Patent: June 29, 2004
    Assignee: International Business Machines Corporation
    Inventors: Bruce Anthony Beadle, Michael Wayne Brown, Michael Aaron Kaply, Kelvin Roderick Lawrence, Douglas Scott Rothert, Robert Michael Russin
  • Patent number: 6735770
    Abstract: A method and apparatus are disclosed for accessing messages in a message store in a multi-threaded system with reduced contention by first determining whether a process is available for accepting a new connection and responsibility for that connection is transferred to that process, which includes one or more threads. One thread is selected and initialized which then manages client requests for accessing messages or data in the message store. The thread is terminated when a termination request is received or when a predetermined condition has been met. Also provided is a computer system for accessing messages in a message store in a multi-threaded environment with reduced contention. Clients are connected to a connection request router that contains a parent process for routing client requests for manipulating data. Also included are request handlers associated with the request router where the request handlers include a multiplicity of active connection threads.
    Type: Grant
    Filed: April 27, 1998
    Date of Patent: May 11, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: William J. Yeager, Frederic C. Batty
  • Patent number: 6728746
    Abstract: A computer system includes at least one real machine provided with a machine controller and/or a plurality of virtual machines provided with a machine controller and an operating system for a virtual machine, the real machine and the plurality of virtual machines are connected to a shared memory.
    Type: Grant
    Filed: December 15, 1995
    Date of Patent: April 27, 2004
    Assignee: Fujitsu Limited
    Inventors: Hitoshi Murase, Sunao Takahira, Toshinori Hiraishi, Masaru Saito, Kenichiro Shimogawa, Katsunori Hiraoka, Koshi Horizaki, Kenichi Tsukamoto, Yumi Ochiai
  • Patent number: 6725280
    Abstract: A mechanism is disclosed for constructing dispatch tables which enable transitive method override. A dispatch table for a class C (wherein C is within a package P and is a subclass of superclass S) is constructed as follows. First, the S dispatch table is copied and is used as the starting point for the C dispatch table. Then, for each locally declared method m in C, the method m is checked to determine whether it has been marked public/protected. If so, then the S dispatch table is checked for a public/protected entry corresponding to a method having the same name as method m. If such an entry is found, then the corresponding entry in the C dispatch table is overridden. Otherwise, a new entry is allocated in the C dispatch table and is marked public/protected. In addition, the S dispatch table is checked for a package private (private to package P) entry corresponding to a method having the same name as method m.
    Type: Grant
    Filed: August 13, 1999
    Date of Patent: April 20, 2004
    Assignee: Sun Microsystems, Inc.
    Inventor: Gilad Bracha
  • Patent number: 6724875
    Abstract: A flexible network platform and call processing system are disclosed. The call processing system includes a particular call processing architecture and a resource managing system which allow new services to be implemented rapidly. An OAM&P subsystem and systems for performing data provisioning and service creation are each provided for use with the disclosed call processing system. The call processing system may include a call processing mechanism for performing call processing in accordance with defined service logic, and call processing resources connected to the call processing mechanism. The call processing resources are designed so that any service logic unit may be linked to any particular event that might occur in connection with the call processing system. A resource managing system is also disclosed for assigning resources for use by a call processing system. A resource is assigned in response to a request made by the call processing system specified capability.
    Type: Grant
    Filed: June 9, 1997
    Date of Patent: April 20, 2004
    Assignee: SBC Technology Resources, Inc.
    Inventors: Thomas L. Adams, Will R. Chorley, Philip C. Cunetto, James M. Doherty, John E. LeMay, Stephen M. Mueller, Satish Parolkar, Timothy P. Schroeder, Charles B. Slaten
  • Patent number: 6718399
    Abstract: An Object Procedure Messaging, or OPM, facility in the form of an internal and external Remote Procedure Call, or RPC, facility uses client and server stubs to transfer messages on both local and remote platforms to reduce multiple calls when a local server object is not available when first called by a local client object. A local memory queue is used to store the message calls for local objects so that the client and server stubs shield the client and server objects from the details of communications therebetween for both local and remote message calls.
    Type: Grant
    Filed: June 10, 1996
    Date of Patent: April 6, 2004
    Assignee: Candle Distributed Solutions, Inc.
    Inventors: Aubrey Chernick, Sam Greenblatt
  • Patent number: 6714960
    Abstract: A precise earnings-based time-share scheduler schedules multiple jobs in a computer system by apportioning earnings, at scheduler ticks. Earnings are apportioned to jobs based on actual time a job spent in a queue requesting execution on a central processing unit (CPU) in the computer system between scheduler ticks and amounts of time jobs ran on the CPU between scheduler ticks. At the end of a time slice, a job is selected for execution on the processor based on earnings apportioned to each job.
    Type: Grant
    Filed: November 20, 1996
    Date of Patent: March 30, 2004
    Assignee: Silicon Graphics, Inc.
    Inventors: Nawaf K. Bitar, Robert M. English, Rajagopal Ananthanarayanan
  • Patent number: 6715147
    Abstract: Multiple applications that conform to a standard are accessed by a single computer. An abstract class is created with defined Data Objects and desired functions. For each of the services that will conform to the standard interface, subclasses of the abstract class are then created.
    Type: Grant
    Filed: March 31, 1997
    Date of Patent: March 30, 2004
    Assignee: International Business Machines Corporation
    Inventor: Kevin Spencer Barker
  • Patent number: 6704765
    Abstract: A certain number of agents and tokens are created. A first agent that is assigned a request must obtain a token to process the request. The number of agents which may concurrently process requests are limited by preventing an agent from processing a request unless the agent has an assigned token. An additional agent is created after assigning the token to the first agent, provided that an existing agent is not available to wait for a request, and an unassigned token is available for the additional agent. A certain minimum number of agents is defined and an agent is automatically eliminated when the agent completes a request, provided that the number of agents that are assigned tokens exceeds the minimum number of agents.
    Type: Grant
    Filed: December 14, 1994
    Date of Patent: March 9, 2004
    Assignee: International Business Machines Corporation
    Inventors: David Yu Chang, George Prentice Copeland, Ambuj Goyal, Marc Gregory Smith
  • Patent number: 6704764
    Abstract: The present invention is a distributed, load balanced, fault tolerant implementation of the servlet interface. The servlet interface includes a unique JVM or instance of the SSC for each servlet thread. Hence, the interface is a system of independent programs where each is executing in its own addressable space. Since the servlet interface distributes work to multiple independent address space isolated processes, a given failure will be confined to a single process and due to the distribution of work, the present invention provides for work load balancing and scalability.
    Type: Grant
    Filed: July 14, 1998
    Date of Patent: March 9, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Michael Jay Ottati
  • Patent number: 6701428
    Abstract: An automatic method and apparatus for providing services on a computer system. A set of services is established providing different functionality for the computer system. With each of the set of services an attribute is stored for identifying characteristics of the function of each of the set of services. Then, the first set of services can be retrieved by a first set of attributes which is specified irrespective of any locales which may be defined in the computer system. Thus, characteristics or attributes of most importance to a service may be used to describe it and used for retrieval of such services. The establishing of the first set of services includes building a structure which references each of the first set of services. Retrieving may include maintaining a reference to one of the services in the structure and iterating through the structure in order to retrieve a subsequent one of the services.
    Type: Grant
    Filed: April 28, 1997
    Date of Patent: March 2, 2004
    Assignee: Apple Computer, Inc.
    Inventors: John Harvey, III, Andrew Michael Daniels, William James Saunders
  • Patent number: 6697877
    Abstract: A method and apparatus for managing relationships among objects in a distributed object environment includes a method and apparatus for determining whether two or more object references refer to identical objects; a method and apparatus for providing a unique identifier for an object; a method and apparatus for checking role types for the formation of relationships; and a method and apparatus for caching role and object locations in roles in a relationship. In the method and apparatus for determining whether two or more object references refer to the same object, a unique object identifier is compared to determine if the objects referred to by the object references are identical. The unique identifier is provided by concatenating information identifying the machine address of the process that created the object in addition to the process ID, the time of creation and a process counter.
    Type: Grant
    Filed: July 10, 1997
    Date of Patent: February 24, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Bruce E. Martin, Jefferson A. Dinkins, Mark W. Hapner
  • Patent number: 6697878
    Abstract: A computer having a remote procedure call (RPC) mechanism or an object request broker (ORB) mechanism in a distributed computing environment, is constructed comprising a physical memory, a data readout unit for reading out data stored in the physical memory, and a remote direct memory access (RDMA) unit for transferring the data read out by the data readout unit, directly to a physical memory included in a communicating opposite computer which is connected to the particular computer itself through a network, thereby to shorten a delay which is expended on the data transfer between the computers.
    Type: Grant
    Filed: January 4, 1999
    Date of Patent: February 24, 2004
    Assignee: Fujitsu Limited
    Inventor: Yuji Imai
  • Patent number: 6681239
    Abstract: A multi-tasking computer operating system allocates a respective virtual address space to each task. A portion of virtual address space is reserved as a shared address space (SAS) region, the SAS region occupying the same range of virtual addresses in the virtual address space of each task. Certain classes of data intended for sharing among multiple tasks are assigned unique and persistent addresses in the range of the shared address space region. Preferably, certain facilities are added to a conventional base operating system to support the SAS region and associated function. These include a join facility for initiating a task to the SAS region, an attach facility for attaching blocks of memory within the SAS region, and a paging facility for retrieving a page within the SAS region from storage. In this manner, it is possible for a multi-tasking multiple virtual address space computer system to assume the advantages of a single level store computer system when performing certain tasks.
    Type: Grant
    Filed: December 23, 1996
    Date of Patent: January 20, 2004
    Assignee: International Business Machines Corporation
    Inventors: Steven Jay Munroe, Scott Alan Plaetzer, James William Stopyro
  • Patent number: 6678744
    Abstract: Methods and systems for optimally controlling the operation of object oriented computer software applications use what we call “application wrappers”. An application wrapper is a software application that gives programmers the ability to extend their programs' functionality beyond the rigid constraints placed on them by the computer system's operating system. An application wrapper is associated with each software application stored on the computer system and is loaded when the system is powered up. An object oriented display of the application wrapper is generated for the computer user, which can take almost any identifiable form. Application wrappers provide a computer user more rapid modular access to the functional and data files contained within said software applications, saving computer system resources such as RAM and processing time.
    Type: Grant
    Filed: October 9, 1997
    Date of Patent: January 13, 2004
    Assignee: Ericsson Inc.
    Inventors: Billy Gayle Moon, Brian Bankler