Patents Represented by Attorney, Agent or Law Firm Prentiss W. Johnson
  • Patent number: 7162478
    Abstract: Apparatus and methods to identify a home fragment for a child row of a child table of a database, the home fragment for a row being the fragment in which the row is stored. A child key value of the child row is obtained and used to identify a fragment of a parent table that is correlated with the child key value of the child row. The child key value being the value of a child key attribute of the child row and represents a reference to a parent row in a parent table. The result is the home fragment for the child row that corresponds to identified fragment of a parent table that is correlated with the child key value of the child row.
    Type: Grant
    Filed: February 28, 2001
    Date of Patent: January 9, 2007
    Assignee: International Business Machines Corporation
    Inventors: Robert Gerber, Paul S. Taylor
  • Patent number: 6931630
    Abstract: Computer program code which is a candidate for Web enablement or stored procedures is identified. Source code corresponding to computer program code is scanned and parsed to determine static information concerning the computer program code. The static information is stored in a database. Dynamic information concerning the computer program code during an execution of the computer program code is also collected and stored in the database. Responsive to the static information and dynamic information stored in the database, relationships and dependencies are then developed and stored in the database. The database may then be queried to produce a set of potential candidates of computer program code meeting a constraint of the query. If insufficient candidates are returned by the query, then the query constraint may be relaxed, and the query repeated.
    Type: Grant
    Filed: September 27, 2000
    Date of Patent: August 16, 2005
    Assignee: International Business Machines Corporation
    Inventors: Curt L. Cotner, Laurence E. England, Howard J. Glaser, Howard M. Hess
  • Patent number: 6769014
    Abstract: A Mail Facility Layer providing a general, semantics-free mail paradigm for asynchronous communication between distributed objects. It provides a level of abstraction in terms of mail, virtual mailbox, post office, and mail queue. It hides the details of implementation and transport and provides location transparency. A mail is asynchronously communicated between distributed objects by associating a destination with a name, wherein the destination is located on a remote system; associating the name with a first virtual mailbox representing the destination, wherein the first virtual mailbox is located on a local system; creating the mail; opening the first virtual mailbox; putting the mail in the first virtual mailbox; sending the mail from the first virtual mailbox to a second virtual mailbox, wherein the second virtual mailbox is located on the remote system; opening the second virtual mailbox; and getting the mail from the second virtual mailbox.
    Type: Grant
    Filed: July 1, 1998
    Date of Patent: July 27, 2004
    Assignee: International Business Machines Corporation
    Inventors: Daniel T. Chang, Neelakantan Sundaresan
  • Patent number: 6400287
    Abstract: A data structure for specifying the types of constants whose character values are to be converted to Unicode; for specifying which code page or pages are used for specifying the character encodings used in the source program for writing the character strings to be converted to Unicode; and that can be used to perform conversions from SBCS, mixed SBCS/DBCS, and pure DBCS character strings to Unicode. A syntax suitable for specifying character data conversion from SBCS, mixed SBCS/DBCS, and pure DBCS representation to Unicode utilizes an extension to the conventional constant subtype notation. In converting the nominal value data to Unicode, currently relevant SBCS and DBCS code pages are used, as specified by three levels or scopes derived from either global options, from local AOPTIONS statement specifications, or from constant-specific modifiers. Global code page specifications apply to the entire source program.
    Type: Grant
    Filed: July 10, 2000
    Date of Patent: June 4, 2002
    Assignee: International Business Machines Corporation
    Inventor: John R. Ehrman
  • Patent number: 6353833
    Abstract: A method and system for caching dynamic SQL statements and their sections at different nodes in a multiple node Relational Database Management System (RDBMS) while maintaining cache and application integrity across all nodes. Each node in the RDBMS having a global cache shared by all applications on that node. One of the nodes in the RDBMS being a catalogue node which controls access to a database. The catalogue node maintaining a list of participating nodes that have requested access to the database controlled by the catalogue node. The list of participating nodes being used to notify each participating node of any changes to the database that may affect the validity of a dynamic SQL statement stored in the global cache of the node.
    Type: Grant
    Filed: September 29, 1998
    Date of Patent: March 5, 2002
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, Michael J. Snowbell
  • Patent number: 6335743
    Abstract: A system and method for providing a window capable of being resized is disclosed. The window includes at least one control. In one aspect, the method and system include allowing a developer to place the at least one control in a desired position in the window and allowing a developer to set how the at least one control is to move upon resizing of the window. In the first aspect, the method and system further include moving the at least one control in accordance with how the developer has set the at least one control to be moved upon resizing of the window when the window is resized. In another aspect, the method and system include allowing a developer to place the at least one control in a desired position in the window and allowing the developer to set how the at least one control is to be resized upon resizing of the window.
    Type: Grant
    Filed: August 11, 1998
    Date of Patent: January 1, 2002
    Assignee: International Business Machines Corporation
    Inventor: Brian Joseph Owings
  • Patent number: 6321235
    Abstract: A global cache for SQL sections and methods of accessing the cache. The global cache being at the database level and being accessible to all agents of all applications. The global cache having a static and a dynamic portion. The static portion containing section entries having both section information and section data. The dynamic portion having two sub-portions, a statement portion and a dependency portion. The dependency portion containing multiple SQL statements, multiple compilation environments for each SQL statement and multiple variations within each compilation environment. The dependency portion of the dynamic portion containing a plurality of lists of object types. Each object type having its own list, the list containing data on which variations are dependant on each object.
    Type: Grant
    Filed: September 29, 1998
    Date of Patent: November 20, 2001
    Assignee: International Business Machines Corporation
    Inventor: Paul M. Bird
  • Patent number: 6256645
    Abstract: A storage manager located between a plurality of requesting applications and a memory shared between the applications, has: a receiving unit for receiving a present memory access request from a first of said plurality of requesting applications; an accessing unit for accessing statistical data, the data based on collected values of sizes of initial free areas from prior memory access requests from the first requesting application; and a setting unit for setting a value of an initial free area for use by the present memory access request based on the accessed statistical data.
    Type: Grant
    Filed: July 1, 1998
    Date of Patent: July 3, 2001
    Assignee: International Business Machines Corporation
    Inventor: Paul Mundy
  • Patent number: 6252594
    Abstract: A system and method for aiding a user in scrolling through a multiple-page are disclosed. The system and method include providing visual and/or audio cues in a graphical user interface (GUI) environment including a window to alert a user that a portion of the document is not currently displayed in the window. The scrolling may also be made more customizable and convenient. In a first aspect, the GUI includes a scroll bar which appears briefly at the center of a window. This indicates to the user that the document contains more than one page and that the user may scroll to view content beyond what is currently displayed. In this aspect, the scroll bar may be dynamic and dockable. Thus, in this aspect a mechanism is provided to allow the user to dock the scroll bar in a desired location. In a second aspect, the system and method include providing voice cues indicating the total number of pages in the document or that the document contains multiple pages.
    Type: Grant
    Filed: December 11, 1998
    Date of Patent: June 26, 2001
    Assignee: International Business Machines Corporation
    Inventors: Chenhong Xia, John Hudson Bailey
  • Patent number: 6240546
    Abstract: A method, apparatus, and article for solving the year 2000 problem involve processing a computer object program to identify object code instructions referencing date information for an operation which involves more than one century. The object code is altered by altering each identified instruction with an instruction to effect a transfer of control to a Year 2000 routine. The Year 2000 routine is a routine for altering the execution of an identified instruction in accordance with the Year 2000 routine and thereafter returning control to the object code.
    Type: Grant
    Filed: July 24, 1998
    Date of Patent: May 29, 2001
    Assignee: International Business Machines Corporation
    Inventors: David Eugene Lee, Greg Alan Dyck, William Augustus Carter, Brian Barry Moore, Leslie Charles Balfour, John David Rotramel, Gary V. Railsback
  • Patent number: 6239799
    Abstract: A system and method for allowing a developer to lay out a window on a display in a computer system is disclosed. The method and system include providing at least one splitter bar control for at least one splitter bar and allowing the portion of the plurality of controls to be associated with the at least one splitter bar control. The at least one splitter bar control is for controlling at least a portion of the plurality of controls placed in the window when the at least one splitter bar is moved. The at least one splitter bar control is a peer control of the at least the portion of the plurality of controls.
    Type: Grant
    Filed: June 23, 1998
    Date of Patent: May 29, 2001
    Assignee: International Business Machines Corporation
    Inventor: Brian Joseph Owings
  • Patent number: 6237134
    Abstract: A generic adaptor for converting from a non-future function pointer to a future function object is provided by a future template class that provides type definitions and member functions for future-based operations and by a future template function that is an adaptor from a non-future function pointer to an object that is an instance of the future template class instance. The generic adaptor takes a non-future function pointer, builds a future function object by passing the non-future function pointer to a constructor of the future function template class instance, and returns the future function object. The future template class is a subclass of a template class of the non-future function.
    Type: Grant
    Filed: March 12, 1997
    Date of Patent: May 22, 2001
    Assignee: International Business Machines Corporation
    Inventor: Neelakantan Sundaresan
  • Patent number: 6061515
    Abstract: A user may define a mapping between object schema and data store schema by use of a high level language, Schema Mapping Definition Language (SMDL), which is data store independent, object oriented language independent, and extensible. The user may either write SMDL directly or generate SMDL through the use of a graphical user interface Smart Schema whose graphical semantics support the SMDL semantics. A Schema Mapping Internal Representation (SMIR) containing representations of the object schema, the data store schema, and the mapping of the object schema and the data store schema is generated by an SMDL Parser from the SMDL. The SMIR is represented such that it may be accessible by both development interfaces and run-time environments. It supports the accessing of the mapping information given either the object schema or data store schema such that the data store schema may be accessed from the object schema, and the object schema may be accessed from the data store schema.
    Type: Grant
    Filed: May 30, 1997
    Date of Patent: May 9, 2000
    Assignee: International Business Machines Corporation
    Inventors: Daniel T. Chang, Christina Lau, Taejae Lee
  • Patent number: 6058266
    Abstract: An integer programming formulation for weighted loop fusion is presented. Loop fusion is a well-known program transformation that has shown to be effective in reducing loop overhead and improving register and cache locality. Weighted loop fusion is the problem of finding a legal partition of loop nests into fusible clusters so as to minimize the total inter-cluster edge weights. Past work has shown that the weighted loop fusion problem is NP-hard. Despite the NP-hardness property, the present invention provides optimal solutions that may be found efficiently, in the context of an optimizing compiler, for weighted loop fusion problem sizes that occur in practice. An integer programming formulation for weighted loop fusion with a problem size (number of variables and constraints) that is linearly proportional to the size of the input weighted loop fusion problem is also presented. The integer programming formulation may be solved efficiently using a general integer programming package.
    Type: Grant
    Filed: June 24, 1997
    Date of Patent: May 2, 2000
    Assignee: International Business Machines Corporation
    Inventors: Nimrod Megiddo, Vivek Sarkar
  • Patent number: 6047291
    Abstract: This invention is directed to relational extenders for a computer-based relational database. Each relational extender includes at least one column, in a first, business table containing a user defined application database, dedicated to object handles for defining the complex data type of an object; a second, attribute, table containing at least one column defining a unique characteristic associated with the one object and one column dedicated to containing the object handle; and a third, metadata, table containing at least one column defining a common characteristic associated with all objects defined within the business table and one column dedicated to containing the object handles and at least one column dedicated to containing a reference to object data associated with the object.
    Type: Grant
    Filed: July 13, 1998
    Date of Patent: April 4, 2000
    Assignee: International Business Machines Corporation
    Inventors: Matthew Paul Anderson, Siyi Terry Donn, David Couttie Fallside, Tri Quac Ha, Douglas Michael Hembry, Jean C. Ho, Jing-Song Jang, Nelson Mattos, Carlton Wayne Niblack, Dragutin Petkovic, Frank Chin Tung, Peter Paval Uhrowczik, Mimi Phuong-Thao Thi Vo, Gerald Johann Wilmot, Peter C. Yanker, Josephine Min-Kung Cheng
  • Patent number: 6044222
    Abstract: Improved scheduling of instructions within a loop for execution by a computer system having hardware lookahead is provided. A dependence graph is constructed which contains all the nodes of a dependence graph corresponding to the loop, but which only contains loop-independent dependence edges. A start node simulating a previous iteration of the loop may be added to the dependence graph, and an end node simulating a next iteration of the loop may also added to the dependence graph. A loop-independent edge between a source node and the start node is added to the dependence graph, and a loop-independent edge between a sink node and the end node is added to the dependence graph. Loop-carried edges which satisfy a computed lower bound on the time required for a single loop iteration are eliminated from a dependence graph, and loop-carried edges which do not satisfy the computed lower bound are replaced by a pair of loop-independent edges. Instructions may be scheduled for execution based on the dependence graph.
    Type: Grant
    Filed: June 23, 1997
    Date of Patent: March 28, 2000
    Assignee: International Business Machines Corporation
    Inventors: Barbara Bluestein Simons, Vivek Sarkar
  • Patent number: 6035124
    Abstract: A fast and efficient way of performing extended global value numbering beyond basic blocks and extended basic blocks on a complete topological ordering of basic blocks in a program. Global value numbering is further extended with a Value Number List, an ordered list of value numbers of an expression, and iterative processing of a worklist containing expressions which are recursively defined. A hash table is used to reduce storage and processing time.
    Type: Grant
    Filed: December 6, 1995
    Date of Patent: March 7, 2000
    Assignee: International Business Machines Corporation
    Inventor: John Shek-Luen Ng
  • Patent number: 5991764
    Abstract: A data structure supporting a data-parallel reduction operation performed by a group of threads, a rope, participating in a multi-level two-phase tree structure: a fan-in computation phase followed by a fan-out broadcast phase. Local reductions are performed at each subtree during the fan-in phase, and the final reduced value is broadcast to all the threads during the fan-out phase. As the reduction operation is a data-parallel operation, the reduction operation is rope specific and is provided by the use of a parallel computation skeleton defined by the data structure which is a fan-in followed by the fan-out, a data-type specific binary operation, and a final broadcast that takes place in the reduction operation. When the rope object is constructed, the parallel computation skeleton is automatically constructed from information contained in the data structure.
    Type: Grant
    Filed: March 12, 1997
    Date of Patent: November 23, 1999
    Assignee: International Business Machines Corporation
    Inventor: Neelakantan Sundaresan
  • Patent number: 5987255
    Abstract: A generic adaptor for converting from a sequential iterator to a parallel iterator is provided for the parallelization of sequential algorithms. The parallel algorithm implementation of a sequential algorithm is provided by the use of a template function with one template parameter in addition to those parameters of the corresponding sequential algorithm. This additional parameter is a strategy object which is an instance of a strategy class. In the body of the parallel algorithm, the strategy object is used to convert each sequential iterator to a plurality of per-thread parallel iterators. Each per-thread parallel iterator traverses those portions of a container for which the thread corresponding to this per-thread parallel iterator is responsible. When each thread has computed a partial result, the results are composed through a reduction operation if the partial results are an associative or commutative operation for a particular work distribution.
    Type: Grant
    Filed: March 12, 1997
    Date of Patent: November 16, 1999
    Assignee: International Business Machines Corporation
    Inventor: Neelakantan Sundaresan
  • Patent number: 5960433
    Abstract: A program data structure is defined by a data field definition having a plurality of data field definition blocks, the data field definition blocks comprising a plurality of data items, the data items including data item names, data item hierarchy data and data item length data. A user uses a mouse pointer and clicks it on a data item in a program to select the data item. The method of the present invention calculates offset data for selected data items. When there is a data item that is used for re-definition, the offset for a data item to be re-defined is added to the offset data to provide an offset value. The data items are arranged in order according to their hierarchical relationship, and data items that have the same offset are displayed as a single line. A numeral for an offset is added to the line, and a broken line is used to separate lines of data items.
    Type: Grant
    Filed: April 8, 1997
    Date of Patent: September 28, 1999
    Assignee: International Business Machines Corporation
    Inventors: Kunikazu Fujii, Hideaki Shinomi