Patents Examined by Lucien U. Toplu
  • Patent number: 5732271
    Abstract: A method and system which provides a prototypical object which can be copied to create a derived object. A derived object can contain attribute values or it can hold a reference to its prototypical object. If a required value is not held by the prototypical object, the present invention discloses a scheme by which the object searches up an object hierarchy to find the required attribute. In addition, each object can register an interest in a prototypical object that contains required attributes. If an attribute of a prototypical object changes, the prototypical object informs all registered objects of the change. At runtime, the prototypical object becomes a master object whose attribute values can be changed by the user, changes in master object attributes are propagated to all registered derived objects.
    Type: Grant
    Filed: January 23, 1995
    Date of Patent: March 24, 1998
    Assignee: International Business Machines Corporation
    Inventors: Richard Edmond Berry, Amitabh Shukla
  • Patent number: 5724584
    Abstract: A system for processing a batch which is distributed into a plurality of independent segments. A preferred embodiment of this invention calls for implementation on a symmetrical multiprocessing platform, however, the invention is also applicable to massively parallel architectures as well as uniprocessor environments. Each segment comprises a plurality of discrete events, each discrete event comprising a plurality of sub-events to be processed. The system operates to process each discrete event within each segment sequentially and each sub-event within each discrete event sequentially. The plurality of segments may be processed on an uniprocessor, an SMP system or an MPP system. By balancing the number of discrete events in each segment using a "coarse grain" approach, a flexible but efficient use of processor availability is obtained.
    Type: Grant
    Filed: August 15, 1996
    Date of Patent: March 3, 1998
    Assignee: Teleflex Information Systems, Inc.
    Inventors: Michael S. Peters, Clayton Walter Holt, David J. Arnold, Jr.
  • Patent number: 5724587
    Abstract: A multi-media user task (host) computer is interfaced to a high speed DSP which provides support functions to the host computer via an interprocessor DMA bus master and controller. Support of multiple dynamic hard real-time signal processing task requirements are met by posting signal processor support task requests from the host processor through the interprocessor DMA controller to the signal processor and its operating system. The signal processor builds data transfer packet request execution lists in a partitioned queue in its own memory and executes internal signal processor tasks invoked by users at the host system by extracting signal sample data from incoming data packets presented by the interprocessor DMA controller in response to its execution of the DMA packet transfer request queues built by the signal processor in the partitioned queue. Processed signal values etc.
    Type: Grant
    Filed: June 8, 1995
    Date of Patent: March 3, 1998
    Assignee: International Business Machines Corporation
    Inventors: Donald Edward Carmon, William George Crouse, Malcolm Scott Ware
  • Patent number: 5721924
    Abstract: In a debugger, interpreter, etc., a referred-to variable determining method is used to obtain a variable in a program having a specific variable name and referred to from a specific position according to the specific position and the specific name in a source program. According to section information obtained by splitting the source program at a block start position and a block end position, block tree structure information representing a relationship in a set of blocks, and variable-name-to-block correspondence information indicating blocks in which a variable having a same variable name is defined, a referred-to variable is determined by comparing a path in the block tree structure information with the set of blocks associated with the specific variable name.
    Type: Grant
    Filed: December 3, 1996
    Date of Patent: February 24, 1998
    Assignee: Fujitsu Limited
    Inventor: Yohtaro Kitadate
  • Patent number: 5721922
    Abstract: The invention provides a method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system. Through encapsulating a real-time kernel into the interrupt handling environment of a non-real-time graphical user interface, such as Windows.RTM., the method of the present invention allows for an entire real-time environment to be supported within the graphical user interface. The scheduler of the real-time kernel supports multiple threads of execution all running at higher priority than the graphical user interface tasks. By using synchronization mechanisms of the graphical user interface, e.g. V.times.D events in enhanced mode Windows.RTM., the real-time tasks are able to make use of system services of the graphical user interface.
    Type: Grant
    Filed: October 13, 1994
    Date of Patent: February 24, 1998
    Assignee: Intel Corporation
    Inventor: Thomas J. Dingwall
  • Patent number: 5717849
    Abstract: A software-controlled data processing system employs control blocks, each control block including a data structure that defines at least one control parameter for a data processing action. Plural control blocks are assigned to the data processing action to enable its performance, and each of the plural control blocks has a tag value which, for any set of chained control blocks assigned to the data processing action, exhibit an identical value. The data processing method comprises the steps of: executing the data processing action by accessing each of the plural assigned control blocks in a sequence; comparing tag values contained in sequentially accessed control blocks to determine if the tag values are identical and, if yes, continuing execution of the data processing action and, if no, reporting an anomaly. Such a procedure enables the data processing system to assure that the received, chained control blocks are all assigned to a common data processing action.
    Type: Grant
    Filed: February 25, 1997
    Date of Patent: February 10, 1998
    Assignee: International Business Machines Corporation
    Inventor: James T. Brady
  • Patent number: 5715457
    Abstract: A multiprocessor system having at least two processing elements, each of which includes a processor and a storage resource, connected via a network, each processor comprising: a task generation device for generating a task which includes information concerning access frequency to the storage resource on each processing element; a predicted termination time collection device for collecting predicted termination time from any processing element, the predicted termination time being time to terminate execution of at least one task assigned to the processing element; an estimated access time storage device for storing time estimated for accessing the storage resource on the processing element and time estimated for accessing the storage resource on any processing element via the network; a processing element determination device for determining which of the processing elements should execute the generated task based on the predicted termination time, the information concerning access frequency and the access time
    Type: Grant
    Filed: October 3, 1996
    Date of Patent: February 3, 1998
    Assignee: Matsushita Electtic Industrial
    Inventor: Akiyoshi Wakatani
  • Patent number: 5708811
    Abstract: Lazy loading of executable library objects reduces operating system overhead and memory commitment requirements by postponing object loading until object references are expected. Initial task loading allocates only the main executable and library objects referenced by that executable. Secondary referenced objects are not allocated. Object references cause page faults for allocated but not loaded pages. Page fault handling causes loading and fixup of executable objects. Page fault handling also determines the next level of object references and allocates memory for the next object level. Shared memory systems allow sharing of executable objects until explicitly referenced. Once referenced, memory fault causes copying and fixup to referencing task memory area.
    Type: Grant
    Filed: February 21, 1995
    Date of Patent: January 13, 1998
    Assignee: International Business Machines Corporation
    Inventors: James Wendell Arendt, Paul Placido Giangarra, Ravindranath Kasinath Manikundalam, Donald Robert Padgett, James Michael Phelan
  • Patent number: 5708808
    Abstract: Allows concurrency for user program and device operations for user program's device request (10), by returning immediately to user program (16) when device becomes busy (12), switching back to device driver (12) when the device becomes idle (19), and after device driver postprocessing, continue user program where interrupted (19).This disclosure discusses various problems including synchronization associated to above method.
    Type: Grant
    Filed: February 27, 1996
    Date of Patent: January 13, 1998
    Inventor: Horio Shoichi
  • Patent number: 5706515
    Abstract: In a computer system having a data processing unit, memory, and a multitasking operating system that supports multiple threads of execution in a shared address space, a resource allocation subsystem includes an initialization procedure for initializing monitors, a notify procedure and a wait procedure. Each monitor has an associated event data structure denoting the status of the monitor as Signaled or Unsignaled. Each monitor also stores a waiters value indicating how many threads are waiting on the monitor, a tickets value indicating how many of the threads are to receive notifications, and an epoch counter value. The notify procedure updates any specified monitor to the Signaled status, updates the specified monitor's tickets value to indicate how many waiting threads are to receive notifications, and updates the epoch counter to indicate an epoch value associated with the updating of the specified monitor's status to Signaled.
    Type: Grant
    Filed: March 25, 1996
    Date of Patent: January 6, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: David W. Connelly, Patrick P. Chan
  • Patent number: 5701479
    Abstract: A system and method for pipelined data processing emulates multi-tasking pipelined data processing in a single tasking environment. A host application running in the single tasking environment creates a pipeline of linked data processing tasks to process data from a data source and to provide the processed data to the host application. As each data processing task of the pipeline is created, the task calls an external procedure to obtain header data indicative of the data to be received by the task. Each task alters the obtained header data to reflect the data processing operation to be performed by the task, then the task creates an external procedure callable by other tasks or the host application. The external procedure provides the processed header data from within a task to the calling task or host application. After all tasks of the pipeline are created the host application invokes the pipeline to obtain processed data from the pipeline.
    Type: Grant
    Filed: March 10, 1995
    Date of Patent: December 23, 1997
    Assignees: Xerox Corporation, Fuji Xerox Company, Ltd.
    Inventors: Dennis L. Venable, Takashi Nagao
  • Patent number: 5701484
    Abstract: A system for routing an "object" (in the sense that object means an abstraction that encapsulates data in a known way, with a known list of operations or methods to access the data, and the object has a unique identity, is mobile, and possibly persistent). The "object" is routed in a distributed computing system along an action path (itself an "object") which defines the logical path to be traversed by the object. The action path consists of action stops naming or describing functionally principals (people or automated mechanisms) required to act upon the routed object in a prescribed order. The object routing system propagates the object along this action path, and monitors and controls its progress until it completes the path. The system includes mechanisms of dispatching the routed object between principals, finding the principals required to act on the routed object, notifying the principals in turn of their required action, and potentially relocating the routed object to the nodes of the principals.
    Type: Grant
    Filed: March 4, 1993
    Date of Patent: December 23, 1997
    Assignee: Digital Equipment Corporation
    Inventor: Yeshayahu Artsy
  • Patent number: 5696970
    Abstract: An implementation of PCMCIA Card Services for the Windows operating system in enhanced mode. A Card Services dynamic linked library (DLL) was written which contains a library of C functions which perform the Card Services functions. The Card Services DLL maintains a Card Services database of the Card Services resources available such that the Card Services DLL can share the Card Services resources among clients of Card Services. Windows applications can call the functions in the Card Services DLL directly to access Card Services functions. The Card Services DLL posts messages to a Card Services Windows application to request a Card Services function be performed with background processing. The Card Services Windows application processes the Card Services function at a later time. A Card Services virtual device driver (V.times.D) provides system functions to the Card Services DLL. The Card Services V.times.
    Type: Grant
    Filed: April 15, 1996
    Date of Patent: December 9, 1997
    Assignee: Intel Corporation
    Inventors: David A. Sandage, James C. Stanley, Stewart W. Hunt, Arland D. Kunz
  • Patent number: 5696897
    Abstract: The state of a functioning computer operating system is quickly stored onto a nonvolatile storage device such that the computer system may be suspended quickly. To quickly save the state of computer operating system, a process firsts prepares for the computer system suspend by allocating a file on the root file system that will store operating system state data. The process then warns each user application process running on the computer system to allow each user application process to prepare for the suspend. After the warning, the process suspends each user application process. The memory space used by each user application process is then swapped out to nonvolatile storage. Next, the various kernel daemons and operating system subsystems are suspended. Finally the process suspends the device drivers running on the computer system such that there is no activity in the computer system. A compressed version of the operating system state is then written to a nonvolatile storage device.
    Type: Grant
    Filed: January 31, 1994
    Date of Patent: December 9, 1997
    Assignee: Sun Microsystems, Inc.
    Inventor: Clark Dong
  • Patent number: 5696969
    Abstract: Convoys resulting from competing requests for a popular service are detected and dispersed by a scheduling procedure. When a request first enters the procedure, a determination is made as to whether the procedure is currently in the convoy disperse mode. If not, availability of the service is checked, and if it is available, the request is serviced. If the service is not available, a delay is instituted, and availability of the service is checked again. If it is still not available, a wait-for-service count is checked to determine if it exceeds a predetermined value. If not, the present request is sent to a queued wait. If so, the convoy disperse flag is set true, and the request is sent to the queued wait. If the convoy disperse flag was already true when the request was received into the procedure, a different path is taken in which a loop is entered which involves temporarily relinquishing the processor.
    Type: Grant
    Filed: March 19, 1996
    Date of Patent: December 9, 1997
    Assignee: Bull HN Information Systems Inc.
    Inventor: David A. Egolf
  • Patent number: 5694602
    Abstract: A method for allocating an arbitrary spatial load in two or three dimensions to an arbitrary number of parallel processing elements. The method produces as output spatial boundaries for each processor, which can then be used to redistribute the parallel computing load. Unlike existing techniques, this method allows the load to be characterized in communication time proportional to the number of dimensions and memory proportional to the number of processors in parallel. Further, this method takes as input an arbitrary number of processors, as well as an arbitrary weight for each processor, and allocates a load proportional to the processor weight to each. As a result, computing loads can be efficiently allocated to the processing elements to maximize speedup due to parallelization.
    Type: Grant
    Filed: October 1, 1996
    Date of Patent: December 2, 1997
    Assignee: The United States of America as represented by the Secretary of the Air Force
    Inventor: Bradley J. Smith
  • Patent number: 5692194
    Abstract: A number of program modules (32,34,36) are sequentially controlled by a procedural user interface (PUI) 38 and an operating system (40) to perform tasks. Transfer of files or other data entities between the modules (32,34,36) and a storage (13) is seamlessly integrated by a sequential information integration service (SIIS) (50). For reading a file from the storage (13), a the PUI 38 or the operating system (40) generates a read command including a filename designation which can include a pathname, complete filename or wildcard characters. The read command can also include one or more arguments such as a user or group access code and an error message to display if the required file is not found. In an automatic mode, the service (50) automatically selects the most recent file corresponding to the filename designation and arguments, or displays the error message if a file meeting these criteria is not found.
    Type: Grant
    Filed: May 24, 1993
    Date of Patent: November 25, 1997
    Assignee: Hughes Aircraft Company
    Inventors: Ha T. Nguyen, Willard H. Barrett
  • Patent number: 5692195
    Abstract: A method, system and program for supporting a dynamic bind between a derived class and its parent class. A processor provides for the registration of class objects and dynamic binding of derived class objects to their parent class objects based on the registration mechanism. The SOM object model removes static references to class objects by having all the parent class information available at runtime through the parent class object. Thus, when the derived class implementation needs information about the size of the parent class state data structure, the addresses of the parent class method procedures, or access to the parent class method procedure table the appropriate information is retrieved from the parent class object.
    Type: Grant
    Filed: January 17, 1995
    Date of Patent: November 25, 1997
    Assignee: International Business Machines Corporation
    Inventors: Mike Haden Conner, Andrew Richard Martin, Larry Keith Raper
  • Patent number: 5692192
    Abstract: In a load distribution method, the load in the entire distributed system is uniformly distributed. In a system in which a plurality of information processing apparatuses (nodes) are connected with a network, the degree of distribution of each distributed task is controlled by expanding or compressing the task. Load distribution is performed by expanding a distributed task operating in a heavily loaded node to a lightly loaded node, and compressing the distributed task from the heavily loaded node and transferring threads within the distributed task. Load distribution servers execute the load distribution method.
    Type: Grant
    Filed: July 14, 1995
    Date of Patent: November 25, 1997
    Assignee: Canon Kabushiki Kaisha
    Inventor: Yoshiaki Sudo
  • Patent number: 5682530
    Abstract: With a time-sharing-oriented operating system, resource management groups are hierarchically formed including a plurality of processes. Each resource management group includes a resource management process for managing resources allocated to its group, at least one process which is a descendant of the resource management process and not included in other resource management groups, and a resource management block for storing information on the resources managed by its own group. Resource management processes are linked to each other in accordance with parent-child relationships between the respective resource management groups to form a resource management tree. At the generation of a new resource management group, resources necessary for the newly generated resource management group are distributed from resources owned by a parent resource management group of the newly generated resource management group in accordance with the resource management tree.
    Type: Grant
    Filed: May 25, 1995
    Date of Patent: October 28, 1997
    Assignee: NEC Corporation
    Inventor: Nobuaki Shimamura