Patents by Inventor MING RAN LIU

MING RAN LIU 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: 11947993
    Abstract: A computer-implemented method includes creating a first file control block in a primary runtime environment with a first addressing mode and a second file control block in a secondary runtime environment with a second addressing mode, where both the first file control block and the second file control block describe a status of a first file of a caller program in the primary runtime environment. The parameters of the first file of the caller program in the primary runtime environment are passed to a target callee program in the secondary runtime environment. An anchor is added in the first file control block as a link to the second file control block. The first file control block are the second file control block synchronized with updates to the first file in the primary runtime environment and the passed parameters of the first file in the secondary runtime environment.
    Type: Grant
    Filed: June 22, 2021
    Date of Patent: April 2, 2024
    Assignee: International Business Machines Corporation
    Inventors: Ming Ran Liu, Jing Lu, Naijie Li, Xiao Yan Tang, Yuan Zhai, Kershaw S. Mehta
  • Publication number: 20230267005
    Abstract: A thread management process where a storage area template is generated for a plurality of threads that are to be created by a process in a computing system, the storage area template comprising at least one module template for at least one library that is to be loaded by the process. In the computing system, a plurality of storage areas is allocated for the plurality of threads based on the storage area template, respectively. The plurality of threads are managed based on the plurality of storage areas, respectively. All threads and libraries may be managed in a uniform way according to the storage area template. Therefore, thread management may be simplified and then may lead to reduced costs in the storage and time resources.
    Type: Application
    Filed: February 22, 2022
    Publication date: August 24, 2023
    Inventors: NAIJIE LI, Bao Zhang, Ming Ran Liu, Yuan Zhai, Jia Yu, Peng Hui Jiang, Guang Han Sui
  • Publication number: 20230185903
    Abstract: A first memory page in a memory of the computer is allocated as a first stack to buffer meta data for function calls in the program. A memory protection key for the first memory page is generated. A second memory page in the memory is allocated as a second stack to buffer user data for function calls in the program.
    Type: Application
    Filed: December 14, 2021
    Publication date: June 15, 2023
    Inventors: Naijie Li, Jing Lu, Ming Ran Liu, Xiao Yan Tang, Yuan Zhai, Guang Han Sui
  • Publication number: 20230136606
    Abstract: Global variables are shared between programs associated with different addressing modes. A first program of an application records an allocated address to a global variable in a global variable sharing area (GVSA). The first program is associated with a first addressing mode. The first program specifies the global variable to be shared across different addressing modes. An address of the GVSA is passed to a second program of the application that is loaded after the first program has been loaded. The second program is associated with a second addressing mode different from the first addressing mode. The second program also specifies the global variable in the second program to be shared across different addressing modes. The second program retrieves the allocated address to the global variable from the GVSA based on the address of the GVSA. The second program accesses the global variable based on the retrieved allocated address.
    Type: Application
    Filed: November 3, 2021
    Publication date: May 4, 2023
    Inventors: Xiao Yan Tang, Naijie Li, Jing Lu, Ming Ran Liu, Yuan Zhai, Kershaw S. Mehta
  • Patent number: 11556356
    Abstract: A call to an external interface to execute a target callee program associated with a first addressing mode in a secondary runtime environment (RTE) is received from a caller program associated with a second addressing mode running in a primary RTE. An address of a share area (SA) storing existing dynamic link object information in the primary RTE in storage is passed to the secondary RTE. The SA is accessible by both the caller program and the target callee program. In response to a request to load a dynamic link object by an initiating program during execution of the target callee program in the secondary RTE, an entry address of the dynamic link object is retrieved in the SA. The dynamic link object is loaded based on the retrieved entry address of the dynamic link object.
    Type: Grant
    Filed: September 23, 2021
    Date of Patent: January 17, 2023
    Assignee: International Business Machines Corporation
    Inventors: Naijie Li, Jing Lu, Xiao Yan Tang, Ming Ran Liu, Yuan Zhai, Kershaw S. Mehta
  • Publication number: 20220405118
    Abstract: Aspects of the invention include creating a first file control block in a primary runtime environment with a first addressing mode and a second file control block in a second runtime environment with a second addressing mode, where both the first file control block and the second file control block describe a status of a first file of a caller program in the primary runtime environment. The parameters of the first file of the caller program in the primary runtime environment are passed to a target callee program in the secondary runtime environment. An anchor is added in the first file control block as a link to the second file control block. The first file control block are the second file control block synchronized with updates to the first file in the primary runtime environment and the passed parameters of the first file in the secondary runtime environment.
    Type: Application
    Filed: June 22, 2021
    Publication date: December 22, 2022
    Inventors: Ming Ran Liu, Jing Lu, NAIJIE LI, Xiao Yan Tang, Yuan Zhai, Kershaw S. Mehta
  • Publication number: 20220374233
    Abstract: In an approach for improving data access performance in memory, a processor monitors each data access to a data element in the memory from an application, wherein the application has a plurality of functions. A processor records, during runtime, each data access into a monitoring element table, wherein the record for each data access includes an identity, a start address, an end address, and a memory page number. A processor clusters recorded data accesses for each function based on a distance between data elements accessed in sequence. A processor allocates, based on the data element clustering result, the data elements in a same cluster into a same memory unit in the memory.
    Type: Application
    Filed: May 24, 2021
    Publication date: November 24, 2022
    Inventors: Ming Ran Liu, Xiao Yan Tang, Bao Zhang, Jing Lu, Dong Hui Liu, Peng Hui Jiang, Yong Yin, Jia Yu
  • Patent number: 11500653
    Abstract: Techniques for signal handling between programs associated with different addressing modes in a computer system are described herein. An aspect includes, based on a signal occurring during execution of a first program in a first runtime environment, wherein the first program and the first runtime environment are associated with a first addressing mode, invoking a first signal exit routine associated with the first addressing mode. Another aspect includes allocating a signal information area (SIA) by the first signal exit routine. Another aspect includes calling a second signal exit routine associated with a second addressing mode that is different from the first addressing mode with an address of the SIA. Another aspect includes allocating a mirror SIA by the second signal exit routine. Another aspect includes handling the signal, and resuming execution based on the handling of the signal.
    Type: Grant
    Filed: February 5, 2020
    Date of Patent: November 15, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ming Ran Liu, Bao Zhang, Naijie Li, Jing Lu, Xiao Yan Tang, Kershaw S. Mehta
  • Patent number: 11442739
    Abstract: Embodiments of the present disclosure relate to a method, system, and computer program product for exception handling. In some embodiments, a method is disclosed. According to the method, in response to an application throwing an exception, a target stack frame for handling the exception is detected from a call stack of the application. The call stack comprises a plurality of stack frames. One of the plurality of stack frames corresponds to a function called by the application and supports either a one-phase exception handling mechanism or a two-phase exception handling mechanism. In response to the target stack frame being detected from the call stack, the target stack frame is caused to handle the exception. In other embodiments, a system and a computer program product are disclosed.
    Type: Grant
    Filed: September 16, 2019
    Date of Patent: September 13, 2022
    Assignee: International Business Machines Carporation
    Inventors: Ming Ran Liu, Bao Zhang, Naijie Li, Yuan Zhai, Sean Douglas Perry
  • Patent number: 11294695
    Abstract: A computer-implemented method for termination of programs associated with different addressing modes includes receiving a call to an external interface to execute a target callee program from a caller program executing in a primary runtime environment. The external interface allocates an interoperability term area (ITA) in a primary runtime environment. The ITA is accessible by the primary runtime environment and a secondary runtime environment. The external interface executes the target callee program in the secondary runtime environment. The target callee program sets a termination reason parameter in the ITA. In response to the target callee program setting the termination reason parameter, a termination action in the primary runtime environment is performed. Various other methods, systems, and computer-readable media are also disclosed.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: April 5, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Xiao Yan Tang, Naijie Li, Jing Lu, Ming Ran Liu, Kershaw S. Mehta
  • Patent number: 11288105
    Abstract: Provided is a method for preventing deadlocks between competing threads. The method includes receiving a lock request from a first thread and, in response, identifying a potential deadlock with a second thread. In response, the method includes determining whether to deny the lock request, which includes: determining whether a first duration for which the first thread will hold the lock to complete its job is longer than a second duration for which the second thread will hold the lock to complete its job; determining whether the second thread will start to use the lock soon relative to the first duration; and determining whether both the first and second threads will complete their respective jobs within a time limit if the lock is denied to the first thread while the second thread completes its job. The method further includes denying the request for the requested lock from the first thread.
    Type: Grant
    Filed: July 27, 2020
    Date of Patent: March 29, 2022
    Assignee: International Business Machines Corporation
    Inventors: Jing Lu, Bao Zhang, Ming Ran Liu, Tie Liu, Xiao Yan Tang, Xiang Zu
  • Publication number: 20220027213
    Abstract: Provided is a method for preventing deadlocks between competing threads. The method includes receiving a lock request from a first thread and, in response, identifying a potential deadlock with a second thread. In response, the method includes determining whether to deny the lock request, which includes: determining whether a first duration for which the first thread will hold the lock to complete its job is longer than a second duration for which the second thread will hold the lock to complete its job; determining whether the second thread will start to use the lock soon relative to the first duration; and determining whether both the first and second threads will complete their respective jobs within a time limit if the lock is denied to the first thread while the second thread completes its job. The method further includes denying the request for the requested lock from the first thread.
    Type: Application
    Filed: July 27, 2020
    Publication date: January 27, 2022
    Inventors: Jing Lu, Bao Zhang, Ming Ran Liu, Tie Liu, Xiao Yan Tang, Xiang Zu
  • Publication number: 20210373917
    Abstract: A computer-implemented method for termination of programs associated with different addressing modes includes receiving a call to an external interface to execute a target callee program from a caller program executing in a primary runtime environment. The external interface allocates an interoperability term area (ITA) in a primary runtime environment. The ITA is accessible by the primary runtime environment and a secondary runtime environment. The external interface executes the target callee program in the secondary runtime environment. The target callee program sets a termination reason parameter in the ITA. In response to the target callee program setting the termination reason parameter, a termination action in the primary runtime environment is performed. Various other methods, systems, and computer-readable media are also disclosed.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Inventors: Xiao Yan Tang, Naijie Li, Jing Lu, Ming Ran Liu, Kershaw S. Mehta
  • Publication number: 20210240495
    Abstract: Techniques for signal handling between programs associated with different addressing modes in a computer system are described herein. An aspect includes, based on a signal occurring during execution of a first program in a first runtime environment, wherein the first program and the first runtime environment are associated with a first addressing mode, invoking a first signal exit routine associated with the first addressing mode. Another aspect includes allocating a signal information area (SIA) by the first signal exit routine. Another aspect includes calling a second signal exit routine associated with a second addressing mode that is different from the first addressing mode with an address of the SIA. Another aspect includes allocating a mirror SIA by the second signal exit routine. Another aspect includes handling the signal, and resuming execution based on the handling of the signal.
    Type: Application
    Filed: February 5, 2020
    Publication date: August 5, 2021
    Inventors: Ming Ran Liu, Bao Zhang, NAIJIE LI, Jing Lu, Xiao Yan Tang, Kershaw S. Mehta
  • Publication number: 20210081208
    Abstract: Embodiments of the present disclosure relate to a method, system, and computer program product for exception handling. In some embodiments, a method is disclosed. According to the method, in response to an application throwing an exception, a target stack frame for handling the exception is detected from a call stack of the application. The call stack comprises a plurality of stack frames. One of the plurality of stack frames corresponds to a function called by the application and supports either a one-phase exception handling mechanism or a two-phase exception handling mechanism. In response to the target stack frame being detected from the call stack, the target stack frame is caused to handle the exception. In other embodiments, a system and a computer program product are disclosed.
    Type: Application
    Filed: September 16, 2019
    Publication date: March 18, 2021
    Inventors: Ming Ran Liu, Bao Zhang, NAIJIE LI, Yuan Zhai, Sean Douglas Perry
  • Patent number: 10694034
    Abstract: Provided are systems, methods, and media for verifying a commission-based relationship in a communication system. An example method includes generating authorization information by an authorizer that is to be transmitted to a caller and forwarded by the caller to a callee upon a call being initiated between the caller and the callee, in which the authorization information includes at least authorizer identity information, callee identity information, and a caller public key. The method includes signing the authorization information with a private key of the authorizer and transmitting the signed authorization information to the caller. The caller is configured to generate a digital signature via a private key of the caller and transmit the digital signature and the signed authorization information to the callee. The callee is configured to verify the identity of authorizer, caller and callee and event information based on the authorization information.
    Type: Grant
    Filed: December 12, 2018
    Date of Patent: June 23, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Xiao Yan Tang, Tao Liu, Jing Lu, Ming Ran Liu, Xiao Ling Chen
  • Publication number: 20200195778
    Abstract: Provided are systems, methods, and media for verifying a commission-based relationship in a communication system. An example method includes generating authorization information by an authorizer that is to be transmitted to a caller and forwarded by the caller to a callee upon a call being initiated between the caller and the callee, in which the authorization information includes at least authorizer identity information, callee identity information, and a caller public key. The method includes signing the authorization information with a private key of the authorizer and transmitting the signed authorization information to the caller. The caller is configured to generate a digital signature via a private key of the caller and transmit the digital signature and the signed authorization information to the callee. The callee is configured to verify the identity of authorizer, caller and callee and event information based on the authorization information.
    Type: Application
    Filed: December 12, 2018
    Publication date: June 18, 2020
    Inventors: Xiao Yan Tang, Tao Liu, Jing Lu, Ming Ran Liu, Xiao Ling Chen
  • Patent number: 10613842
    Abstract: A computer-implemented method includes receiving an initial control flow graph (CFG) describing a project, where the project includes one or more programs. The initial CFG includes a plurality of graph nodes and a plurality of edges connecting the plurality of graph nodes to one another. Based on first profiling data, a first set of one or more graph nodes of the plurality of graph nodes of the initial CFG is selected as a first set of main nodes. The first profiling data describes a first execution history of the project. The initial CFG is simplified by generating a first final CFG, which includes the first set of main nodes and excludes one or more remaining nodes of the initial CFG that are not in the first set of main nodes.
    Type: Grant
    Filed: April 30, 2018
    Date of Patent: April 7, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Bao Zhang, Naijie Li, Ming Ran Liu, Yuan Zhai
  • Publication number: 20190332364
    Abstract: A computer-implemented method includes receiving an initial control flow graph (CFG) describing a project, where the project includes one or more programs. The initial CFG includes a plurality of graph nodes and a plurality of edges connecting the plurality of graph nodes to one another. Based on first profiling data, a first set of one or more graph nodes of the plurality of graph nodes of the initial CFG is selected as a first set of main nodes. The first profiling data describes a first execution history of the project. The initial CFG is simplified by generating a first final CFG, which includes the first set of main nodes and excludes one or more remaining nodes of the initial CFG that are not in the first set of main nodes.
    Type: Application
    Filed: April 30, 2018
    Publication date: October 31, 2019
    Inventors: BAO ZHANG, NAIJIE LI, MING RAN LIU, YUAN ZHAI