Patents Represented by Attorney, Agent or Law Firm Roy W. Truelson
  • Patent number: 8341636
    Abstract: A system and method for managing simultaneous access to a scarce or serially re-usable resource by multiple process threads. A stationary queue is provided, including a wait counter for counting the cumulative number of threads that have been temporarily denied the resource; a satisfied counter for counting the cumulative number of threads that have been denied access and subsequently granted access to said resource; a sleep code routine responsive to the wait counter for generating a run identifier; and a wakeup code routine responsive to the satisfied counter for generating the run identifier.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: December 25, 2012
    Assignee: International Business Machines Corporation
    Inventor: George William Wilhelm, Jr.
  • Patent number: 8327386
    Abstract: Disclosed is an apparatus, method, service product, and program product which each provide an enhanced, registration-based event handler mechanism. Listener programs are located and compiled before notification is needed. When notification is ultimately required, the pre-located listeners can be called directly without incurring the performance expense associated with first locating and then calling each listener.
    Type: Grant
    Filed: January 25, 2012
    Date of Patent: December 4, 2012
    Assignee: International Business Machines Corporation
    Inventors: William T. Newport, John Joseph Stecher
  • Patent number: 8321231
    Abstract: A method and system that captures and delivers customized souvenir images to a plurality of attendees at a sporting event, music concert, and the like. Individuals wanting to receive a copy of these images provide location information, such as their assigned seat number. The present invention uses this information to identify the proper image and deliver it to the customer. Embodiments of the present invention may be adapted for use in a kiosk and to deliver the picture over a computer network, such as the Internet.
    Type: Grant
    Filed: November 7, 2001
    Date of Patent: November 27, 2012
    Assignee: Toshiba Global Commerce Solutions Holding Corporation
    Inventor: Patricia A. Torrens-Burton
  • Patent number: 8312462
    Abstract: Disclosed is an apparatus, method, and program product for identifying and grouping threads that have interdependent data access needs. The preferred embodiment of the present invention utilizes two different constructs to accomplish this grouping. A Memory Affinity Group (MAG) is disclosed. The MAG construct enables multiple threads to be associated with the same node without any foreknowledge of which threads will be involved in the association, and without any control over the particular node with which they are associated. A Logical Node construct is also disclosed. The Logical Node construct enables multiple threads to be associated with the same specified node without any foreknowledge of which threads will be involved in the association. While logical nodes do not explicitly identify the underlying physical nodes comprising the system, they provide a means of associating particular threads with the same node and other threads with other node(s).
    Type: Grant
    Filed: August 31, 2009
    Date of Patent: November 13, 2012
    Assignee: International Business Machines Corporation
    Inventors: Lynn Keat Chung, Mark Robert Funk, Richard Karl Kirkman, Angela Mae Newton, Don Darrell Reed
  • Patent number: 8274680
    Abstract: To provide an optimal service matched with requests from users of a MFP connected with a network. A method for providing a service by a multifunction peripheral (MFP) 10 includes the steps of: receiving a request for the service; receiving information 90 required for executing the service from an external device 30 capable of communicating with the MFP; judging, based on the received information 90, whether the MFP 10 itself executes processing for providing the service or the external device 30 executes the processing (50); and if the MFP itself executes the processing and if the MFP does not have an application required for the execution, downloading the application 100 from the external device.
    Type: Grant
    Filed: June 13, 2008
    Date of Patent: September 25, 2012
    Assignee: International Business Machines Corporation
    Inventor: Chinami Hamatani
  • Patent number: 8271960
    Abstract: Program execution profile data is collected by direct measurement of some code paths, and by inferring data for unmeasured paths. The data collection process may cause errors, which are propagated by the inferencing process. The profile data thus constructed is further enhanced by detecting certain data mismatches, and adjusting inferred data to reduce the scope of errors propagated during the inferencing process. Preferably, a control flow graph of the program being measured is constructed. Mismatches in the total weights of input arcs versus output arcs are detected. For certain specific types of mismatches, it can be known or guessed which count is incorrect, and this count is accordingly corrected. Correction of arc counts proceeds recursively until it is no longer possible to correct mismatches. Additionally, certain other conditions are adjusted as presumed inaccuracies.
    Type: Grant
    Filed: April 9, 2008
    Date of Patent: September 18, 2012
    Assignee: International Business Machines Corporation
    Inventor: William Jon Schmidt
  • Patent number: 8261287
    Abstract: Disclosed is a method, apparatus, and program product that allows for monitoring of the progress of process without alterations to the existing application. There are provided a mapping logic generating unit 14 that refers to a mapping definition stored in a mapping definition storage unit 11 for mapping an object flow event to a control flow event, generates a mapping logic for identifying a control flow event mapped to an object flow event, and stores the mapping logic in a mapping logic storage unit 16; a log logic generator unit 15 that refers to a process definition stored in a process definition storage unit 12 for mapping a control flow event to monitoring log information, generates a log logic for providing a monitoring log of control flow events, and stores the log logic in a log logic storage unit 17; and a logic skeleton composer unit 18 that embeds a mapping logic and a log logic into a skeleton stored in a skeleton storage unit 13.
    Type: Grant
    Filed: July 11, 2008
    Date of Patent: September 4, 2012
    Assignee: International Business Machines Corporation
    Inventors: Hisatoshi Adachi, Sari Shimizu, Yohsuke Tanaka, Yoshihiro Osaka
  • Patent number: 8255887
    Abstract: A memory management mechanism requires data structures to be explicitly deallocated in the programming code, but deallocation does not immediately make the memory available for reuse. Before a deallocated memory region can be reused, memory is scanned for pointers to the deallocated region, and any such pointer is set to null. The deallocated memory is then available for reuse. Preferably, deallocated memory regions are accumulated, and an asynchronous memory cleaning process periodically scans memory to nullify the pointers. In order to prevent previously scanned memory becoming contaminated with a dangling pointer before the scan is finished, any write to a pointer is checked to verify that the applicable target address has not been deallocated.
    Type: Grant
    Filed: November 29, 2006
    Date of Patent: August 28, 2012
    Assignee: International Business Machines Corporation
    Inventor: Timothy Hume Heil
  • Patent number: 8253732
    Abstract: A method, system, and program product is disclosed for remote visualization in which a server window contents is displayed remotely at a client. The client creates a 3D rendering surface on a client graphics card to display a server window contents and receives update data from the server relating to the server window contents. The update data is uploaded to the client graphics card and the graphics processing unit (GPU) is used to decode the update data and render the update data to the 3D rendering surface. The graphical processing unit includes general purpose computing on graphics processing unit functionality to provide the decoding processing.
    Type: Grant
    Filed: December 22, 2008
    Date of Patent: August 28, 2012
    Assignee: International Business Machines Corporation
    Inventors: John Hamill, Mark Levins, Davide Pasetto
  • Patent number: 8250568
    Abstract: A method of distributing and executing upgrade/installation instructions as data objects. These instructions can then be completed automatically requesting user interaction only when required. This method would allow someone with little knowledge of the application and/or internal implementation of said application to perform an upgrade to the application.
    Type: Grant
    Filed: October 14, 2008
    Date of Patent: August 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Samuel Daniel Dull, III, James E. Favre, Shawn Michael Hanson
  • Patent number: 8250347
    Abstract: Asymmetric hardware support for a special class of threads is provided. Preferably, the special class threads are high-priority, I/O bound threads. Preferably, a multithreaded processor contains N sets of registers for supporting concurrent execution of N threads. At least one of the register sets is dedicated for use by a special class of threads, and can not be used by other threads even if idle. The special class of threads can fill only the a limited portion of the cache memory, in order to reduce flushing of the cache which might otherwise occur.
    Type: Grant
    Filed: October 24, 2007
    Date of Patent: August 21, 2012
    Assignee: International Business Machines Corporation
    Inventor: David Alan Kra
  • Patent number: 8239959
    Abstract: A method and system prevents data stored in a computer system from being manipulated, particularly via hacker attacks and virus infection. The computer system comprises means for switching a portion of system memory into a write-protected mode which is exclusively operable from outside of the computer's operating system. During boot or during an installation process of an application program, writing to a write-protectable area is temporarily enabled, and security-relevant information is written into said write-protectable area. A user is then prompted to perform a manual switching to restrict writing to said write-protectable area, and write access to said write protected area is thereafter restricted in response to said manual switching during further runtime of said computer system.
    Type: Grant
    Filed: March 4, 2008
    Date of Patent: August 7, 2012
    Assignee: International Business Machines Corporation
    Inventor: Wolfgang Gellerich
  • Patent number: 8225105
    Abstract: Vital data components of a computer system are protected by a mechanism for detecting unauthorized alteration, preferably in the form of digital signatures to detect unauthorized alteration. A vital data validation mechanism is provided to verify that vital data modules have not been tampered with. The vital data validation mechanism verifies the current state of each vital data module, preferably by decrypting the digital signature. The validation mechanism also checks an alteration log to verify that no alterations have been made to the corresponding memory locations. The second verification is intended to detect whether a vital data module has been altered temporarily, and then restored to its initial state.
    Type: Grant
    Filed: August 13, 2007
    Date of Patent: July 17, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael J. Brinker, Rick D. Hemmer, Daniel M. Hursh, Jeffrey M. Uehling
  • Patent number: 8200702
    Abstract: A content management system (CMS) synchronization mechanism synchronizes content attributes, preferably in metadata, with content documents. For each of one or more content attributes (e.g. metadata fields), a respective content document context is associated. Each attribute is synchronized to content in the content document according to the associated context. Preferably, the content document contains multiple nested files, and context limits synchronization to a subset of files. Synchronization rules, enforced by a synchronization engine, define respective attributes and content to be synchronized, each rule having an associated context in the content document. Rules are preferably created in XML format, and parsed to produce a document object model upon which the synchronization engine operates.
    Type: Grant
    Filed: September 30, 2009
    Date of Patent: June 12, 2012
    Assignee: International Business Machines Corporation
    Inventors: David G. Herbeck, John E. Petri, John P. Ponthempilly
  • Patent number: 8185878
    Abstract: The present invention includes program storing unit 11 for storing a program, parsing/dependence-information generating unit 12 for generating dependence information and a syntax tree for a program, dependence-information storing unit 13 for storing dependence information, syntax-tree storing unit 14 for storing a syntax tree, dependence-information tracking unit 17 for extracting interface information on a program fragment according to specifying-information specifying the program fragment and extracting a part of a program fragment associated with interface information according to selection information for selecting the interface information, and information input/output unit 15 for passing specifying-information and selection information to dependence-information tracking unit 17 and outputting interface information and a part of a program fragment passed from dependence-information tracking unit 17.
    Type: Grant
    Filed: July 18, 2008
    Date of Patent: May 22, 2012
    Assignee: International Business Machines Corporation
    Inventor: Hideaki Shinomi
  • Patent number: 8161366
    Abstract: A method and system for using a magnitude comparator circuit and a flag bit, for detecting and preventing errors from occurring in the FSM state bits that could otherwise cause the system to hang. Preferably, the flag bit is set with all the valid state transitions, and a magnitude comparator is used to continuously monitor the value of the current state bits. When a FSM state transition occurs based on the flag bit and the output of the magnitude comparator, a potential error condition can be detected and the FSM transition can be blocked or the FSM can be safely transitioned into a predetermined “reset state”.
    Type: Grant
    Filed: December 3, 2007
    Date of Patent: April 17, 2012
    Assignee: International Business Machines Corporation
    Inventors: Anil Pothireddy, Neranjen Ramalingam
  • Patent number: 8151177
    Abstract: A method and arrangement for the implementation of a simple algorithm to store an N-bit checksum into any unaligned position within a larger NxP-bit word, which avoids the use of a logic-intensive implementation that employs a bank of demultiplexers, or a latency-increasing approach of “read-modify-write”.
    Type: Grant
    Filed: November 28, 2007
    Date of Patent: April 3, 2012
    Assignee: International Business Machines Corporation
    Inventor: Narasimha Ramakrishna Adiga
  • Patent number: 8140717
    Abstract: A low-level logical partitioning function associates partitions, partitionable entities, and location codes. Partitionable entities are hardware components, not necessarily individually replaceable. The location code reflects the physical topology of the system packaging. It is preferably a string of concatenated elements, each element representing a device in a hierarchical level of devices which may contain other devices. A respective location code is likewise associated with each of multiple physical indicators. The location code of partitionable entities allocated to a partition is compared with the indicator's location code to determine whether a process executing within a partition can access the indicator. Preferably, each partition has a virtual indicator corresponding to a physical indicator, the state of the physical indicator being derived as a function of the states of multiple virtual indicators for multiple partitions.
    Type: Grant
    Filed: September 26, 2008
    Date of Patent: March 20, 2012
    Assignee: International Business Machines Corporation
    Inventors: Curtis Shannon Eide, Aditya Kumar
  • Patent number: 8141089
    Abstract: A soft lock mechanism controls access by multiple processes to a shared resource to make simultaneous access an unlikely event, while not necessarily preventing simultaneous access. Preferably, the soft lock contains a next_free_time field, specifying when the soft lock will next be available, and a lock_duration, specifying a sufficiently long interval for most accesses to the resource to complete. The lock is obtained by comparing the current time to next_free_time. If the current time is later than next_free_time, then the lock is obtained immediately, and next_free_time is updated to the current time plus lock_duration. If the current time is before next_free_time, then next_free_time is incremented by lock_duration, and the requesting process waits until the old next_free_time to obtain the lock. No action is required to release the lock.
    Type: Grant
    Filed: January 11, 2007
    Date of Patent: March 20, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael J. Corrigan, Gary Ross Ricard, Timothy Joseph Torzewski
  • Patent number: 8140529
    Abstract: A database access facility for accessing databases includes a monitoring function which monitors accesses by requesters of database data. The monitoring function tracks which database fields are requested to dynamically determine the fields which the application needs. Once sufficient tracking data is obtained, subsequent accesses to the database on behalf of an application are automatically modified by the application server to request only the fields which are likely to be needed. Preferably, the database access facility is an application server for one or middle tier applications which access the database on behalf of multiple clients in a three-tier client-server environment.
    Type: Grant
    Filed: July 28, 2005
    Date of Patent: March 20, 2012
    Assignee: International Business Machines Corporation
    Inventors: William T. Newport, John Joseph Stecher, Robert Wisniewski