Patents by Inventor Justin K. King

Justin K. King has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9747082
    Abstract: The present disclosure relates to maintaining assertions in source code components of a development project by an integrated development environment (IDE) tool. According to one embodiment, a request is received to build a software application generated from the development project. Based on prior executions of the software application, resource requirements for each of one or more assertions included in the prior executions of the software application are identified. One or more of the assertions based on the identified resource requirements are selectively inserted in the source code components. The source code components of the development project are compiled to build the software application.
    Type: Grant
    Filed: December 18, 2014
    Date of Patent: August 29, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9740588
    Abstract: A computer-implemented method of reducing impact of performance data gathering on execution of instrumented code comprises gathering respective performance data for each of a plurality of routines in the instrumented code over a plurality of execution instances of the instrumented code. The method also comprises determining that the gathered performance data for the at least one selected routine follows an identified pattern for at least one selected routine from the plurality of routines and, in response to determining that the at least one selected routine follows an identified pattern, removing instrumentation associated with the at least one selected routine.
    Type: Grant
    Filed: May 26, 2015
    Date of Patent: August 22, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9733903
    Abstract: The present disclosure relates to maintaining assertions in source code components of a development project by an integrated development environment (IDE) tool. According to one embodiment, a request is received to build a software application generated from the development project. Based on prior executions of the software application, resource requirements for each of one or more assertions included in the prior executions of the software application are identified. One or more of the assertions based on the identified resource requirements are selectively inserted in the source code components. The source code components of the development project are compiled to build the software application.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: August 15, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9720657
    Abstract: The present disclosure relates to maintaining assertions in an integrated development environment (IDE) tool. According to one embodiment, the IDE receives a request to add an assertion at a specified location within source code of an application from a user interacting with an integrated development environment (IDE) tool. The source code is stored in a first file associated with a development project. The IDE tool receives a definition for the assertion and stores the definition for the assertion in a second file associated with the development project. The IDE tool creates an association in the development project between the source code of the application and the assertion.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: August 1, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9703552
    Abstract: The present disclosure relates to managing assertions in program source code in an integrated development environment (IDE) tool. According to one embodiment, the IDE tool receives a request to execute an application built from source code of a development project from a user interacting with an integrated development environment (IDE) tool. The IDE tool identifies changes to one or more of the source code of the development project from a previous version of the one or more source code. Based on the changes to the source code, the IDE tool selectively identifies one or more assertions to insert in the source code based on the identified changes.
    Type: Grant
    Filed: December 18, 2014
    Date of Patent: July 11, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9703553
    Abstract: The present disclosure relates to managing assertions in program source code in an integrated development environment (IDE) tool. According to one embodiment, the IDE tool receives a request to execute an application built from source code of a development project from a user interacting with an integrated development environment (IDE) tool. The IDE tool identifies changes to one or more of the source code of the development project from a previous version of the one or more source code. Based on the changes to the source code, the IDE tool selectively identifies one or more assertions to insert in the source code based on the identified changes.
    Type: Grant
    Filed: December 19, 2014
    Date of Patent: July 11, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9690917
    Abstract: A system and computer implemented method for determining compromised passwords is disclosed. The method may include displaying, in a first set of positions, a set of entry keys of a device. The method may include collecting a first set of tracking data including the first set of positions for entry of a first password. The method may also include displaying the set of entry keys of the device in a second set of positions. The method may also include determining a second password based on the second set of positions and entry of the first password. The method may also include determining whether the second password was entered into the device.
    Type: Grant
    Filed: May 23, 2014
    Date of Patent: June 27, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9684584
    Abstract: The present disclosure relates to maintaining assertions in an integrated development environment (IDE) tool. According to one embodiment, while the IDE tool is compiling the source code of a development project, the IDE tool generates at least a first compiler warning. The first compiler warning generally corresponds to at least one line of source code in a first source code component of the development project. A first set of assertions to add to the source code of the development project is determined based on the line of source code that resulted in the first compiler warning. The IDE tool adds the first set of assertions to the source code of the development project. The first set of assertions are compiled as part of the source code of the development project.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: June 20, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9678855
    Abstract: The present disclosure relates to maintaining assertions in an integrated development environment (IDE) tool. According to one embodiment, while the IDE tool is compiling the source code of a development project, the IDE tool generates at least a first compiler warning. The first compiler warning generally corresponds to at least one line of source code in a first source code component of the development project. A first set of assertions to add to the source code of the development project is determined based on the line of source code that resulted in the first compiler warning. The IDE tool adds the first set of assertions to the source code of the development project. The first set of assertions are compiled as part of the source code of the development project.
    Type: Grant
    Filed: December 30, 2014
    Date of Patent: June 13, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9639478
    Abstract: A method for controlling access to a memory of a computer system configured with at least one logical partition may include receiving a first request to map a first page of the memory, the request identifying a first requester. A first logical partition associated with the first page may be determined. It may be determined that an attribute of the first logical partition limits access to individual pages of the first logical partition to a single requester, and that the first page is available to be mapped to a requester. The first page may be mapped to the first requester and a flag indicating that the first page is unavailable for an additional mapping may be set. The first request may be from a device driver on behalf of an input/output adapter, as the first requester, to use the first page in a direct memory access transfer.
    Type: Grant
    Filed: January 17, 2014
    Date of Patent: May 2, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Publication number: 20170116067
    Abstract: An error mechanism provides stored error information to assist in determining the cause of failure of a storage device such as a hard disk drive. The error mechanism gathers information surrounding an error event from various software and hardware components in the system. An event command is sent to the storage device that includes the gathered information. The storage device stores the gathered information from the event command in a log on the storage device. After the storage device is removed from the system the error information in the log can be used to determine the cause of the failure. The event command may be standardized into an existing industry communication protocol or be vendor specific.
    Type: Application
    Filed: October 26, 2015
    Publication date: April 27, 2017
    Inventors: Timothy M. Damron, Justin K. King, Lee N. Helgeson, Michelle A. Schlicht
  • Publication number: 20170116068
    Abstract: An error mechanism provides stored error information to assist in determining the cause of failure of a storage device such as a hard disk drive. The error mechanism gathers information surrounding an error event from various software and hardware components in the system. An event command is sent to the storage device that includes the gathered information. The storage device stores the gathered information from the event command in a log on the storage device. After the storage device is removed from the system the error information in the log can be used to determine the cause of the failure. The event command may be standardized into an existing industry communication protocol or be vendor specific.
    Type: Application
    Filed: February 23, 2016
    Publication date: April 27, 2017
    Inventors: Timothy M. Damron, Justin K. King, Lee N. Helgeson, Michelle A. Schlicht
  • Patent number: 9626281
    Abstract: A computer implemented method for identifying program flow in a computer program, executing in a debugger on at least one processor, subsequent to suspending execution of the computer program at a user breakpoint can include suspending execution of the computer program at a first user breakpoint, setting, by the debugger, one or more tracking breakpoints in one or more routines that can continue execution from the first user breakpoint, then resuming execution of the computer program. The method may be continued by suspending execution of the computer program at a second user breakpoint after processing by the at least one processor at least one instruction of the computer program. The method may further include determining whether to provide an indicator to indicate that at least one of the one or more tracking breakpoints was hit during the executing, and providing the indicator in response to determining to provide the indicator.
    Type: Grant
    Filed: June 10, 2015
    Date of Patent: April 18, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9619369
    Abstract: Disclosed aspects include identifying basic blocks of a program. For each basic block, the compiler inserts an identifier that includes the function name, and is coupled with a counter variable. In response to generating the identifier coupled with the counter variable, the program is compiled. During program execution, the counter value is incremented in response to a call of the basic block when executing the program. In response to incrementing the counter value, the counter value coupled with the identifier is displayed.
    Type: Grant
    Filed: May 19, 2015
    Date of Patent: April 11, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9594669
    Abstract: Disclosed aspects include identifying basic blocks of a program. For each basic block, the compiler inserts an identifier that includes the function name, and is coupled with a counter variable. In response to generating the identifier coupled with the counter variable, the program is compiled. During program execution, the counter value is incremented in response to a call of the basic block when executing the program. In response to incrementing the counter value, the counter value coupled with the identifier is displayed.
    Type: Grant
    Filed: April 30, 2015
    Date of Patent: March 14, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9594666
    Abstract: Systems, methods, and computer program products to discover weak consistency errors in an application, by executing, by a debugger, a first thread of the application, by, determining that a first instruction in the first thread specifies to store a first value at a first memory address, setting a current value stored in the first memory address as an old value for the first memory address in a container for the first thread, executing the first instruction to store the first value at the first memory address, and setting the first value as a new value for the first memory address in the container for the first thread. The debugger then executes a second thread of the application, by restoring old values in the containers for all other threads and restoring a new value for each memory address specified in a container for the second thread to its respective memory address.
    Type: Grant
    Filed: October 9, 2014
    Date of Patent: March 14, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9594667
    Abstract: Methods to discover weak consistency errors in an application, by executing, by a debugger, a first thread of the application, by, determining that a first instruction in the first thread specifies to store a first value at a first memory address, setting a current value stored in the first memory address as an old value for the first memory address in a container for the first thread, executing the first instruction to store the first value at the first memory address, and setting the first value as a new value for the first memory address in the container for the first thread. The debugger then executes a second thread of the application, by restoring old values in the containers for all other threads and restoring a new value for each memory address specified in a container for the second thread to its respective memory address.
    Type: Grant
    Filed: December 11, 2014
    Date of Patent: March 14, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Cary L. Bates, Lee Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9575831
    Abstract: An apparatus and method detect the use of stale data values due to weak consistency between parallel threads on a computer system. A consistency error detection mechanism uses object code injection to build a consistency error detection table during the operation of an application. When the application is paused, the consistency error detection mechanism uses the consistency error detection table to detect consistency errors where stale data is used by the application. The consistency error detection mechanism alerts the user/programmer to the consistency errors in the application program.
    Type: Grant
    Filed: September 16, 2014
    Date of Patent: February 21, 2017
    Assignee: International Business Machines Corporation
    Inventors: Cary L. Bates, Lee N. Helgeson, Justin K. King, Michelle A. Schlicht
  • Patent number: 9569243
    Abstract: Embodiments disclosed herein generally include a computer-implemented method, computer program product, and system to facilitate offloaded and parallelized direct memory access (DMA) translation table operations. The method includes a hypervisor requesting a lease on an auxiliary parallel processing element assigned to a first virtual machine hosted by the hypervisor. The method further includes receiving a grant of the lease, whereby ownership of the auxiliary parallel processing element is transferred from the first virtual machine to the hypervisor. The method further includes, during the lease, providing a predefined program to execute on the auxiliary parallel processing element in order to perform a desired operation on the hypervisor DMA translation table and with parallelism. The method further includes, upon completion of the predefined program, terminating the lease by the hypervisor, whereby ownership of the auxiliary parallel processing element is returned to the first virtual machine.
    Type: Grant
    Filed: December 5, 2014
    Date of Patent: February 14, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Justin K. King
  • Publication number: 20170039131
    Abstract: Method and apparatus for enhancing an executable is disclosed herein. In one embodiment, the method includes instrumenting an executable with additional program code to detect run-time errors, and while running the instrumented executable within a debug environment generating the run-time errors detected by the additional program code, upon reaching a breakpoint, identifying any of the run-time errors which occurred while executing a function in which the breakpoint is located, and transmitting an indication of the identified run-time errors to the debugging environment.
    Type: Application
    Filed: August 4, 2015
    Publication date: February 9, 2017
    Inventors: Cary L. BATES, Lee HELGESON, Justin K. KING, Michelle A. SCHLICHT