Patents Examined by Alice Park
  • Patent number: 6101525
    Abstract: A shared memory clean application system assigns a process name to each process operating within a shared memory region and stores that name in shared memory elements used by that process. If there are more processes sharing an element than that element has space to keep the names, an overflow element is created and linked to the shared element. When a new element is requested and no free elements are available, the invention selects an element, clears its use count, and then reviews all the names in that shared element array to see if they match existing valid processes. If an existing process is found that matches a name in the array, the use count is incremented for that process. If no existing process match is found for a process name in the element array, that name is deleted from the array. If overflow elements exist, they are also cleared of names that do not match, or deallocated entirely if the review indicates there is an overflow element that no longer has process names associated with it.
    Type: Grant
    Filed: May 19, 1995
    Date of Patent: August 8, 2000
    Assignee: EMC Corporation
    Inventor: Mark Bennett Hecker
  • Patent number: 6055559
    Abstract: A status management unit manages a free status capable of invoking a process switch and a critical status. When a process currently being executed is in an input/output process or in a critical status during a message communication, a switch control means controls a control signal for a process switch, such that a process switch does not take place.
    Type: Grant
    Filed: September 19, 1996
    Date of Patent: April 25, 2000
    Assignee: Fujitsu Limited
    Inventors: Toshiyuki Shimizu, Hiroaki Ishihata
  • Patent number: 5907675
    Abstract: A number of methods and apparatus for managing clients of a computer server. In particular, the usher implements an orderly and predictable server deactivation and/or shut down strategy in generally the following manner. The usher continuously maintains a transaction counter indicative of the number of clients actively utilizing services. For example, the usher may increment the transaction counter when a service is requested and then decrement the transaction counter when a service is completed or terminated. However, at some point in the server operation, the usher may receive a lock up request. This may occur because a client has invoked a deactivation and/or shut down operation, or the server may decide to shut down itself. In any event, upon receiving the lock up request, the usher will not perform any new client requests. Thus the usher controls the accessibility of the server to external clients by preventing new client requests for service in preparation for shut down.
    Type: Grant
    Filed: March 22, 1995
    Date of Patent: May 25, 1999
    Assignee: Sun Microsystems, Inc.
    Inventor: Yeturu Aahlad
  • Patent number: 5884077
    Abstract: A method and system are disclosed in which, when the load of a processor in a given computer is high, a processor is borrowed from another computer. The computer from which the processor is borrowed is selected based on an acquired load state of the other computer, and a processor lending request is issued to the selected computer. The computer which received the processor lending request selects a processor for lending, and causes the selected processor to execute a process of the computer which issued the lending request. This distributes the load on the processor by utilizing the processor resources of other computers.
    Type: Grant
    Filed: August 30, 1995
    Date of Patent: March 16, 1999
    Assignee: Canon Kabushiki Kaisha
    Inventor: Shigeo Suzuki
  • Patent number: 5845116
    Abstract: A distributed computing system, having a plurality of computers that differ from each other in terms of performance, load, and type, uniformly manages local priority schemes adapted in the respective computers by utilizing the concept of "urgency" or "time limit". Each of the computers includes a priority level conversion procedure for performing a conversion between an urgency level and a priority level of processing in accordance with the performance and the load of the computer, and a priority level changing procedure for changing a priority level of a program, which executes the processing, in accordance with a priority level indicated by the priority level conversion procedure.
    Type: Grant
    Filed: April 13, 1995
    Date of Patent: December 1, 1998
    Assignee: Hitachi, Ltd.
    Inventors: Masahiko Saito, Takanori Yokoyama, Masaru Shimada, Kunihiko Tsunedomi, Tomoaki Nakamura
  • Patent number: 5835767
    Abstract: A method and system are disclosed for limiting the processing power of a CPU or CPUs in a multi-processing system comprising at least one constrained or hobbled CPU and a main memory. The novel method includes executing a high priority process on the CPU which effectively interrupts the processing of a task at a predetermined time T.sub.1 during a full time cycle T.sub.0 -T.sub.2 rendering the CPU unavailable for a predetermined period of time (T.sub.1 to T.sub.2) which represents a predetermined percentage of the CPUs full computing power. The task that is interrupted is continued at the start of the next time cycle of the CPU so that all tasks are completed. The power of any CPU so hobbled may be decreased by a predetermined percentage of full power by decreasing the processing time cycle between T.sub.0 and T.sub.1, without the need for hardware or operating system modification.
    Type: Grant
    Filed: August 19, 1994
    Date of Patent: November 10, 1998
    Assignee: Unisys Corporation
    Inventor: James J. Leigh
  • Patent number: 5822585
    Abstract: An object-oriented framework is used to build cooperative objects. Objects can span processes on different machines connected by a network. The objects are used to build distributed or cooperative applications which execute in multiple environments without having to write significant additional code to enable such functionality. Each cooperative object has two parts: an agent object and a server object. Requests for services are made to agent objects by the application program (via an asynchronous interface) as if they were local objects. The server object performs the requested service in the server process, possibly using other server objects or systems (e.g., DB/2), and returns the result to the associated agent object. A Distributor and Dispatcher object in each process handle communication between agent and server objects. The Distributor receives all incoming messages and routes them to the appropriate objects in the process. The Dispatcher is used for sending messages to other objects.
    Type: Grant
    Filed: May 30, 1997
    Date of Patent: October 13, 1998
    Assignee: Compuware Corporation
    Inventors: William Noble, Michael Knight, Karen Nelson-Katt
  • Patent number: 5822584
    Abstract: A new and improved apparatus and method for rebuilding a replacement disk of a fault tolerant, mass storage drive array subsystem of a computer system. The method calls for a microprocessor to check a stripe for consistency. If the stripe is inconsistent, the microprocessor rebuilds a predetermined number of stripes. If the checked stripe is consistent, then the microprocessor checks a next stripe and repeats the above-described process. Because the drive array subsystem receives both system requests and rebuild requests, the present invention allows a user to select the drive array subsystem's priority in processing system requests versus rebuild requests, thereby allowing greater system access to the drive array subsystem during peak times of system requests.
    Type: Grant
    Filed: October 13, 1995
    Date of Patent: October 13, 1998
    Assignee: Compaq Computer Corporation
    Inventors: Mark J. Thompson, Stephen M. Schultz
  • Patent number: 5794037
    Abstract: A computer system provides multiple unprotected applications direct access to a slave processor. The host processor issues context switching requests to save and restore partially completed unprotected requests in the slave processor.
    Type: Grant
    Filed: September 3, 1997
    Date of Patent: August 11, 1998
    Assignee: Intergraph Corporation
    Inventor: David W. Young
  • Patent number: 5771382
    Abstract: The present invention is a system and method to avoid static variable initialization and reference conflicts in a multi-threaded computer system. There are four major problems that arise with computer programs containing static variable references and static variable initializations on a computer system with a multi-threaded operating system: (1) premature references made on an uninitialized static variable; (2) side effects caused by initialization competition among threads; (3) multiple initialization of the same static variable; and (4) server control of static variable reference and initialization. Each of these four problems is eliminated by the system and method of this invention. The invention operates by locking the CPU during identification of the first thread seeking to initiate a static variable operation, maintaining all other threads in a wait state, and unlocking the CPU thus releasing the waiting threads from their wait state.
    Type: Grant
    Filed: August 14, 1997
    Date of Patent: June 23, 1998
    Assignee: International Business Machines Corporation
    Inventors: I-Shin Andy Wang, Roni Korenshtein
  • Patent number: 5761680
    Abstract: A file defragmentation utility for a computer system is disclosed that enables multithreaded preemptive multi-tasking during file defragmentation. The utility includes a defragmentor routine that defragments clusters or portions of a file on a storage media and then updates one or more file system structures to indicate the new locations of the defragmented clusters of the file. An alias driver is provided that traps accesses to the file and that maintains coherent access to the file while the file system structures are updated.
    Type: Grant
    Filed: August 28, 1997
    Date of Patent: June 2, 1998
    Assignee: Symantec Corporation
    Inventors: Leonardo Cohen, Mark Kevin Kennedy