Just-in-time Compiling Or Dynamic Compiling (e.g., Compiling Java Bytecode On A Virtual Machine) Patents (Class 717/148)
  • Patent number: 11416272
    Abstract: Computer-implemented methods, non-transitory, computer-readable media, and computer-implemented systems are provided for executing a smart contract in a blockchain network. A computer-implemented method includes: in response to determining that bytecodes of a smart contract are deployed on a first blockchain node in a blockchain network, starting, by the first blockchain node, to compile the bytecodes of the smart contract into machine codes of the smart contract through a Just-In-Time (JIT) compiler; determining, by the first blockchain node, that the machine codes of the smart contract are not locally stored and that execution results of the machine codes of the smart contract and the bytecodes of the smart contract are consistent; and in response to the determining, performing, by the first blockchain node, interpretation execution on the bytecodes of the smart contract.
    Type: Grant
    Filed: June 29, 2021
    Date of Patent: August 16, 2022
    Inventors: Qi Liu, Xuepeng Guo
  • Patent number: 11416226
    Abstract: A computer-implemented method (and corresponding system) is provided that enables or facilitates the execution of a portion of source code, written in a high-level language (HLL), on a blockchain platform. The method and system can include a blockchain compiler, arranged to convert a portion of high-level source code into a form that can be used with a blockchain platform. This may be the Bitcoin blockchain or an alternative. The method can include: receiving the portion of source code as input; and generating an output script comprising a plurality of op codes. The op codes are a subset of op codes that are native to a functionally-restricted, blockchain scripting language. The outputted script is arranged and/or generated such that, when executed, the script provides, at least in part, the functionality specified in the source code.
    Type: Grant
    Filed: July 5, 2018
    Date of Patent: August 16, 2022
    Assignee: nChain Licensing AG
    Inventors: Craig Steven Wright, Stephane Savanah
  • Patent number: 11409508
    Abstract: A computing device including a processor configured to receive source code including a plurality of source code modules. The processor may generate executable code from the source code and assign two or more reload indicators to two or more executable code modules. The processor may execute the executable code. During execution of the executable code, the processor may receive a source code update and generate an executable code update from the source code and the source code update. The processor may apply the executable code update to the executable code to generate updated executable code. The processor may generate a reload ordering of two or more reload operations corresponding to the reload indicators. As specified by the reload ordering, the processor may perform the two or more reload operations at the two or more respective executable code modules. The processor may execute the updated executable code.
    Type: Grant
    Filed: June 25, 2021
    Date of Patent: August 9, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Stephen Harris Toub, Stephane Delcroix, Jan Kotas, Michael John McLaughlin, Pranav Krishnamoorthy, Thomas A. McDonald
  • Patent number: 11354180
    Abstract: Secure backwards compatible orchestration of isolated guests is disclosed. For example, a current version of an isolated guest orchestrator instantiates an older version of the isolated guest orchestrator in a host as a dependent compute service. An application programming interface request is received. The application programming interface request is determined to be unsupported by the current version of the isolated guest orchestrator. The application programming interface request is sent to the dependent compute service. The application programming interface request is responded to based on a response from the dependent compute service.
    Type: Grant
    Filed: August 6, 2020
    Date of Patent: June 7, 2022
    Assignee: Red Hat, Inc.
    Inventor: Huamin Chen
  • Patent number: 11347626
    Abstract: A computer-implemented method is disclosed that includes receiving content associated with a heap dump of a computer application, generating a plurality of files based on the heap dump content, and loading the files into the graph database. The files so generated are compatible with the graph database. In some implementations, additional analysis and route finding (e.g., finding the relationship between two nodes) may be performed on the resulting object graph.
    Type: Grant
    Filed: December 30, 2019
    Date of Patent: May 31, 2022
    Assignee: Dassault Systemes Americas Corp.
    Inventor: Ryan Cuprak
  • Patent number: 11340936
    Abstract: Embodiments relate to a compiler. The compiler decreases data fetch and read associated with storing data in a data buffer of a neural processor circuit to or from a system memory. The data buffer can store an input slice of data for processing by a neural engine(s) of the neural processor circuit, an output slice of data output from the neural engine(s), and/or an intermediate data slice of data.
    Type: Grant
    Filed: May 4, 2018
    Date of Patent: May 24, 2022
    Assignee: Apple Inc.
    Inventors: Seungjin Lee, Sung Hee Park, Elaina Chai
  • Patent number: 11314899
    Abstract: A method for detection of tampering in an executable code including one or more code blocks. The method includes monitoring execution of the executable code with a call stack data structure associated therewith, the execution involving accessing one or more address spaces; receiving information about the one or more address spaces, as accessed; comparing the received information about one or more accessed address spaces with information about one or more allowed address spaces defined in the call stack data structure of the executable code; raising a flag upon detection that the one or more accessed address spaces are different from the one or more allowed address spaces, based on the comparison; and executing an action based on the raised flag.
    Type: Grant
    Filed: January 7, 2020
    Date of Patent: April 26, 2022
    Assignee: Supercell Oy
    Inventor: Aki Immonen
  • Patent number: 11243816
    Abstract: A computer-implemented method comprises obtaining an intermediate computer code object including a set of instructions corresponding to a task to be performed. The intermediate computer code object—being machine independent—further includes for each of the at least one set of instructions one or more metadata descriptors representative of at least a complexity measure of the task to be performed. The method also comprises executing the intermediate computer code object on a computing platform comprising at least two different execution units having a different memory with a different memory location. This executing comprises selecting for each of the at least one set of instructions a target execution unit from the plurality of execution units. This selecting takes the one or more metadata descriptors and a decision rule into account, wherein the decision rule relates the plurality of complexity measures to a performance characteristic of the plurality of execution units.
    Type: Grant
    Filed: March 30, 2015
    Date of Patent: February 8, 2022
    Assignees: UNIVERSITEITGENT, IMEC VZW
    Inventor: Bart Goossens
  • Patent number: 11243876
    Abstract: Techniques for accessing off-heap memory are disclosed. The system may receive a memory segment layout definition for a memory segment in a physical memory of a machine. The memory segment layout definition defines a number of elements and a number of sub-elements in each element of the plurality of elements. The system may allocate the particular memory segment in the physical memory and may store a reference to a position of a sub-element. The system may receive a request to access a first sub-element of a particular element of the plurality of elements. Based on the request, the system may identify the memory segment corresponding to the plurality of elements, identify the particular element of the plurality of elements, identify the first sub-element of the plurality of elements based the position of the first sub-element, and execute an Input or Output (IO) operation corresponding to the request.
    Type: Grant
    Filed: September 30, 2020
    Date of Patent: February 8, 2022
    Assignee: Oracle International Corporation
    Inventors: Maurizio Cimadamore, James Malcolm Laskey, Jorn Bender Vernee
  • Patent number: 11200051
    Abstract: A method of executing computer-readable code for interaction with one or more data resources on a data processing platform, the method performed using one or more processors, comprising: receiving a request message including an identifier identifying executable code stored in a data repository; determining, using the identifier, an execution environment of a plurality of stored execution environments mapped to the identified executable code, wherein determining the execution environment mapped to the identified executable code comprises: accessing mapping data identifying a mapping between the identifier and the execution environment of the plurality of stored execution environments, the mapping data including configuration data associated with the identifier, wherein the configuration data identifies one or more convention-based data libraries particular to the execution environment; configuring the determined execution environment to access the one or more convention-based data libraries during execution; e
    Type: Grant
    Filed: November 3, 2020
    Date of Patent: December 14, 2021
    Assignee: Palantir Technologies Inc.
    Inventors: Shahine Zoubeiri, Javier Campanini
  • Patent number: 11163594
    Abstract: A computer-implemented method is provided for compilation rescheduling from among four compilation levels comprising level 1, level 2, level 3, and level 4 on a parallel distributed computing framework running processes for a plurality of jobs of a virtual machine. The method bypasses a program analysis overhead that includes measuring a compiled method execution time by identifying completed compilation levels of a Just In Time compilation. The method finds a repetition of a same process in the processes for the plurality of jobs of the virtual machine from profiles by comparing main class names, virtual machine parameters, and Jar file types therein.
    Type: Grant
    Filed: October 29, 2019
    Date of Patent: November 2, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michihiro Horie, Tatsuhiro Chiba, Kazunori Ogata, Hiroshi Horii
  • Patent number: 11163552
    Abstract: Embodiments relate to a system, program product, and method for evaluating and controlling configuration of a build manifest. An application build manifest is discovered and is subjected to parsing process in which one or more components that comprise the application are identified. The build manifest is monitored for changes to the identified components, and a change notification is generated in response to a change in an identified component. Each generated change notification is assigned a classification. The change notifications are applied selectively to update the manifest, wherein the selective update is based on the classification of the change notification.
    Type: Grant
    Filed: April 15, 2019
    Date of Patent: November 2, 2021
    Assignee: International Business Machines Corporation
    Inventors: Shripad Nadgowda, Priya Ashok Nagpurkar
  • Patent number: 11126664
    Abstract: A method includes replicating a data pattern to be searched for, storing the replicated data pattern into a first row of memory cells, and comparing the replicated data pattern to data stored into a second row of memory cells. In response to detecting the data pattern in the data stored into the second row of memory cells, storing into a third row a value indicative of at least one of an occurrence of the data pattern or a position of the searched for data pattern in the data stored into the row of memory cells.
    Type: Grant
    Filed: April 29, 2019
    Date of Patent: September 21, 2021
    Assignee: Micron Technology, Inc.
    Inventor: Isom Lawrence Crawford, Jr.
  • Patent number: 11093136
    Abstract: Example systems relate to system call acceleration. A system may include a processor and a non-transitory computer readable medium. The non-transitory computer readable medium may include instructions to cause the processor to run a plurality of benchmarks for a hardware configuration. The non-transitory computer readable medium may further include instructions to determine a benchmark matrix based on the plurality of benchmarks. The non-transitory computer readable medium may include instructions to determine an input/output (I/O) bandwidth ceiling for the hardware configuration based on the benchmark matrix. Additionally, the non-transitory computer readable medium may include instructions to determine a performance threshold of an I/O access parameter for the hardware configuration based on the bandwidth ceiling.
    Type: Grant
    Filed: February 1, 2017
    Date of Patent: August 17, 2021
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Tadeu Marchese, Raphael Gay, Taciano Perez
  • Patent number: 11080083
    Abstract: A device may receive, from a virtual machine deployed on the device, a request to register for an event associated with a hardware component of the device, and may create a path to a script associated with providing information about the event when the event occurs. The device may provide the script to an event plugin associated with the event and the hardware component, and may register the event plugin with a kernel associated with the device. The device may receive, the kernel, information indicating occurrence of the event associated with the hardware component, and may cause, via the event plugin, execution of the script based on the occurrence of the event associated with the hardware component. The device may provide, based on execution of the script, a notification to the virtual machine, where the notification may indicate the occurrence of the event associated with the hardware component.
    Type: Grant
    Filed: August 28, 2019
    Date of Patent: August 3, 2021
    Assignee: Juniper Networks, Inc.
    Inventors: Abhinav Tandon, Kaustubh Shantanu, Siva Krishna Gudivada
  • Patent number: 11080213
    Abstract: An apparatus and method for dynamic provisioning and traffic control on a memory fabric.
    Type: Grant
    Filed: December 2, 2019
    Date of Patent: August 3, 2021
    Assignee: INTEL CORPORATION
    Inventors: Balaji Vembu, Altug Koker, Joydeep Ray, Abhishek R. Appu, Pattabhiraman K, Niranjan L. Cooray
  • Patent number: 11068295
    Abstract: Device operation across multiple operating system modalities, including: performing, by a first operating system, one or more device initialization operations for a device; determining that the device is in an initialized state; and performing, by a second operating system, one or more device operations of the device in the initialized state.
    Type: Grant
    Filed: April 12, 2019
    Date of Patent: July 20, 2021
    Assignee: Ghost Locomotion Inc.
    Inventors: John Hayes, Volkmar Uhlig
  • Patent number: 10983773
    Abstract: Technologies for optimized binary translation include a computing device that determines a cost-benefit metric associated with each translated code block of a translation cache. The cost-benefit metric is indicative of translation cost and performance benefit associated with the translated code block. The translation cost may be determined by measuring translation time of the translated code block. The cost-benefit metric may be calculated using a weighted cost-benefit function based on an expected workload of the computing device. In response to determining to free space in the translation cache, the computing device determines whether to discard each translated code block as a function of the cost-benefit metric. In response to determining to free space in the translation cache, the computing device may increment an iteration count and skip each translated code block if the iteration count modulo the corresponding cost-benefit metric is non-zero. Other embodiments are described and claimed.
    Type: Grant
    Filed: April 9, 2019
    Date of Patent: April 20, 2021
    Assignee: Intel Corporation
    Inventors: Paul Caprioli, Jeffrey J. Cook
  • Patent number: 10970065
    Abstract: A method of executing computer-readable code for interaction with one or more data resources on a data processing platform, the method performed using one or more processors, comprising: receiving a request message including an identifier identifying executable code stored in a data repository; determining, using the identifier, an execution environment of a plurality of stored execution environments mapped to the identified executable code, wherein determining the execution environment mapped to the identified executable code comprises: accessing mapping data identifying a mapping between the identifier and the execution environment of the plurality of stored execution environments, the mapping data including configuration data associated with the identifier, wherein the configuration data identifies one or more convention-based data libraries particular to the execution environment; configuring the determined execution environment to access the one or more convention-based data libraries during execution; e
    Type: Grant
    Filed: June 26, 2019
    Date of Patent: April 6, 2021
    Assignee: PALANTIR TECHNOLOGIES INC.
    Inventors: Shahine Zoubeiri, Javier Campanini
  • Patent number: 10963233
    Abstract: Aspects of the subject matter described herein relate to generating and caching software code. In aspects, a target device may receive software to install. The software may include source code that has not been compiled. The target device may install the software and indicate the source code of the package is to be compiled into intermediate or executable code that is persistently stored. If the target device receives a request to execute the software prior to it being compiled, the target device may compile and execute the software without delay. If the target device receives a request to execute the software after it is compiled, the target device may obtain and execute the compiled code. The behavior above may also be applied to scripting code obtained from a server remote to the target device.
    Type: Grant
    Filed: April 10, 2018
    Date of Patent: March 30, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jomo Fisher, Michael Wayne Jackson, Yunus Kilic, Steven Edward Lucco, Jesse D. McGatha, Jedrzej Z. Miadowicz, Steven J. Steiner
  • Patent number: 10949343
    Abstract: A processor may initiate a first verification event. The first verification event may be triggered when a mobile device begins generating new data at a first time. The processor may determine, in response to the first verification event, that the mobile device is above a threshold limit of available storage. The processor may analyze one or more applications on the mobile device. The processor may automatically remove a first re-downloadable portion of a first application binary interface associated with a first application from the mobile device. The processor may store the generated new data on the mobile device.
    Type: Grant
    Filed: February 12, 2018
    Date of Patent: March 16, 2021
    Assignee: International Business Machines Corporation
    Inventors: Su Liu, Inseok Hwang, Eric Rozner, Kanak B. Agarwal
  • Patent number: 10936352
    Abstract: A system is described for high-performance delivery of applications via attachable application storage volumes (ASV), particularly in cloud-based VDI environments, by precaching application data that is determined by learning the application behavior. Data blocks for files that are likely to be used by the application are prefetched and cached by virtual machines before the application requests those blocks so that the relevant data is instantly available in memory when required without needing to wait for the data to be transmitted from the ASV. In order to efficiently prefetch content, the read pattern for application files and their corresponding blocks is inspected. This information is used during application delivery after a user logs onto the virtual machine to selectively prefetch those blocks from the ASVs. As a result, when the user launches those applications, the system avoids the performance penalty of reading those blocks from the ASV.
    Type: Grant
    Filed: June 22, 2019
    Date of Patent: March 2, 2021
    Assignee: VMware, Inc.
    Inventors: Sisimon Soman, Arun Passi, Parag Chakraborty
  • Patent number: 10922062
    Abstract: Embodiments of the present disclosure relate to software application optimization. Other embodiments may be described and/or claimed.
    Type: Grant
    Filed: April 15, 2019
    Date of Patent: February 16, 2021
    Assignee: SALESFORCE.COM, INC.
    Inventors: Laksh Venka, Brian Toal
  • Patent number: 10901998
    Abstract: Disclosed aspects relate to managing a stream computing environment. The stream computing environment may have a consistent region that includes a set of stream operators for processing a stream of tuples. An operator modification request with respect to the set of stream operators of the consistent region of the stream computing environment may be received. In response to receiving the operator modification request, a set of tuples of the stream of tuples may be detected in the consistent region. Using the operator modification request, a tuple adjustment action for the set of tuples of the stream of tuples in the consistent region may be determined. Based on the operator modification request, the set of stream operators may be modified. The set of tuples may be processed using the tuple adjustment action.
    Type: Grant
    Filed: May 31, 2016
    Date of Patent: January 26, 2021
    Assignee: International Business Machines Corporation
    Inventors: Jessica R. Eidem, Brian R. Muras, Jingdong Sun
  • Patent number: 10891210
    Abstract: An approach is provided in which an information handling system selects an assumption point in a software program corresponding to a compile-time assumption made by a compiler, and selects an assumption violation point in the software program corresponding to a location at which the compile-time assumption can be violated at runtime. The information handling system propagates backwards in the software program from the assumption point and reaches the assumption violation point. The information handling system determines that the assumption point corresponds to a first method and the assumption violation point corresponds to a second method that is different from the first method, and inserts a conditional transition in the software program at the assumption violation point. The information handling system executes a compiled version of the software program that includes the conditional transition.
    Type: Grant
    Filed: July 16, 2019
    Date of Patent: January 12, 2021
    Assignee: International Business Machines Corporation
    Inventors: Andrew Craik, Joseph Devin Micheal Papineau, Vijay Sundaresan
  • Patent number: 10884719
    Abstract: A method that includes obtaining, by an application executing on a computing system, a list of properties defining at least one property. The executing application writes an uncompiled class definition implementing a compiled interface and writes one or more properties of the compiled interface into the uncompiled class definition. The executing application writes the at least one property and at least one serialization attribute into the uncompiled class definition. The executing application causes the uncompiled class definition to be compiled, loads the compiled class definition, and creates an object by instantiating the compiled class definition. The object is serializable. The executing application may reflect on the compiled interface to obtain the one or more properties. Each of the one or more properties is strongly typed.
    Type: Grant
    Filed: October 27, 2017
    Date of Patent: January 5, 2021
    Assignee: Synchrony Bank
    Inventor: David Fisher
  • Patent number: 10868665
    Abstract: A virtualization service that hosts multiple guests may provide utilities for use in protecting sensitive or secret information from timing side-channel attacks by obscuring accesses to data structures that have been designated as potential targets of such attacks. The service may provide a compiler or analysis tool that identifies data structures within an application that contain, or that are indexed using, sensitive or secret information. The compiler may modify the application code (or an executable representation thereof) to obscure accesses to particular elements in the data structures. For example, the layout or indexing of a sensitive data structure may be scrambled during execution, or elements of multiple data structures may be interleaved within a single, merged data structure. The scrambling may be performed using an unpredictable address translation function (e.g., one that is parameterized during initialization using a random number obtained at runtime), which may be subsequently modified (e.g.
    Type: Grant
    Filed: May 18, 2015
    Date of Patent: December 15, 2020
    Assignee: Amazon Technologies, Inc.
    Inventor: Martin Thomas Pohlack
  • Patent number: 10860303
    Abstract: An application typically runs on top of an operating system. Some computing device have the ability to reboot and load a different operating system whenever an application or set of applications is run. If an old application requires an old operating system version, it is possible to load that OS instead. Every application can have its own version of the operating system. Only new applications or a small set of applications need to use the new OS—all the old applications may run their own older version of the OS. Patches or software updates can be applied only for particular applications. Other applications that need the same base OS but don't need the patch can skip using the patch. It is possible to determine what version the application is and selectively apply the patch based on the version of the application.
    Type: Grant
    Filed: April 25, 2013
    Date of Patent: December 8, 2020
    Assignee: NINTENDO CO., LTD.
    Inventors: Jeffrey Sirois, Eugene Borisov, Eugene Kwon
  • Patent number: 10824453
    Abstract: Systems and methods improve performance and resource-efficiency of Just-in-Time (JIT) compilation in a hypervisor-based virtualized computing environment. A user attempts to launch an application that has been previously compiled by a JIT compiler into an intermediate, platform-independent format. A JIT accelerator selects a unique function signature that identifies the application and the user's target platform. If the signature cannot be found in a repository, indicating that the application has never been run on the target platform, the accelerator generates and stores the requested executable program in shared memory and saves the signature in the repository. The system then returns to the user a pointer to the stored platform-specific executable. If multiple users of the same platform request the same application, the system recognizes an affinity among those requests identified by their shared signature, and provides each user a pointer to the same previously stored, shared executable.
    Type: Grant
    Filed: July 31, 2018
    Date of Patent: November 3, 2020
    Assignee: International Business Machines Corporation
    Inventors: Rafael Camarda Silva Folco, Plinio A. S. Freire, Breno Henrique Leitao
  • Patent number: 10795704
    Abstract: A system includes a memory, a processor in communication with the memory, and a serializer. The serializer is configured to receive an object that includes at least one field, initiate serialization of the object according to a rule set, and write a first intermediate representation of a new object based on the object. The serializer is also configured to write a second intermediate representation to set the at least one field in the new object. Additionally, the serializer is configured to output a serialization of the new object based on the first intermediate representation and the second intermediate representation.
    Type: Grant
    Filed: March 1, 2019
    Date of Patent: October 6, 2020
    Assignee: Red Hat, Inc.
    Inventor: Stuart Wade Douglas
  • Patent number: 10782948
    Abstract: A system includes a memory and a processor in communication with the memory. The processor is configured to, prior to runtime, process application metadata for an application. The application metadata is classified into a first class used only for deployment, a second class used only for runtime, and a third class used for both runtime and deployment. Responsive to processing the application metadata, the processor is configured to build a deployment model from the processed application metadata. Prior to runtime, the processor is configured to generate an intermediate representation of the application from the deployment model. The intermediate representation of the application includes direct calls for classes associated with the second class of metadata and the third class of metadata.
    Type: Grant
    Filed: November 19, 2018
    Date of Patent: September 22, 2020
    Assignee: Red Hat, Inc.
    Inventors: Stuart Douglas, Jason Greene
  • Patent number: 10747599
    Abstract: Secure backwards compatible orchestration of isolated guests is disclosed. For example, a current version of an isolated guest orchestrator instantiates an older version of the isolated guest orchestrator in a host as a dependent compute service. An application programming interface request is received. The application programming interface request is determined to be unsupported by the current version of the isolated guest orchestrator. The application programming interface request is sent to the dependent compute service. The application programming interface request is responded to based on a response from the dependent compute service.
    Type: Grant
    Filed: May 21, 2018
    Date of Patent: August 18, 2020
    Assignee: Red Hat, Inc.
    Inventor: Huamin Chen
  • Patent number: 10706746
    Abstract: The present invention relates to methods and systems for binary scrambling, and applications for cybersecurity technology aimed at preventing cyber-attacks.
    Type: Grant
    Filed: June 1, 2018
    Date of Patent: July 7, 2020
    Assignee: Polyverse Corporation
    Inventors: Alexander Gounares, Christopher Fraser
  • Patent number: 10698559
    Abstract: Provided are a method and an apparatus for displaying content on a same screen and a terminal device. The method includes: displaying an application interface of an application on a display apparatus, and displaying a floating region on the same screen as the application interface; setting a content loader corresponding to the floating region; determining display content of the floating region; and invoking the content loader to load the determined display content to the floating region for display.
    Type: Grant
    Filed: September 5, 2017
    Date of Patent: June 30, 2020
    Assignee: Tencent Technology (Shenzhen) Company Limited
    Inventors: Kunjie Zhang, Chaoqun Jin, Wenshuo Zhou, Xiaonan Feng, Guangwen Zhong, Can Li, Liping Zhou, Cheng Guo, Wei Xu, Xiao Song
  • Patent number: 10642583
    Abstract: Disclosed aspects relate to managing a set of development data for a stream computing environment. A set of development data related to a computing object may be detected. The set of development data may be derived from application development for utilization in the stream computing environment. The set of development data may be established in association with the computing object. A computing artifact which has the computing object in association with the set of development data may be compiled.
    Type: Grant
    Filed: October 28, 2016
    Date of Patent: May 5, 2020
    Assignee: International Business Machines Corporation
    Inventors: Alexander Cook, Manuel Orozco, Christopher R. Sabotta, John M. Santosuosso
  • Patent number: 10579498
    Abstract: A JIT compiler is debugged by comparing the native code it generates with the native code generated from a reliable JIT compiler. The different compilations are performed using the same input data. The input data is recorded by intercepting the communication exchanges between a runtime environment and the reliable JIT compiler during the compilation of a program. The input data of each communication is stored using a key based on at least one parameter in an API call from a JIT compiler to the runtime environment. A debugging tool is then used to initiate the compilation of a method using a JIT compiler under test using the previously recorded input data.
    Type: Grant
    Filed: July 31, 2016
    Date of Patent: March 3, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventor: Brandon Scott Wadsworth
  • Patent number: 10579440
    Abstract: A virtual resource control and distribution system is provided that utilizes virtual resource pools coupled to authentic resource pools in order to reduce processing capacity requirements, memory requirements, and processing time. In particular, the present invention utilizes a reduced number of authentic resource pools, such as one single authentic resource pool, that is coupled to one or more virtual resource pools. The virtual resource pools may be utilized to enter into interactions. However, when interactions are entered, the virtual resource pools may be adjusted based on the resources associated with the interaction without actually having any resources associated with the virtual resource pools. As such, the virtual resource pools may illustrate a change in virtual resources in the virtual resource pool, but the authentic resource pool to which the virtual resource pool is associated, will be utilized for distributing the resources and processing the interactions.
    Type: Grant
    Filed: November 7, 2017
    Date of Patent: March 3, 2020
    Assignee: BANK OF AMERICA CORPORATION
    Inventors: Alfred James Reed, Huihui Wu
  • Patent number: 10572294
    Abstract: Techniques for automated application footprint discovery for application migration to containers are described. A snapshot of an application instance can be stored, the snapshot including the application instance and resources used by the application instance at runtime. The application instance can be run in an intermediate virtual machine, the intermediate virtual machine including at least one interceptor. At least one dependency of the application instance can be determined using the at least one interceptor while the application instance executes on the intermediate virtual machine. A template including the at least one dependency can be created and an application environment can be generated using the template.
    Type: Grant
    Filed: January 3, 2018
    Date of Patent: February 25, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Vivek Chawda, Maxwell Edward Chapman Nuyens, Vivek Menon, Keshav Sethi Attrey
  • Patent number: 10574705
    Abstract: In particular embodiments, a data processing data inventory generation system is configured to: (1) generate a data model (e.g., a data inventory) for one or more data assets utilized by a particular organization; (2) generate a respective data inventory for each of the one or more data assets; and (3) map one or more relationships between one or more aspects of the data inventory, the one or more data assets, etc. within the data model. In particular embodiments, a data asset (e.g., data system, software application, etc.) may include, for example, any entity that collects, processes, contains, and/or transfers personal data (e.g., such as a software application, “internet of things” computerized device, database, website, data-center, server, etc.). The system may be configured to identify particular data assets and/or personal data in data repositories using any suitable intelligent identity scanning technique.
    Type: Grant
    Filed: May 6, 2019
    Date of Patent: February 25, 2020
    Assignee: OneTrust, LLC
    Inventors: Kabir A. Barday, Mihir S. Karanjkar, Steven W. Finch, Ken A. Browne, Nathan W. Heard, Aakash H. Patel, Jason L. Sabourin, Richard L. Daniel, Dylan D. Patton-Kuhl, Jonathan Blake Brannon
  • Patent number: 10552135
    Abstract: Some examples include techniques for efficiently handling an application package. For instance, a native code library used by an application may be identified. A wrapper library that enables the application to access the native code library may be created. The wrapper library may be stored in a first area of the application package. The native code library may be stored in a second area of the application package. If the application package includes more than one native code library, the application package may include a loading order specifying an order in which the native code libraries are to be loaded into a memory of a computing device.
    Type: Grant
    Filed: September 16, 2016
    Date of Patent: February 4, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Eugene Gershnik, Matthew B. Barr, Jacob D. Cohen, John M. Pyle
  • Patent number: 10481996
    Abstract: Computer program, methods, and systems for code modification of a programming language platform and a software application in an intermediate language at different times are disclosed. The methods and system may modify a portion of the programming language platform in the intermediate language at a first time to alter a functionality of or add a new functionality to the programming language platform; and may modify the software application in the intermediate language at a second time different from the first time, where the software application may be modified based on a runtime analysis rule that uses the altered or added new functionality of the programming language platform. The modified programming language platform may be included in a first package, and the modified software application may be included in a second package, and executed on the modified programming language platform.
    Type: Grant
    Filed: February 8, 2019
    Date of Patent: November 19, 2019
    Assignee: SALESFORCE.COM, INC.
    Inventor: Sergey Gorbaty
  • Patent number: 10445505
    Abstract: In an example, a vulnerability assessment engine is disclosed. The vulnerability assessment engine may include a shim application and a shim agent. The shim application sits at a relatively low level in an operational stack, such as just above the operating system itself. It may intercept system calls through operating system hooks or other means, so as to determine whether an action taken by an executable object should be allowed. The vulnerability assessment engine sends an identifier, such as a common platform enumeration (CPE)-like string to a server, which queries a database to determine a response code for the action. The response code may indicate that the action should be allowed, blocked, allowed with a warning, or other useful action. A shim agent may also be installed to receive notifications from the server or to query the server for available updates or patches for the executable object.
    Type: Grant
    Filed: September 22, 2014
    Date of Patent: October 15, 2019
    Assignee: McAfee, LLC
    Inventor: Joshua Cajetan Rebelo
  • Patent number: 10409590
    Abstract: A method of executing computer-readable code for interaction with one or more data resources on a data processing platform is disclosed, wherein the method is performed using one or more processors. The method may comprise receiving a request message including an identifier identifying executable code stored in a data repository. Another operation may comprise determining, using the identifier, an execution environment mapped to the executable code. Another operation may comprise executing the identified executable code using the determined execution environment. A further operation may comprise passing requests made with the executable code to one or more data resources via a proxy. Also disclosed is a method of creating customized computer-readable code for interaction with one or more data resources on a data processing platform, wherein the method is performed using one or more processors.
    Type: Grant
    Filed: January 30, 2018
    Date of Patent: September 10, 2019
    Assignee: PALANTIR TECHNOLOGIES INC.
    Inventors: Shahine Zoubeiri, Javier Campanini
  • Patent number: 10367822
    Abstract: Access to a module element within a first module by a second module is prohibited if the module element within the first module has not been exposed to the second module. If a particular module element within a first module has been exposed to a second module, then access to the particular module element by the second module may or may not be allowed depending on: (a) whether the particular module element has been declared with a public or non-public access modifier, (b) whether a second exposed module element, which includes the particular module element, has been declared with a public or non-public access modifier, (c) a level of access associated with the operation that attempts to access the particular module element of the first module, and/or (d) whether an accessibility override configuration is set for accessing the particular module element.
    Type: Grant
    Filed: August 23, 2018
    Date of Patent: July 30, 2019
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mark B. Reinhold, Alan Bateman, Paul Sandoz, Chris Hegarty
  • Patent number: 10348857
    Abstract: Methods and devices for enabling communication of a client application of a computing device with other devices are provided. The method includes obtaining, from a first client application on the computing device, one or more preferences for creating a first subservice for communicating with the other devices. A template service file associated with the first client application is identified and the template service file includes property definitions for creating subservices that communicate with the other devices. The template service file is used to create a first configuration file corresponding to the first client application, the a first configuration file including a plurality of the property definitions of the template service file. At least one of the plurality of the property definitions is modified using the one or more preferences. The first configuration file is stored in a memory of the computing device.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: July 9, 2019
    Assignee: Apple Inc.
    Inventors: Pierre J. De Filippis, Daniel B. Pollack
  • Patent number: 10333798
    Abstract: Data can be categorized into facts, information, hypothesis, and directives. Activities that generate certain categories of data based on other categories of data through the application of knowledge which can be categorized into classifications, assessments, resolutions, and enactments. Activities can be driven by a Classification-Assessment-Resolution-Enactment (CARE) control engine. The CARE control and these categorizations can be used to enhance a multitude of systems, for example diagnostic system, such as through historical record keeping, machine learning, and automation. Such a diagnostic system can include a system that forecasts computing system failures based on the application of knowledge to system vital signs such as thread or stack segment intensity and memory heap usage. These vital signs are facts that can be classified to produce information such as memory leaks, convoy effects, or other problems.
    Type: Grant
    Filed: May 6, 2015
    Date of Patent: June 25, 2019
    Assignee: Oracle International Corporation
    Inventors: Eric S. Chan, Rafiul Ahad, Adel Ghoneimy, Adriano Covello Santos
  • Patent number: 10311229
    Abstract: In a virtualization environment, a guest process may protect itself from potential timing side-channel attacks by other guest processes on the same host machine by taking steps to obscure accesses to alternative critical code paths (e.g., alternative paths within cryptographic functions whose selection at runtime is dependent on secret data) that have been designated as potential targets of such attacks. This may include interleaving instructions from multiple alternative code paths so that they land in the same cache lines (e.g., so that all code paths pass through the same set of cache lines). The different code paths may be allocated the same or different numbers of bytes per cache line, and unused allocated locations may be filled with NOPs. Chunks of code for a given code path that fall on different cache lines may be linked using local jumps. Some code chunks may span the boundaries between two cache lines.
    Type: Grant
    Filed: May 18, 2015
    Date of Patent: June 4, 2019
    Assignee: Amazon Technologies, Inc.
    Inventor: Martin Thomas Pohlack
  • Patent number: 10303498
    Abstract: One embodiment illustrated herein includes a method that may be practiced in a computing environment with a guest architecture running a native architecture system. The method includes acts for handling function calls. The method includes receiving a call to a target binary, wherein the call is in a format for the guest architecture. The method further includes determining that the call is to a binary that is a hybrid binary. The hybrid binary includes a native function compiled into a native architecture binary code using guest architecture source code and a specialized thunk to handle an incompatibility between the guest architecture and the native architecture. The method further includes invoking the specialized thunk to allow the native function in the hybrid binary to be executed natively on the native architecture system.
    Type: Grant
    Filed: October 1, 2015
    Date of Patent: May 28, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ten H. Tzen, Arun U. Kishan
  • Patent number: 10282282
    Abstract: A testing method and system for automatic Hypertext Transfer Protocol (HTTP) testing, the system including a memory configured to store sequences of user requests, a program store storing code for emulating a sequence of user requests, and at least one processor coupled to the program store and to the memory for executing the stored code, the code including instructions for generating an emulated request based on a request from a user sequence of requests, transmitting the emulated request to an application, receiving a response to the emulated request from the application, calculating an adapted emulated sequence based on validity of the received response, and instructing transmission of the adapted emulated sequence.
    Type: Grant
    Filed: June 29, 2017
    Date of Patent: May 7, 2019
    Assignee: SYNOPSYS, INC.
    Inventors: Tamir Shavro, Eran Tamir, Lilian Blochet
  • Patent number: 10216601
    Abstract: A dynamic service module is embedded in an agent and able to add functionality to the agent. The service module may manage .jar files for execution by the agent. The service module may receive the .jar files, provide them to an agent for execution, and may perform other functions. The agent may perform obfuscation in order to translate the .jar files into a modified version which may be more compatible with a particular agent. Once execution of the .jar file is complete, the agent may remove the .jar file as well as all trace of the .jar file. For example, the agent may remove byte code instrumentation that was installed as a result of the .jar file.
    Type: Grant
    Filed: January 1, 2017
    Date of Patent: February 26, 2019
    Assignee: Cisco Technology, Inc.
    Inventors: Brad Winslow, Anthony Kilman