Patents Represented by Attorney, Agent or Law Firm William A. Kinnaman, Jr.
  • Patent number: 6279151
    Abstract: A method and apparatus for operating a compiler to process include statements contained in a source program that specify include files resident at non-connected network locations. The compiler also receives as input include options specifying include file libraries. The compiler initially examines each include option to determine whether it specifies an include file library resident at a non-connected network location. If it does, the compiler establishes a connection with the network location and obtains a list of the contents of the include file library via the connection. The compiler then examines each include statement to determine whether it specifies an include file resident at a non-connected network location. If it does, the compiler establishes a connection with the network location and obtains the include file via the connection. The retrieved include file is then used for compiling the source code to create the object program.
    Type: Grant
    Filed: January 20, 1998
    Date of Patent: August 21, 2001
    Assignee: International Business Machines Corporation
    Inventors: Franklin C. Breslau, Paul G. Greenstein, John T. Rodell
  • Patent number: 6279127
    Abstract: Object-code instruction traces are employed to analyze selected instructions of an application program for possible failure when confronted by a year-2000 date. The analysis includes directly identifying one or more instructions of the application program that may fail, as well as identifying whether the one or more instructions have a characteristic of a predefined false-positive failure pattern. A failure-pattern descriptor is assigned to each examined instruction which is indicative of whether the instruction may fail when confronted by a date in the year-2000 range, and whether the instruction is a possible false-positive failing instruction. The analysis employs user-specifiable run-control values, as well as predetermined filter-specification values in comparing traces of each selected object-code instruction to predefined instruction failure patterns.
    Type: Grant
    Filed: August 20, 1998
    Date of Patent: August 21, 2001
    Assignee: International Business Machines Corporation
    Inventor: Brian B. Moore
  • Patent number: 6249800
    Abstract: Apparatus and accompanying methods for use preferably in a multi-system shared data (sysplex) environment (100), wherein each system (110) provides one or more servers (115), for dynamically and adaptively assigning and balancing new work and for new session requests, among the servers in the sysplex, in view of attendant user-defined business importance of these requests and available sysplex resource capacity so as to meet overall business goals. Specifically, systems and servers are categorized into two classes: eligible, i.e., goal-oriented servers running under a policy and for which capacity information is currently available, and candidate, i.e., servers which lack capacity information.
    Type: Grant
    Filed: June 7, 1995
    Date of Patent: June 19, 2001
    Assignee: International Business Machines Corporartion
    Inventors: Jeffrey David Aman, David Bruce Emmes, David Walsh Palmieri
  • Patent number: 6240412
    Abstract: A process for professional authoring of information about structured domains (i.e., not including fiction) by which authors, as an integral part of the authoring process, provide the data needed to (1) enable intelligent user navigation between the work of different authors without the need for predefined links; (2) enable searches for information based on user context; and (3) identify reuse candidates before information is written and, therefore, minimize duplication. Authors develop concept maps to reflect the structure of the domain rather than the structure of the documentation; define the user context to which a concept map applies; resolve topic intersections between concept maps; define query attributes for articles to be developed; and resolve article intersections identified by means of intersecting query attributes. Computer programs support concept map development, the identification and analysis of topic and article intersections, and association of the data for exploitation in a user interface.
    Type: Grant
    Filed: April 26, 1999
    Date of Patent: May 29, 2001
    Assignee: International Business Machines Corporation
    Inventors: Denise Y. Dyko, Christopher J. Hastings, Richard Sobiesiak, Ronald A. Wendt
  • Patent number: 6237000
    Abstract: A method and apparatus for previewing the results of the allocation of a data structure, such as a cache or list structure, in an information handling system in which a coupling facility (CF) is operable to allocate a data structure in accordance with parameters contained in a message command block (MCB) received from a central processing complex (CPC). The data structure is defined by a set of independent parameter values that also have a set of one or more dependent parameter values that are dependent on the independent parameter values. Upon receiving an MCB containing a set of one or more independent parameter values defining a data structure, the CF determines, without actually allocating a data structure, the dependent parameter values of a data structure defined by the independent parameter values and returns a message response block (MRB) containing the dependent parameter values.
    Type: Grant
    Filed: May 1, 1998
    Date of Patent: May 22, 2001
    Assignee: International Business Machines Corporation
    Inventors: Dennis J. Dahlen, David A. Elko
  • Patent number: 6237019
    Abstract: A semaphore for controlling access to a shared resource in an information handling system is implemented using an atomic operation that compares an operand with a comparison value and, if the operand is equal to the comparison value, replaces the compared operand and up to three additional operands with replacement values. The semaphore has a first semaphore field containing a value and a sequence count and a second semaphore field containing a pointer to a queue for the semaphore. The queue has zero or more entries corresponding to waiters for the semaphore, each entry with a next entry having a pointer to that next entry. To implement the semaphore, a previous value of the first semaphore field is saved as a comparison value. A first replacement value containing an incremented sequence count is generated for the first semaphore field as a first operand in accordance with the specified operation.
    Type: Grant
    Filed: March 18, 1998
    Date of Patent: May 22, 2001
    Assignee: International Business Machines Corporation
    Inventors: Donald F. Ault, John M. Forsythe
  • Patent number: 6233644
    Abstract: A lock structure, which includes many entries, is partitioned into segments. A number of the segments are cleaned up in parallel, such that cleanup processing of the entire lock structure is optimized. The lock structure is maintained within a coupling facility, which provides access to the lock structure by one or more processors coupled to the coupling facility. The cleaning up of the lock structure is performed by commands driven by the one or more processors and executed within the coupling facility.
    Type: Grant
    Filed: June 5, 1998
    Date of Patent: May 15, 2001
    Assignee: International Business Machines Corporation
    Inventors: Dennis J. Dahlen, Jeffrey Mark Nick, David Harold Surman, Douglas W. Westcott
  • Patent number: 6230243
    Abstract: Changed data of castout classes of a coupling facility cache are managed in order to be able to efficiently determine the age of the oldest changed data in the cache. A directory entry representing a changed datum is placed in a data structure corresponding to the castout class of the changed datum. The data structure includes an order queue ordered by timestamps and a process queue, having an ordered portion and an unordered portion. When the directory entry is to be added to the data structure, an attempt is first made to place the entry on the order queue. If the entry is not placed on the order queue within a predefined amount of time, then the entry is placed on the process queue, the order of which is maintained by background tasks. In order to return the oldest entry of the data structure, the smallest entry of the process queue is determined and that entry is then compared to the smallest entry of the order queue. The smaller of those two entries corresponds to the oldest entry for the castout class.
    Type: Grant
    Filed: February 19, 1999
    Date of Patent: May 8, 2001
    Assignee: International Business Machines Corporation
    Inventors: David Arlen Elko, Jeffrey W. Josten, Jeffrey M. Nick, David H. Surman, Wendell W. Wilkinson
  • Patent number: 6230183
    Abstract: A method and apparatus for controlling the number of servers in a multisystem cluster. Incoming work requests are organized into service classes, each of which has a queue serviced by servers across the cluster. Each service class has defined for it a local performance index for each particular system of the cluster and a multisystem performance index for the cluster as a whole. Each system selects one service class as a donor class for donating system resources and another service class as a receiver class for receiving system resources, based upon how well the service classes are meeting their goals. Each system then determines the resource bottleneck causing the receiver class to miss its goals.
    Type: Grant
    Filed: March 11, 1998
    Date of Patent: May 8, 2001
    Assignee: International Business Machines Corporation
    Inventors: Peter B. Yocom, Catherine K. Eilert, John E. Arwe
  • Patent number: 6209106
    Abstract: A method and apparatus for specifying offsets from an external time reference (ETR) for selected logical partitions of a partitioned information handling system. Each logical partition has a logical time-of-day (TOD) clock which may be set independently of the host system clock by specifying an epoch offset from the host clock. A system operator is presented with a display panel in which the operator may specify the magnitude and sign of an ETR offset for each logical partition selected to have an ETR offset. Each logical partition, upon being activated, issues a Store Clock (STCK) instruction to read its own logical TOD clock as well as a Store ETR (STETR) instruction to read the ETR. If the logical partition has a specified ETR offset, the logical partition manager simulates the STETR instruction by adding or subtracting the ETR offset to the real ETR time and returning the modified value to the partition; otherwise, the logical partition manager returns the real ETR time to the partition.
    Type: Grant
    Filed: September 30, 1998
    Date of Patent: March 27, 2001
    Assignee: International Business Machines Corporation
    Inventors: Jeffrey P. Kubala, Ira G. Siegel, Kenneth M. Trowell
  • Patent number: 6192389
    Abstract: In a client/server system, a method and apparatus for a listening daemon to distribute work and client connectivity across multiple processes each supporting multiple threads. Upon receiving a request from a client, a listening daemonaccepts the conversation, thus creating a socket. The listening daemon then does a putwork( ) call which places a work request on a system managed work queue. The work request behaves in a manner very similar to spawn in that it provides for parameters to be passed as well as transfer of ownership of the socket. In the meantime, server processes that are created either manually or by the operating system create multiple threads, which invoke a getwork( ) service to retrieve work requests created by the listening daemon. The getwork( ) service transfers the socket to the calling process and notifies the thread which file descriptors it has inherited.
    Type: Grant
    Filed: March 28, 1997
    Date of Patent: February 20, 2001
    Assignee: International Business Machines Corporation
    Inventors: Donald F. Ault, Jeffrey D. Aman, Ernest S. Bender, Donna N. T. E. Dillenberger, David B. Emmes, Michael G. Spiegel
  • Patent number: 6189145
    Abstract: A method of replacing a current version of a program module with a replacement version of the module concurrently with the execution of the program on a computer system. While execution of the program is suspended, each address reference in the program to an entry point within the current version of the module is replaced with an address reference to the corresponding entry point within the replacement version of the module. After the address references have been replaced and before execution is resumed, a patch initialization routine is invoked to perform initialization functions such as storage allocation, table initialization and feature detection that are performed before execution of the concurrently applied patch. Execution of the program is resumed when each address reference to the current module has been replaced with one to the replacement module and the patch initialization routine has been performed.
    Type: Grant
    Filed: May 28, 1997
    Date of Patent: February 13, 2001
    Assignee: International Business Machines Corporation
    Inventors: Richard A. Bellin, Jr., Jeffrey P. Kubala, Ira G. Siegel
  • Patent number: 6185562
    Abstract: A lock structure, which includes many entries, is partitioned into segments. A number of the segments are cleaned up in parallel, such that cleanup processing of the entire lock structure is optimized. The lock structure is maintained within a coupling facility, which provides access to the lock structure by one or more processors coupled to the coupling facility. The cleaning up of the lock structure is performed by commands driven by the one or more processors and executed within the coupling facility.
    Type: Grant
    Filed: June 5, 1998
    Date of Patent: February 6, 2001
    Assignee: International Business Machines Corporation
    Inventors: Dennis J. Dahlen, Jeffrey Mark Nick, David Harold Surman, Douglas W. Westcott
  • Patent number: 6185733
    Abstract: A method and apparatus for operating a computer linkage editor to process include statements contained in an input stream that specify object modules resident at non-connected network locations. The linkage editor also receives as input library definition statements specifying object module libraries. The linkage editor initially examines each library definition statement to determine whether it specifies an object module library resident at a non-connected network location. If it does, the linkage editor establishes a connection with the network location and obtains a list of the contents of the object module library via the connection. The linkage editor then examines each include statement to determine whether it specifies an object module resident at a non-connected network location. If it does, the linkage editor establishes a connection with the network location and obtains the object module via the connection.
    Type: Grant
    Filed: January 20, 1998
    Date of Patent: February 6, 2001
    Assignee: International Business Machines Corporation
    Inventors: Franklin C. Breslau, Paul G. Greenstein, John T. Rodell
  • Patent number: 6182106
    Abstract: A method and system for providing a user interface in a data processing system to be utilized for performing a plurality of tasks on a plurality of diverse central processing complexes, wherein processes utilized to perform the plurality of tasks are transparent to a user, and wherein the user interface utilized to perform the plurality of tasks is common across diverse central processor complexes. A library containing interface parameters for each central processing complex is established. The interface parameters include information necessary to tailor the user interface for the specific target central processing complex, as well as processes for performing selected tasks within each of the central processing complexes. The user is prompted to select a task for at least one of the diverse central processing complexes. At least one interface parameter from the library of interface parameters is selected in response to the user selecting a task for at least one of the diverse central processing complexes.
    Type: Grant
    Filed: August 30, 1993
    Date of Patent: January 30, 2001
    Assignee: International Business Machines Corporation
    Inventors: Bernice Ellen Casey, Gregory Lee Dunlap, Margaret Croft Enichen, Deborah Anne Totten Larnerd, James Andrew Morrell, Stephen Richard Nichols, Peter David Pagerey, Sammy Lee Rockwell
  • Patent number: 6178421
    Abstract: A lock structure, which includes many entries, is partitioned into segments. A number of the segments are cleaned up in parallel, such that cleanup processing of the entire lock structure is optimized. The lock structure is maintained within a coupling facility, which provides access to the lock structure by one or more processors coupled to the coupling facility. The cleaning up of the lock structure is performed by commands driven by the one or more processors and executed within the coupling facility.
    Type: Grant
    Filed: June 5, 1998
    Date of Patent: January 23, 2001
    Assignee: International Business Machines Corporation
    Inventors: Dennis J. Dahlen, Jeffrey Mark Nick, David Harold Surman, Douglas W. Westcott
  • Patent number: 6170045
    Abstract: Data is written to and read from a shared pipe by applications of multiple systems. At least one shared pipe is located within an external shared memory coupled to one or more central processing complexes. Each of the central processing complexes has one or more operating system images, which controls execution of one or more piping applications. At least one piping application corresponding to at least one operating system image writes data to a shared pipe located in the external shared memory and at least one other application corresponding to one or more other operating system images reads data from the same shared pipe, thereby providing cross-system data piping.
    Type: Grant
    Filed: April 30, 1997
    Date of Patent: January 2, 2001
    Assignee: International Business Machines Corporation
    Inventors: Roman A. Bobak, Scott Brady Compton, Jon K. Johnson, Alan F. Martens, Max M. Maurer, David Lee Meck, William R. Richardson, Michael Allen Wright
  • Patent number: 6144744
    Abstract: Objects such as master keys or object protection keys that are kept in a protected environment of a crypto module are securely transferred between modules by means of transport keys. The transport keys are generated by public key procedures and are inaccessible outside the modules. Master keys are encrypted under the transport key within the protected environment of the source module, transmitted in encrypted form to the target module, and decrypted with the transport key within the protected environment of the target module. Object protection keys that are encrypted under a first master key kept in the protected environment of the source module are decrypted with the first master within the protected environment of the source module before being encrypted under the transport key. The object protection keys are encrypted under a second master key within the protected environment of the target module after being decrypted with the transport key.
    Type: Grant
    Filed: June 30, 1997
    Date of Patent: November 7, 2000
    Assignee: International Business Machines Corporation
    Inventors: Ronald M. Smith, Sr., Edward J. D'Avignon, Robert S. DeBellis, Phil Chi-Chung Yeh
  • Patent number: 6122631
    Abstract: A method and apparatus for providing dynamically controlling access to files in a client/server system. A client wanting access to a file first requests a token from an object server. The object server generates the token as a function of the file name and ephemeral information and provides the token to both the client and the file system. Upon receiving the token from the object server, the client presents an access request to the file system, using the token rather than the file name as an identifier. The file system compares the received identifier with the file names in the specified directory as well as with a list of valid tokens that it maintains. If the identifier corresponds to a valid token for a file in the directory, the access request is granted. Otherwise, the access request is denied. The procedure is transparent to the client, which uses the token in the same manner as it would use a regular file name.
    Type: Grant
    Filed: March 28, 1997
    Date of Patent: September 19, 2000
    Assignee: International Business Machines Corporation
    Inventors: Robert R. Berbec, John L. Brady, James M. Caffrey, Joanne T. Crimi, Arthur P. Fenaroli, Matthew C. Iatridis, Gary S. Puchkoff, Roberto J. Sanchez, Madeline R. Whalen, Joseph A. Williams
  • Patent number: 6108425
    Abstract: The capabilities of a cryptographic module are controlled by a crypto configuration control (CCC) register that is initialized by one or more self-signed commands that are preformulated and signed with the digital signature key of the crypto module itself. The crypto module accepts a self-signed command only if the self-signature can be validated using the signature verification key of the module. In one implementation, the final configuration is determined by a single self-signed command. In another implementation, a first self-signed command is used to create an temporary configuration that allows one or more initialization authorities to issue additional commands fixing the final configuration. The self-signed commands are maintained separately from the crypto module and are distributed to the end user either physically or electronically.
    Type: Grant
    Filed: June 30, 1997
    Date of Patent: August 22, 2000
    Assignee: International Business Machines Corporation
    Inventors: Ronald M. Smith, Sr., Edward J. D'Avignon, Robert S. DeBellis, Randall J. Easter, Lucina L. Green, Michael J. Kelly, Vincent A. Spano, Phil Chi-Chung Yeh