Patents by Inventor Xiao-Yan Tang

Xiao-Yan Tang 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).

  • Publication number: 20240134805
    Abstract: A method, including: identifying static application features of an application; identifying resource access features of the application; labeling a translation lookaside buffer (TLB) miss threshold of a runtime feature of the application; determining utilization of larger pages during the runtime based on the TLB miss threshold; and setting the TLB miss threshold based on the determined utilization of the larger pages.
    Type: Application
    Filed: October 19, 2022
    Publication date: April 25, 2024
    Inventors: Naijie Li, Dong Hui Liu, Jing Lu, Peng Hui Jiang, Xiao Yan Tang, Bao Zhang, Yong Yin, Jun Su, Jia Yu
  • 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
  • Patent number: 11947498
    Abstract: Methods, systems, and computer program products for de-duplicating data in executable files in a container image are disclosed. The method may include receiving a request to read a file in a first layer in a container image including a plurality of layers, wherein the file is a delta file which is from an updated executable file based on a base executable file, the base executable file is in a lower layer than the first layer in the container image, and the delta file includes block mappings between the updated executable file and the base executable file and different data between the two files, and blocks included in the two files are based on respective file structure. The method may also include restoring the updated executable file based on the delta file and the base executable file. The method may further include returning data in the updated executable file.
    Type: Grant
    Filed: May 12, 2022
    Date of Patent: April 2, 2024
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Dong Hui Liu, Peng Hui Jiang, Jing Lu, Xiao Yan Tang, Jun Su, Jia Yu, Yong Yin
  • Publication number: 20240095359
    Abstract: An embodiment includes generating a caller list of callers that issue requests for calling a designated program at runtime. The embodiment also includes generating an authorized caller list of authorized callers allowed to call the designated program, wherein the authorized callers are selected from among callers on the caller list. The embodiment also includes generating an authorization key for each of the authorized callers that the designated program will require as a condition for completing call requests.
    Type: Application
    Filed: September 20, 2022
    Publication date: March 21, 2024
    Applicant: International Business Machines Corporation
    Inventors: Dong Hui Liu, Peng Hui Jiang, Jing Lu, Jia Yu, Jun Su, Xiao Yan Tang, Yong Yin
  • Publication number: 20230367745
    Abstract: Methods, systems, and computer program products for de-duplicating data in executable files in a container image are disclosed. The method may include receiving a request to read a file in a first layer in a container image including a plurality of layers, wherein the file is a delta file which is from an updated executable file based on a base executable file, the base executable file is in a lower layer than the first layer in the container image, and the delta file includes block mappings between the updated executable file and the base executable file and different data between the two files, and blocks included in the two files are based on respective file structure. The method may also include restoring the updated executable file based on the delta file and the base executable file. The method may further include returning data in the updated executable file.
    Type: Application
    Filed: May 12, 2022
    Publication date: November 16, 2023
    Inventors: Dong Hui Liu, Peng Hui Jiang, Jing Lu, Xiao Yan Tang, Jun Su, Jia Yu, Yong Yin
  • Publication number: 20230315715
    Abstract: A computer-implemented method, system and computer program product for improving accuracy and efficiency of auditing databases. A table, list or index of a database is analyzed to identify metadata, which includes time series data, user data, an Internet Protocol address and operation data. The identified metadata is associated with the corresponding record or row of the table, list or index from which the metadata was extracted. A determination is then made as to whether to record a raw data image associated with the record or row of the analyzed table, list or index based on the corresponding data operation. The identified metadata as well as the recorded data images, if any, are stored in a structured audit log. Auditing information is then obtained from a structured audit log based on matching the record or row identifier (RID) associated with the query with the RID associated with the structured audit log.
    Type: Application
    Filed: March 30, 2022
    Publication date: October 5, 2023
    Inventors: Jia Tian Zhong, Peng Hui Jiang, Dong Hui Liu, Xing Xing Shen, Jia Yu, Yong Yin, Jing Lu, Xiao Yan Tang
  • Patent number: 11689362
    Abstract: An example operation may include one or more of generating an initial seed and allocating one or more authorized bits of the initial seed to a plurality of blocks in a distributed ledger, storing the initial seed and an identification of which authorized bits of the initial seed are allocated to each block of the distributed ledger, receiving a final seed value that is partially generated by each of a plurality of nodes configured to access the distributed ledger based on authorized bits of respective blocks updated by each respective node, and generating a random sequence value based on the final seed value and storing the random sequence value in a block of the distributed ledger.
    Type: Grant
    Filed: January 29, 2021
    Date of Patent: June 27, 2023
    Assignee: International Business Machines Corporation
    Inventors: Si Bin Fan, David Kaminsky, Tao Liu, Jing Lu, Xiao Yan Tang, Jun Zhang
  • 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
  • Patent number: 11675593
    Abstract: Embodiments of the invention are directed to updating a dynamic library. Aspects include receiving an indication that the dynamic library has been updated and identifying all program modules that depend on the dynamic library. Aspects also include, for each program module that depends on the dynamic library, reassigning an application program interface (API) address for a current version of the dynamic library to an API address of the updated version of the dynamic library.
    Type: Grant
    Filed: August 31, 2021
    Date of Patent: June 13, 2023
    Assignee: International Business Machines Corporation
    Inventors: Jing Lu, Dong Hui Liu, Xiao Yan Tang, Yong Yin, Peng Hui Jiang, Xiang Zu, Jia Yu
  • 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
  • Publication number: 20230061270
    Abstract: Embodiments of the invention are directed to updating a dynamic library. Aspects include receiving an indication that the dynamic library has been updated and identifying all program modules that depend on the dynamic library. Aspects also include, for each program module that depends on the dynamic library, reassigning an application program interface (API) address for a current version of the dynamic library to an API address of the updated version of the dynamic library.
    Type: Application
    Filed: August 31, 2021
    Publication date: March 2, 2023
    Inventors: Jing Lu, Dong Hui Liu, Xiao Yan Tang, Yong Yin, Peng Hui Jiang, Xiang Zu, Jia Yu
  • 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: 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