Bytecode (e.g., Java) Patents (Class 717/118)
  • Patent number: 11892993
    Abstract: The present disclosure relates to a system and techniques for resolving dangling references resulting from a dependency relationship between computing resource objects uncovered during a harvesting process. In embodiments, a harvester application adds computing resource objects associated with a client to a resource collection as those computing resource objects are identified. Dependencies are identified as each computing resource object is added to the resource collection, which are resolved only if the computing resource objects associated with those dependencies have already been added to the resource collection. If the computing resource objects associated with the dependencies have not already been added to the resource collection, then the dependency is added to an observer pool. Observer modules are configured to check each computing resource object as it is processed during the harvest process in order to match those computing resource objects to unresolved dependencies.
    Type: Grant
    Filed: September 29, 2020
    Date of Patent: February 6, 2024
    Assignee: Oracle International Corporation
    Inventors: Ganesh Seetharaman, Robert Costin Velisar, Yuen Sheung Chan
  • Patent number: 11893385
    Abstract: Systems and methods for automatically generating natural language documentation for source code files are provided. An exemplary method includes parsing a source code file to extract a function and generate an abstract syntax tree, generating first natural language documentation for each of a plurality of program statements within the function using a programming language neural network model, generating second natural language documentation for the function as a whole by processing a code snippet of the function using a function documentation neural network model, consolidating the first natural language documentation and the second natural language documentation at a function level, a source file level, and a project level to create consolidated natural language documentation, and summarizing multiple sentences of the consolidated natural language documentation into an abstract summary of the source code file by applying a set of rules.
    Type: Grant
    Filed: January 31, 2022
    Date of Patent: February 6, 2024
    Assignee: Open Weaver Inc.
    Inventors: Ashok Balasubramanian, Karthikeyan Krishnaswamy Raja
  • Patent number: 11880674
    Abstract: Improved systems and methods for hot reloading software applications are provided. In one embodiment, a method is provide that includes detecting an update for a software application. It may be determined whether the update represents a change to a class structure of the software application. If the update does not represent a class change, framework metadata for a class corresponding to the update may be replaced. If the update represents a class change, a runtime executable unit of the software application may be removed and replaced. After replacing the framework metadata and/or the runtime executable unit, the software application may be executed according to the update.
    Type: Grant
    Filed: July 18, 2022
    Date of Patent: January 23, 2024
    Assignee: RED HAT, INC.
    Inventors: Stuart Douglas, Stephane Epardaud
  • Patent number: 11620033
    Abstract: Systems and methods for proactively identifying user interface objects (e.g., internet links) directed to information of interest to the user and displaying the identified user interface objects in a user interface on an electronic device are disclosed herein. In one aspect, the method includes receive, via a user input device, a user input within a user interface of an internet browser application and displayed on the display of the electronic device; and in response to the user input, display, within the user interface, a first set of one or more user interface objects, each providing a suggested internet link obtained from one or more data sources, different than the internet browser application, on the electronic device.
    Type: Grant
    Filed: September 26, 2019
    Date of Patent: April 4, 2023
    Assignee: APPLE INC.
    Inventors: Alan S. Hshieh, Conrad A. Shultz, Karl Christian Kohlschuetter, Mateusz K. Rajca, Oluwatomiwa Alabi, Raymond S. Sepulveda, Shawn D. Moon, Zachary G. King, Garrett M. Davidson
  • Patent number: 11443046
    Abstract: A computer-based method of analyzing a business-critical application computer system includes extracting a plurality of software objects from the business-critical application computer system, storing the extracted software objects in a computer-based search platform, finding relationships between the extracted software objects that are stored in the computer-based search platform, and creating a database that represents the extracted software objects and the relationships between the extracted software objects. Each software object (a unique piece of code, a file, a data string, or other aspect of the business-critical application computer system) may represent an element of the business-critical application computer system whose graphical representation as a node connected to another node based on relationships, functional or otherwise, between the corresponding elements is desirable in view of a particular goal of the analysis.
    Type: Grant
    Filed: August 14, 2017
    Date of Patent: September 13, 2022
    Assignee: Onapsis, Inc.
    Inventors: Sergio Javier Abraham, Pablo Agustin Artuso, Alejandro Gabriel Burzyn
  • Patent number: 11392364
    Abstract: Improved systems and methods for hot reloading software applications are provided. In one embodiment, a method is provide that includes detecting an update for a software application. It may be determined whether the update represents a change to a class structure of the software application. If the update does not represent a class change, framework metadata for a class corresponding to the update may be replaced. If the update represents a class change, a runtime executable unit of the software application may be removed and replaced. After replacing the framework metadata and/or the runtime executable unit, the software application may be executed according to the update.
    Type: Grant
    Filed: September 28, 2020
    Date of Patent: July 19, 2022
    Assignee: Red Hat, Inc.
    Inventors: Stuart Douglas, Stephane Epardaud
  • Patent number: 11354165
    Abstract: A system for automated cluster execution support includes and interface, a linking storage system, and a processor. The interface is configured to receive a first code segment in a first coding language; receive a second code segment in a second coding language; and receive a connector indication, wherein the connector indication indicates that intermediate state data that is output from the first code segment is used as input to the second code segment. The processor is configured to cause execution of the first code segment, wherein executing the first code segment includes executing an output method using the first coding language to store the intermediate state data in the linking storage system; and cause execution of the second code segment, wherein executing the second code segment includes executing an input method using the second coding language to read the intermediate state from the linking storage system.
    Type: Grant
    Filed: July 13, 2017
    Date of Patent: June 7, 2022
    Assignee: Workday, Inc.
    Inventors: Zhenqi Li, Liang Huang, Lei Gao, Luis Medina
  • Patent number: 11347498
    Abstract: Systems and methods for modifying bytecode at runtime are provided. A virtual machine can execute bytecode of an application. The virtual machine can receive a modification for the application that includes modified bytecode for the application. The virtual machine can identify a portion of the bytecode of the application that corresponds to the modified bytecode. The virtual machine can update the portion of the bytecode of the application at runtime using the modification.
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: May 31, 2022
    Assignee: Red Hat, Inc.
    Inventors: Filip Elias, Filip Nguyen
  • Patent number: 11321218
    Abstract: In one embodiment, an application programming interface (API) and machine code associated with a software library are accessed. Data sources and data sinks in the software library are identified based on the API, and a data flow among the data sources and data sinks is determined based on a dynamic analysis of the machine code associated with the software library. A flow graph associated with the software library is then generated to represent the data flow among the data sources and data sinks, and a source code model associated with the software library is generated based on the flow graph.
    Type: Grant
    Filed: March 8, 2021
    Date of Patent: May 3, 2022
    Assignee: Correct Computation, Inc.
    Inventors: Michael W. Hicks, B. S. Lavender, Anwar Mamat, Ian Nicholas Sweet
  • Patent number: 11301358
    Abstract: Aspects of the invention include receiving a notification that a first logical grouping of code segments of a software application is being changed. Comparing the first logical grouping to a second logical grouping of code segments from a change history of the software application, where the first logical grouping and the second logical grouping both relate to resolving a common software application issue, and where the first logical grouping and the second logical grouping include at least one common code segment. Identifying a first code segment of the first logical grouping that is different from a second code segment of the second logical grouping. Determining that given the at least one code segment is changed a probability that the second code segment has been changed is greater than an threshold value. Sending a notification based on the difference in the probabilities being greater than a threshold value.
    Type: Grant
    Filed: December 15, 2020
    Date of Patent: April 12, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew C. M. Hicks, Michael E Gildein, Michael Terrence Cohoon
  • Patent number: 11294791
    Abstract: A first instance of a managed runtime environment is provided. An optimized version of a code unit and a corresponding set of one or more speculative assumptions are received at the first instance of the managed runtime environment, wherein the optimized version of the code unit produces the same logical results as the code unit unless at least one of the set of one or more speculative assumptions is not true, and wherein the optimized version of the code unit and the corresponding set of one or more speculative assumptions are generated by an entity that is different from the first instance of the managed runtime environment. The optimized version of the code unit is executed at the first instance of the managed runtime environment. Whether the set of one or more speculative assumptions hold true is monitored at the first instance of the managed runtime environment.
    Type: Grant
    Filed: October 17, 2020
    Date of Patent: April 5, 2022
    Assignee: Azul Systems, Inc.
    Inventors: Gil Tene, Philip Reames
  • Patent number: 11188322
    Abstract: A computer implemented method of estimating a similarity of binary records comprising executable code, comprising converting a first binary record and a second binary record to a first intermediate representation (IR) and a second IR respectively, decomposing each of the first IR and the second IR to a plurality of strands which are partial dependent chains of program instructions, calculating a probability score for each of the plurality of strands of the first IR to have an equivalent counterpart in the second IR by comparing each strand of the first IR to one or more strands of the second IR, adjusting the probability score for each strand according to a significance value calculated for each strand and calculating a similarity score defining a functional similarity between the first IR and the second IR by aggregating the adjusted probability score of the plurality of strands.
    Type: Grant
    Filed: December 23, 2019
    Date of Patent: November 30, 2021
    Assignee: Technion Research & Development Foundation Limited
    Inventors: Eran Yahav, Nimrod Sebban Partush, Moshe Yaniv David
  • Patent number: 11050820
    Abstract: In some example implementations, there is provided a method. The method may include receiving, at a broker interfacing a system, a request to identify whether an executable component is available at one or more cloud service providers; querying a repository at the broker to determine whether the executable component is available at the one or more cloud service providers, the querying of the repository performed based on a hash code identifying the executable component; obtaining, based on a result of the querying, the executable component to the system, when the repository querying indicates that the executable component is available at the one or more cloud service providers; and providing to the system at least one of the obtained executable component or an indication that the executable component is not available at the one or more cloud service providers. Related systems, methods, and articles of manufacture are also provided.
    Type: Grant
    Filed: April 29, 2013
    Date of Patent: June 29, 2021
    Assignee: SAP SE
    Inventors: Jens Odenheimer, Peter Eberlein
  • Patent number: 11025716
    Abstract: A method for generating a hierarchical edit script comprises generating, using a first linear sequence of nodes of a first hierarchical dataset and a second linear sequence of nodes of a second hierarchical dataset, a linear edit script defining a linear sequence of operations that can be applied to the first linear sequence to generate the second linear sequence, generating a first delta by matching one or more operations of the linear sequence of operations to the first hierarchical dataset, generating a second delta by matching one or more operations of the linear sequence of operations to the second hierarchical dataset, and generating the hierarchical edit script by merging the first delta and the second delta.
    Type: Grant
    Filed: October 13, 2017
    Date of Patent: June 1, 2021
    Assignee: ATLASSIAN PTY LTD.
    Inventors: Haymo Meran, Tobias Steiner
  • Patent number: 11025628
    Abstract: Techniques for providing secure modification of manufacturer usage description (MUD) files based on device applications are provided. In one embodiment, a method for secure modification of MUD files may include obtaining a request for one or more applications from a device. The method also includes providing to the device the one or more applications and a certification that includes an updated MUD identifier determined based on the one or more applications requested. The updated MUD identifier is associated with a concatenated MUD file that comprises individual MUD file portions for each of the one or more applications requested. The device is configured to request an updated device identifier using the certification. The updated device identifier includes the updated MUD identifier that is associated with the concatenated MUD file.
    Type: Grant
    Filed: April 17, 2018
    Date of Patent: June 1, 2021
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Eliot Lear, Christopher S. Steck, Brian Weis
  • Patent number: 11023220
    Abstract: A system for sequencing firmware updates comprising a sequenced payload creation system operating on a processor and configured to receive two or more firmware payload sets and to generate a payload sequence for the two or more firmware payload sets. A BIOS payload system operating on the processor and configured to receive the two or more firmware payload sets and the payload sequence and to generate a basic input/output system (BIOS) payload. A BIOS locking system operating on the processor and configured to receive the BIOS payload and to generate a secure BIOS executable.
    Type: Grant
    Filed: September 26, 2019
    Date of Patent: June 1, 2021
    Assignee: DELL PRODUCTS L.P.
    Inventors: Balasingh P. Samuel, Zhaohui Yu, Bibby Yeh
  • Patent number: 10997504
    Abstract: A system includes acquisition of data from a first data source, identification of logical entities of a first data model of the first data source based on the data of the first data source, identification, for one or more of the logical entities of the first data model, of a respective knowledge vault entity described by first metadata, and generation of second metadata describing a plurality of semantic layer entities, the second metadata describing a semantic layer entity comprising at least one semantic attribute of a knowledge vault entity corresponding to the semantic layer entity.
    Type: Grant
    Filed: November 3, 2016
    Date of Patent: May 4, 2021
    Assignee: BUSINESS OBJECTS SOFTWARE LIMITED
    Inventors: Bruno Dumant, Xiaohui Xue, Pierre Saurel
  • Patent number: 10977054
    Abstract: The present disclosure relates to methods and systems for providing and executing semi-autonomous web applications within browsers. Examples of the disclosure include creating a runtime interpreter that can be executed by a browser, to allow complex, semi-autonomous and stable web applications to be constructed and deployed on user devices. The runtime interpreter is received from a first server at a browser executing on a device that receives an instruction set from a second server. The received runtime interpreter is executed within the browser and executes the received instructions set.
    Type: Grant
    Filed: October 31, 2016
    Date of Patent: April 13, 2021
    Assignee: ACADIANT LIMITED
    Inventor: William Henry Chute
  • Patent number: 10887340
    Abstract: Methods, systems, and media for inhibiting attacks on embedded devices are provided. In some embodiments, a system for inhibiting on embedded devices is provided, the system comprises a processor that is configured to: identify an embedded device that is configured to provide one or more services to one or more digital processing devices within a communications network; receive a first firmware associated with the embedded device; generate a second firmware that is functionally equivalent to the first firmware by: determining unused code within the first firmware; removing the unused code within the second firmware; and restructuring remaining code portions of the first firmware into memory positions within the second firmware; and inject the second firmware into the embedded device.
    Type: Grant
    Filed: July 1, 2019
    Date of Patent: January 5, 2021
    Assignee: The Trustees of Columbia University in the City of New York
    Inventors: Ang Cui, Salvatore J. Stolfo
  • Patent number: 10802854
    Abstract: Implementations of the present specification are provided for interpreting a bytecode instruction stream. An interpreter of a virtual machine receives an instruction stream comprising a plurality of machine instructions. A first value, comprising a current analog function address and stored in a first register corresponding to a current instruction of the plurality of machine instructions, is read. The validity of the first value is determined. If the first value is valid, the first value is stored in a second register configured to store current analog function addresses corresponding to current instructions in the instruction stream. A subsequent analog function address corresponding to a subsequent instruction associated with the current instruction is retrieved by using the current analog function address. The subsequent analog function address is stored in the first register. The current instruction is executed based on the current analog function address read from the second register.
    Type: Grant
    Filed: February 10, 2020
    Date of Patent: October 13, 2020
    Assignee: Alibaba Group Holding Limited
    Inventor: Xiaojian Liu
  • Patent number: 10678567
    Abstract: Disclosed are various examples for remote virtual private network (VPN) configuration using dynamically generated configuration profiles. A computing environment having a management service can determine variable names for inclusion in configuration profiles that are capable of configuring VPN settings on various managed device operating systems. The computing environment can dynamically generate configuration profiles using the appropriate variable names such that a client device having a particular operating system installed thereon is capable of interpreting the value and the variable name to configure the VPN setting.
    Type: Grant
    Filed: July 27, 2017
    Date of Patent: June 9, 2020
    Assignee: AIRWATCH LLC
    Inventors: Adam Stephen Rykowski, Huda Osman, Mithila Tople, Jacob Postema, Jeremy Dejiacomo, Harit Patel, Manikandan Sigamani
  • Patent number: 10680970
    Abstract: A stack-based resource management system includes a computer-executed tool for managing the resources used to execute a distributed application. The tool uses a distributed computing environment protocol stack having multiple layers that each represents one or more resources used to execute a distributed application. The resources in each layer have one or more inter-layer dependencies to one or more resources of an adjacent layer. When the tool receives configuration instructions to configure one or more resources, it configures that resource, and identifies one or more inter-layer dependencies to resources in adjacent layers to configure those resources in the adjacent layers. The tool then sequentially traverse up and down the adjacent layers of the protocol stack to resolve any of the dependencies among the resources of each adjacent layer of the protocol stack.
    Type: Grant
    Filed: April 27, 2017
    Date of Patent: June 9, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Jonathan Streete, Seamus Kerrigan
  • Patent number: 10642516
    Abstract: Systems and methods are disclosed to execute a startup program on a computer, the startup program being stored on an external storage device connected with the computer; download a file management program from a remote server to the computer; install the file management program on the computer; send a message to a cloud storage management server requesting the creation of a cloud storage account associated with the external storage device; and receive an indication that the cloud storage account has been created.
    Type: Grant
    Filed: December 27, 2016
    Date of Patent: May 5, 2020
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Kevin Arnold, Jeff Ma, Yuliya Kahuashvili, Timothy Bucher
  • Patent number: 10514909
    Abstract: A computer implemented method of estimating a similarity of binary records comprising executable code, comprising converting a first binary record and a second binary record to a first intermediate representation (IR) and a second IR respectively, decomposing each of the first IR and the second IR to a plurality of strands which are partial dependent chains of program instructions, calculating a probability score for each of the plurality of strands of the first IR to have an equivalent counterpart in the second IR by comparing each strand of the first IR to one or more strands of the second IR, adjusting the probability score for each strand according to a significance value calculated for each strand and calculating a similarity score defining a functional similarity between the first IR and the second IR by aggregating the adjusted probability score of the plurality of strands.
    Type: Grant
    Filed: March 29, 2018
    Date of Patent: December 24, 2019
    Assignee: Technion Research & Development Foundation Limited
    Inventors: Eran Yahav, Nimrod Sebban Partush, Moshe Yaniv David
  • Patent number: 10466975
    Abstract: Techniques herein processes type assignments for a generic class to generate a concrete class. In an embodiment, a computer analyzes a client class to detect a dependency on a generic class having type parameters. The client class contains a specialization context that specifies type assignments for the type parameters. Each type parameter is associated with particular type entries in the generic class that identify an erasure type to use in case the type parameter is erased. The computer generates instantiation metadata for the generic class including, for each type entry, performing the following. In response to determining that the specialization context specifies binding a particular type to the type parameter associated with the type entry, the computer generates an entry for the instantiation metadata that identifies the particular type. Otherwise, the computer generates an entry for the instantiation metadata that identifies an erasure type of the type entry.
    Type: Grant
    Filed: October 24, 2016
    Date of Patent: November 5, 2019
    Assignee: Oracle International Corporation
    Inventors: Maurizio Cimadamore, Brian Goetz
  • Patent number: 10445397
    Abstract: According to an embodiment, a request for browsing a web page is received from a user via a browser of a mobile terminal; whether the web page comprises an input widget is determined; whether the input widget is triggered is determined if the web page comprise the input widget; input information of the user is obtained when the input widget is triggered; the input information is processed by calling a processing interface corresponding to a type of the input widget; and processed input information is uploaded.
    Type: Grant
    Filed: June 5, 2015
    Date of Patent: October 15, 2019
    Assignee: Tencent Technology (Shenzhen) Company Limited
    Inventors: Kaixiang Zhang, Jiejun Zhang, Jinping Shi
  • Patent number: 10423144
    Abstract: A ladder-library management apparatus that manages a library used in a machine connected via a network includes an incorporated-information storage area that stores incorporated information in which the machine is associated with identification information of a device connected to the machine and a version number of the library used for the device, a library storage area that stores library data in which the identification information, information about the device, and information about the library are associated with each other, and a library server that adds or updates the library provided in the machine on the basis of the library data stored in the library storage area and that updates the incorporated information stored in the incorporated-information storage area.
    Type: Grant
    Filed: October 24, 2017
    Date of Patent: September 24, 2019
    Assignee: FANUC CORPORATION
    Inventor: Toshiyuki Matsuo
  • Patent number: 10372428
    Abstract: An example method includes, during execution of a software application in a computing system comprising a plurality of processing units, identifying platform-independent instructions that are configured to perform at least one computational task, wherein the plurality of processing units comprises a heterogeneous group, and wherein the platform-independent instructions have a format that is not specific to any particular processing unit in the plurality of processing units, determining one or more scheduling criteria that are associated with the platform-independent instructions, and selecting, from the heterogeneous group of processing units and based on the scheduling criteria, a processing unit to perform the at least one computational task.
    Type: Grant
    Filed: May 24, 2018
    Date of Patent: August 6, 2019
    Assignee: Architecture Technology Corporation
    Inventors: Judson Powers, Noel E. Schmidt
  • Patent number: 10356108
    Abstract: Systems and methods for detection of malicious exploitations in a multimedia file are disclosed. In one embodiment, such an approach includes parsing the compiled bytecode of a multimedia file to detect identified key instructions and determine if such key instructions are repeated in specific patterns that signify the presence of malicious exploitation. The approach may also include examining the contents of the constant pool table in a compiled multimedia file to detect specific shellcode strings that are indicative of presence of malicious exploitation. When the bytecode or the constant pool table indicates that malicious exploitation is present, an approach may be utilized to reduce instances of false positive identification of malicious exploitation.
    Type: Grant
    Filed: December 27, 2013
    Date of Patent: July 16, 2019
    Assignee: MCAFEE, LLC
    Inventors: Haifei Li, Bing Sun, Chong Xu
  • Patent number: 10331765
    Abstract: A mobile application engine includes an adapter, translation server and mobile renderer for providing forms as native mobile applications on a mobile device.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: June 25, 2019
    Assignee: SOURCECODE TECHNOLOGY HOLDINGS, INC.
    Inventors: Oliver Mitchel Smit, Werner Lowe, Marius Burger, Carel Aaron du Toit
  • Patent number: 10296299
    Abstract: The current application is directed to implementation of crosscutting functionalities, including code instrumentation, error logging, performance monitoring and performance-data logging, and other such crosscutting functionalities. These crosscutting functionalities generally violate, or run counter to, modem code-development strategies and programming-language features that seek to partition logic into hierarchically organized compartments and modules with related functionalities, attribute values, and other common features. In current client/server environments, for certain types of programs distributed by a server to client computers, including programs embedded in files that specify web pages, cross-cutting functionality is encoded in advice included with the programs and distributed to the client computers, which weave the advice into programs prior to or during client-side interpretation of the programs.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: May 21, 2019
    Assignee: VMware, Inc.
    Inventor: Rostislav Hristov
  • Patent number: 10275226
    Abstract: Techniques herein process type variables to transform type parameters (TPs) of generic classes. In an embodiment, a computer stores a generic class attribute associated with a definition of a generic class. The generic class attribute includes a type variable declaration (TVD) for each TP. Each TVD is associated with usage entries (VUEs) within the definition. Each VUE indicates an actual type for use, within a portion of the definition, as the TP represented by the VUE. Based on how a particular portion of the definition uses a particular TP represented by a particular TVD of a particular VUE, the computer determines whether the particular VUE is to be assigned to a particular type or erased. In response to determining that the particular VUE is to be erased, the computer configures the particular VUE to indicate erasure. Otherwise, the computer assigns the particular type to the particular VUE.
    Type: Grant
    Filed: October 24, 2016
    Date of Patent: April 30, 2019
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Maurizio Cimadamore, Brian Goetz
  • Patent number: 10228934
    Abstract: The present invention provides a vehicle-mounted control device, a program writing device, a program generating device, and a program, which are capable of quickly and easily carrying out reprogramming. An ECU 300 is provided with: a microcomputer 301, an SRAM 302, a flash memory 303, and a communication device 305. The flash memory 303 is configured from a plurality of blocks and stores older versions of the program. The communication device 305 receives (S250) a frame including block data, the type of the block data, and an address of a block in which the block data is to be written. The microcomputer 301 restores (S260) a new program from the block data in the SRAM 302 according to the type of the block data (S255, S260) and writes (S265, S270) one piece of the restored new program in a block corresponding to the address.
    Type: Grant
    Filed: January 8, 2016
    Date of Patent: March 12, 2019
    Assignee: HITACHI AUTOMOTIVE SYSTEMS, LTD.
    Inventors: Kenichi Kurosawa, Hidetoshi Teraoka, Fumiharu Nakahara
  • Patent number: 10169010
    Abstract: Processor hardware detects when memory aliasing occurs, and assures proper operation of the code even in the presence of memory aliasing. Because the hardware can detect and correct for memory aliasing, this allows a compiler to make optimizations such as register promotion even in regions of the code where memory aliasing can occur. The compiled code is then executed on the processor hardware, which detects memory aliasing at run-time and assures proper operation of the code even when memory aliasing occurs.
    Type: Grant
    Filed: June 1, 2016
    Date of Patent: January 1, 2019
    Assignee: International Business Machines Corporation
    Inventors: Srinivasan Ramani, Rohit Taneja
  • Patent number: 10108442
    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: September 18, 2017
    Date of Patent: October 23, 2018
    Assignee: International Business Machines Corporation
    Inventors: Rafael Camarda Silva Folco, Plinio A. S. Freire, Breno Henrique Leitao
  • Patent number: 10091203
    Abstract: A method and apparatus of a portable storage device that provides a specialized network fileserver is described. In an exemplary method, the portable storage device retrieves a list of applications on the portable storage device, where each of the applications has a private filesystem. For each of the applications, the portable storage device determines if that application will share the corresponding private filesystem and adds that private filesystem to a shared filesystem of the portable storage device is that is shareable. The portable storage device further advertises the shared filesystem to a host that is coupled to the portable storage device.
    Type: Grant
    Filed: May 26, 2015
    Date of Patent: October 2, 2018
    Assignee: Apple Inc.
    Inventors: Curtis C. Galloway, John Andrew Wright, Adi Masputra, Kwasi G Mireku
  • Patent number: 10042658
    Abstract: A system and method for automatically analyzing virtual machine bytecode of a software application and adding additional bytecode operable to determine information regarding network communication performed by the software application are described. According to one embodiment of the method, program code of a software application may be received, wherein the program code includes bytecode for a virtual machine. The bytecode may be automatically analyzed to detect network communication functionality. The method may operate to automatically add additional bytecode to the bytecode of the software application, where the added bytecode is operable to determine information regarding the network communication.
    Type: Grant
    Filed: May 29, 2013
    Date of Patent: August 7, 2018
    Assignee: Veritas Technologies LLC
    Inventors: Brian Day, Daryl Hoyt
  • Patent number: 10007562
    Abstract: An application which utilizes a single thread is monitored and context for the individual requests and business transactions operating on that platform are provided. A wrapper is placed is around an object that calls a request. The wrapper renames a request object. Request objects are renamed with a unique name when they are called. When a call stack is sampled, the sampler will retrieve the unique name. Performance data associated with the unique name may be correlated to a business transaction and particular request as metrics are subsequently analyzed. For subsequent reporting, such as call graph reporting, the report or call graph will have requests in the context of a particular business transaction and a particular request instance. This provides more context in reporting of an business application request for frameworks that utilize as single request for multiple threads.
    Type: Grant
    Filed: February 6, 2017
    Date of Patent: June 26, 2018
    Assignee: Cisco Technology, Inc.
    Inventor: Christopher Brichford
  • Patent number: 9990214
    Abstract: The present technology utilizes agents to monitor and report data from Java virtual machines (JVM) to a controller as part of application performance monitoring. When a JVM is loaded, code defining an interface for agents is loaded as well. A determination may be made as to whether the loaded agent implements the interface defined at the JVM. If the loaded agent does not implement the interface, for example if it is missing one or more methods defined by the interface, the agent class may be modified to define the missing methods. The modification to the agent class may be made after compilation but before the class is loaded into the JVM.
    Type: Grant
    Filed: January 1, 2017
    Date of Patent: June 5, 2018
    Assignee: Cisco Technology, Inc.
    Inventors: Vinay Srinivasaiah, Bradley Winslow
  • Patent number: 9846570
    Abstract: Provided is a multi-module compilation system for generating execution codes for each of modules in a module system. The multi-module compilation system may include a module identifier configured to analyze a program code of the module system and to identify target modules that execute the program code, a module code generator configured to divide the program code into module codes for each of the target modules and to generate the module codes, and a compiler configured to compile the module codes and to generate execution codes for each of the target modules.
    Type: Grant
    Filed: September 20, 2016
    Date of Patent: December 19, 2017
    Assignee: Luxrobo
    Inventors: Seung Bae Son, Sang Hun Oh, Goo Beom Jeoung
  • Patent number: 9798763
    Abstract: A computer-implemented method for using tags to manage software across a product life cycle, including storing by a server computer (i) a tag prototype database and (ii) a tag instance database, the method including the steps of creating a tag for a client software component, storing the tag in the tag instance database, receiving, by a client computer, the tag and the client software component, from an electronic software distribution computer, receiving a request from the client computer to initiate a session of the client software component, obtaining the tag, by the server computer, from the client computer, verifying the tag obtained from the client computer, updating the tag to include information about the session, and replacing the tag in the client computer with the updated tag.
    Type: Grant
    Filed: September 22, 2014
    Date of Patent: October 24, 2017
    Inventor: David D. Wright, Sr.
  • Patent number: 9778914
    Abstract: According to one aspect of the present disclosure, a computer-implemented method is disclosed in which a software development log whose entries describe potential features for a future release of a first software program is accessed to obtain a text description of a feature from an entry. The text description is decomposed using a predefined n-gram decomposition technique to produce a first set of n-grams. The method includes determining whether a second software program includes the feature. The determining includes comparing the first set of n-grams to a second set of n-grams which describe the second software program, and calculating a similarity metric based on the comparing that indicates an extent to which matches for the n-grams in the first set are present in the second set. The software development log is updated based on the determining.
    Type: Grant
    Filed: June 25, 2015
    Date of Patent: October 3, 2017
    Assignee: CA, Inc.
    Inventors: Debra Danielson, Navid Rezvani
  • Patent number: 9740991
    Abstract: Metrics are calculated from information acquired during execution of transactions for transactions that cannot be identified during execution. In-flight or execution related metrics are grouped by transaction type and time period. The transaction name is associated with the metrics once the transaction has completed, and data is reported for the time period once all transactions executing in that time period have completed. When a transaction has completed execution, in-flight metrics may be determined for the transaction for each time period in which other transactions executing in that time period have completed. When all transactions executing during a particular time period are complete, the in-flight metrics for transactions executing during that time period are determined and stored. The in-flight metrics may include concurrency, stalls and other data.
    Type: Grant
    Filed: December 21, 2007
    Date of Patent: August 22, 2017
    Assignee: CA, Inc.
    Inventor: David Isaiah Seidman
  • Patent number: 9727315
    Abstract: The embodiments provide a data processing apparatus for automated blueprint assembly. The data processing apparatus includes a micro-blueprint assembler configured to receive a request for automated blueprint assembly for assembling an application, where the request specifies at least one feature, and a model database configured to store model data. The model data includes a plurality of classes and class properties. The data processing apparatus further includes a micro-blueprint database configured to store a plurality of micro-blueprints. Each micro-blueprint corresponds to a functional component of a stack element or service tier, and the functional component is annotated with one or more classes of the plurality of classes and at least one required capability and available capability. The micro-blueprint assembler is configured to generate at least one application blueprint based on the model data and the plurality of micro-blueprints according to the request.
    Type: Grant
    Filed: December 12, 2014
    Date of Patent: August 8, 2017
    Assignee: BMC Software, Inc.
    Inventors: Abhijit Sharma, Neeran Karnik, Abhay Ghaisas
  • Patent number: 9729614
    Abstract: The present document is directed to data backup and data archiving and data synching and data sharing over disparate networks for the purpose of allowing private and commercial computing device users to back up, archive, synchronize and share data, including data files, on remote data-storage facilities via a network-based application. In particular, the teachings of the present document facilitate the end to end process through the utilization of a resilient data node without compromising the system itself, or the data stored therein security or privacy.
    Type: Grant
    Filed: October 1, 2013
    Date of Patent: August 8, 2017
    Assignee: Datacastle Corporation
    Inventors: Jane Cosham, Gary Sumner, Alex Laskos, Mark Reynoldson
  • Patent number: 9690761
    Abstract: A content handler application that may be provided on a mobile device to provide extensions to a web based application. The content handler may provide the web application access features such as the camera, GPS, A/V input and output, file system and secure uploads. The content handler may be a certified application for use on the mobile device and calls applications to access the features of the mobile device. The web applications may be updated without concern for the content handler. Because the user experience and business logic are contained in the web application they are unaffected by the certification and multi-platform issues as this is limited to only the content handler.
    Type: Grant
    Filed: June 2, 2015
    Date of Patent: June 27, 2017
    Assignee: United Services Automobile Association (USAA)
    Inventors: Minya Liang, Teddy J. E. Voutour
  • Patent number: 9584607
    Abstract: Among other things, we describe a method that includes receiving a content stream that defines elements of media content, determining that an element of content of the content stream is associated with a first location, determining that an electronic device is at a second location proximate to the first location, and in response, making the element of content available on the electronic device.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: February 28, 2017
    Assignee: Apple Inc.
    Inventors: James Oliver Boggs, Ryan Christopher Griggs
  • Patent number: 9571557
    Abstract: In the event that function names contained when one of the scripts describing objects processed within each predetermined processing unit in the web application is defined as a script of interest and the script of interest is converted to internal code are not common with function names contained when the scripts describing the remaining objects are converted to internal code, the internal code of said script of interest is cached.
    Type: Grant
    Filed: June 30, 2015
    Date of Patent: February 14, 2017
    Assignee: DeNA Co., Ltd.
    Inventor: Hironori Bono
  • Patent number: 9557969
    Abstract: The embodiments provide a data processing apparatus for automated blueprint assembly. The data processing apparatus includes a micro-blueprint assembler configured to receive a request for automated blueprint assembly for assembling an application, where the request specifies at least one feature, and a model database configured to store model data. The model data includes a plurality of classes and class properties. The data processing apparatus further includes a micro-blueprint database configured to store a plurality of micro-blueprints. Each micro-blueprint corresponds to a functional component of a stack element or service tier, and the functional component is annotated with one or more classes of the plurality of classes and at least one required capability and available capability. The micro-blueprint assembler is configured to generate at least one application blueprint based on the model data and the plurality of micro-blueprints according to the request.
    Type: Grant
    Filed: December 12, 2014
    Date of Patent: January 31, 2017
    Assignee: BMC Software, Inc.
    Inventors: Abhijit Sharma, Neeran Karnik, Abhay Ghaisas
  • Patent number: 9424094
    Abstract: Server consolidation using virtual machine resource tradeoffs, is provided. One implementation involves assigning a virtual machine to a target physical server based on a plurality of virtualization parameters for maximizing utility of a plurality of virtual machines and physical servers. The assigning performs resource allocation for the virtual machine based on capabilities of the target physical server and a plurality of virtual machine resource requirements. Virtualization parameters include a reservation parameter (min) representing a minimum resources required for a VM, a limit parameter (max) representing a maximum resources allowable for the VM, and a weight parameter (shares) representing a share of spare resources for the VM.
    Type: Grant
    Filed: June 1, 2009
    Date of Patent: August 23, 2016
    Assignee: International Business Machines Corporation
    Inventors: Michael D. Cardosa, Sandeep Gopisetty, Madhukar R. Korupolu, Aameek Singh