Emulation Patents (Class 717/138)
  • Patent number: 10884767
    Abstract: The specification provides example service processing methods and devices. One example method includes detecting a device type of an electronic device. An instruction processing rule corresponding to the device type is obtained. The instruction processing rule includes an instruction set conversion rule defining a process for converting display modification instructions generated by the electronic device into unified display modification instructions. A first display modification instruction initiated in response to a user interacting with the electronic device is obtained based on the instruction processing rule. The first display modification instruction is converted into a corresponding first unified display modification instruction according to the instruction processing rule. A portion of interaction data output to a display us updated by invoking a service processing mode corresponding to the first unified display modification instruction.
    Type: Grant
    Filed: October 25, 2019
    Date of Patent: January 5, 2021
    Assignee: Advanced New Technologies Co., Ltd.
    Inventor: Yuguo Zhou
  • Patent number: 10803174
    Abstract: Techniques and architectures for representing data with one or more n-dimensional representations and/or using one or more models to identify threats associated with the one or more n-dimensional representations are described herein. For example, the techniques and architectures may determine one or more coordinates for one or more points based on one or more sets of bits in the data and generate an n-dimensional representation for the data based on the one or more points. The techniques and architectures may evaluate the n-dimensional representation with one or more machine-trained models to detect a threat associated with the data, such as malware or another threat.
    Type: Grant
    Filed: September 13, 2019
    Date of Patent: October 13, 2020
    Assignee: Quantum Star Technologies LLC
    Inventor: Garrett Thomas Oetken
  • Patent number: 10803395
    Abstract: Systems, computer-implemented methods, and computer program products to facilitate quantum domain computation of classical domain specifications are provided. According to an embodiment, a system can comprise a memory that stores computer executable components and a processor that executes the computer executable components stored in the memory. The computer executable components can comprise an input transformation component that can be adapted to receive one or more types of domain-specific input data corresponding to at least one of a plurality of domains. The input transformation component can transform the one or more types of domain-specific input data to quantum-based input data. The computer executable components can further comprise a circuit generator component that, based on the quantum-based input data, can generate a quantum circuit.
    Type: Grant
    Filed: June 7, 2018
    Date of Patent: October 13, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Marco Pistoia, Jay M. Gambetta, Antonio Mezzacapo, Richard Chen, Stephen Wood, Peng Liu, Shaohan Hu, Julia Elizabeth Rice, Ivano Tavernelli, Rudy Raymond Harry Putra, Panagiotis Barkoutsos, Nikolaj Moll
  • Patent number: 10713024
    Abstract: The disclosure invention provides a method for executing a program compiled for a source architecture on a machine having a different target architecture, a non-transitory computer readable medium configured to store instructions for performing such a method, and a system for performing such a method.
    Type: Grant
    Filed: September 4, 2018
    Date of Patent: July 14, 2020
    Assignee: LZLABS GMBH
    Inventors: Jan Jaeger, Thomas D. Grieve
  • Patent number: 10713181
    Abstract: On a computer system having a processor, a single OS and a first instance of a system driver installed and performing system services, method for sharing driver pages among Containers, including instantiating a plurality of Containers that virtualize the OS, wherein the first instance is loaded from an image, and instantiating a second instance of the system driver upon request from Container for system services by: allocating virtual memory pages for the second instance and loading, from the image, the second instance into a physical memory; acquiring virtual addresses of identical pages of the first instance compared to the second instance; mapping the virtual addresses of the identical pages of the second instance to physical pages to which virtual addresses of the corresponding pages of the first instance are mapped, and protecting the physical pages from modification; and releasing physical memory occupied by the identical pages of the second instance.
    Type: Grant
    Filed: February 21, 2019
    Date of Patent: July 14, 2020
    Assignee: Virtuozzo International GmbH
    Inventors: Pavel Makhov, Marina Kudinova, Alexey Kostyushko, Mikhail Philippov
  • Patent number: 10620975
    Abstract: A method, apparatus and product for GUI element acquisition using a plurality of alternative representations of the GUI element. The method comprising: obtaining a selection of a Graphical User Interface (GUI) element; obtaining a representation set of the GUI element, wherein the representation set comprises a plurality of alternative representations, each of which provides a manner of identifying the GUI element in GUIs; applying the representation set to identify the GUI element in a GUI of a program, wherein said applying the representation set comprises, for each representation of the alternative representations, independently applying the each representation to identify one or more GUI elements corresponding the each representation; and in response to determining that said applying the representation set provides an indefinite result, obtaining a modified representation set.
    Type: Grant
    Filed: June 12, 2019
    Date of Patent: April 14, 2020
    Assignee: WALKME LTD.
    Inventors: Ron Zohar, Moran Shemer, Nir Nahum
  • Patent number: 10592216
    Abstract: Methods, systems, and computer-readable media for a development environment for programming quantum computing resources are disclosed. A development environment receives information associated with a quantum algorithm. A quantum computing resource is selected for implementation of the quantum algorithm based at least in part on one or more metrics analyzed by the development environment. The quantum computing resource comprises a plurality of quantum bits and is selected from a pool of computing resources of a provider network. A program executable on the quantum computing resource is generated based at least in part on the information associated with the quantum algorithm.
    Type: Grant
    Filed: November 15, 2017
    Date of Patent: March 17, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: David R. Richardson, Marc John Brooker, James Michael Thompson
  • Patent number: 10579799
    Abstract: Disclosed are systems and methods for execution of program code by an interpreter. One exemplary method comprises: generating intermediate instructions based on a unified grammar from instructions of the program code, beginning execution of the intermediate instructions in an emulated computer environment, in response to detecting an instruction of the program code associated with an object for which a rule of interpretation is not found, halting further execution of the intermediate instructions, obtaining an auxiliary code corresponding to the object, wherein a result of execution of the auxiliary code corresponds to the result of the execution of the object, and wherein the auxiliary code contains objects for which the interpreter has a rule of interpretation, executing the instructions of the auxiliary code; and after completion of the execution of the auxiliary code, resuming the execution of the intermediate instructions.
    Type: Grant
    Filed: March 8, 2019
    Date of Patent: March 3, 2020
    Assignee: AO Kaspersky Lab
    Inventors: Vasily A. Davydov, Dmitry V. Vinogradov, Roman Y. Gavrilchenko, Dmitry A. Kirsanov
  • Patent number: 10514904
    Abstract: Some examples described herein relate to dynamically applying a patch to a computer application. An external process may be invoked to bring a target process of the computer application to a safe point. A dynamic loader may load a patch library into an address space of the target process, wherein the patch library includes a patched version of a target function or a new function. A specific function in the dynamic loader may be directed to route a function call for the target function to the patched version of the target function or the new function in the patch library.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: December 24, 2019
    Assignee: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
    Inventors: Sujoy Saraswati, Suprateeka Radhakrishna Hegde, Deepti Kharbanda, Abhay Padlia
  • Patent number: 10481982
    Abstract: According to one aspect, a distributed database system is configured to manage multi-writer operations on a distributed database by implementing one or more catamorphic database operators. Catamorphic operators can be architected on the system, and executed with little or no reconciliation logic. Catamorphic operators define sets of catamorphic operations and respective execution logic where the order of execution of catamorphic operations is not relevant to a final result.
    Type: Grant
    Filed: June 8, 2016
    Date of Patent: November 19, 2019
    Assignee: MongoDB, Inc.
    Inventor: Dwight Merriman
  • Patent number: 10474442
    Abstract: Methods, apparatus, systems and articles of manufacture to perform region formation for usage by a dynamic binary translation are disclosed. An example apparatus includes an initial region former to form an initial region starting at a first block of hot code of a control flow graph. The initial region former also adds blocks of hot code lying on a first hottest path of the control flow graph. A region extender extends the initial region to form an extended region including the initial region. The extended region begins at a hottest exit of the initial region and includes blocks of hot code lying on a second hottest path until one of a threshold path length has been satisfied or a back edge of the control flow graph is added to the extended region. A region pruner prunes the remove all loop nests except a selected loop nest which forms a final region.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: November 12, 2019
    Assignee: Intel Corporation
    Inventors: Girish Venkatasubramanian, Tanima Dey, Dasarath Weeratunge, Cristiano Pereira, Jose Baiocchi Paredes
  • Patent number: 10469557
    Abstract: In one embodiment, Quality of Service (QoS) criteria based server side binary translation and execution of applications is performed on multiple servers utilizing distributed translation and execution in either a virtualized or native execution environment. The translated applications are executed to generate output display data, the output display data is encoded in a media format suitable for video streaming, and the video stream is delivered over a network to a client device. In one embodiment, one or more graphics processors assist the central processors of the servers by accelerating the rendering of the application output, and a media encoder encodes the application output into a media format.
    Type: Grant
    Filed: December 19, 2016
    Date of Patent: November 5, 2019
    Assignee: Intel Corporation
    Inventors: Bharath Muthiah, William Rash, Glenn Hinton, Martin G. Dixon, Scott Hahn, David Papworth
  • Patent number: 10437619
    Abstract: A machine monitoring method preferably includes receiving packets, such as packets supplied to a physical machine, virtually simulating physical machine operation, and analyzing the virtual outputs of the virtual simulation. Virtually simulating physical machine operation is preferably performed based on the received packets, such as using a digital duplicate of the physical machine. Analyzing the virtual outputs can include, for example, determining simulated states of one or more aspects, such as physical components, of the physical machine, and/or determining that one or more events associated with physical machine operation have occurred. The method can optionally include, for example, transmitting the analysis results to a remote device, determining the digital duplicate of the physical machine, determining an analysis model for the virtual outputs of the digital duplicate, determining digital component modules, and/or determining digital analysis modules.
    Type: Grant
    Filed: December 12, 2018
    Date of Patent: October 8, 2019
    Assignee: Arch Systems Inc.
    Inventors: Christopher Ling, Luke Michael Ekkizogloy, Timothy Matthew Burke
  • Patent number: 10365902
    Abstract: The invention relates to a method for compiling a source code to a program code, the method comprising: providing a pattern graph based on the source code, the pattern graph corresponding to an intermediate representation of the source code according to a set of rules in a first programming language, wherein the set of rules comprises a specific replacement rule directing a pattern graph to be replaced by a corresponding replacement graph assigned to the pattern graph, replacing the pattern graph by the replacement graph assigned to the pattern graph, and generating the program code based on the replacement graph.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: July 30, 2019
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Alexander Vladimirovich Slesarenko, Alexey Romanov, Hongbo Zhang
  • Patent number: 10341387
    Abstract: The various implementations described herein include systems, methods and/or devices method for applying security policies in a virtualization environment. In one aspect, the method is performed at an electronic device of a plurality of electronic devices in a computing network, the electronic device having one or more processors and memory storing instructions for execution by the one or more processors. A plurality of user-space instances is instantiated. Furthermore, a security instance distinct from the plurality of user-space instances is instantiated. The security instance, which executes in user space of a respective virtual address space, monitors operations and data communications for the plurality of user-space instances. The security instance applies security policies to the monitored operations and data communications for the plurality of user-space instances so as to detect and/or remediate violations of the security policies.
    Type: Grant
    Filed: February 7, 2017
    Date of Patent: July 2, 2019
    Assignee: NEUVECTOR, INC.
    Inventors: Fei Huang, Gang Duan
  • Patent number: 10303592
    Abstract: A method and apparatus for testing an application. The method displays, by a computer system, simulations of a graphical user interface for the application for a group of different types of devices on a display system. The method further displays, by the computer system, a group of controls in the graphical user interface displayed in the group of different types of devices on the display system. The method still further displays, by the computer system, a change to the graphical user interface in all of the simulations when a user input manipulates a control in a simulation in the simulations. A testing of the graphical user interface for the application for the group of different types of devices is enabled.
    Type: Grant
    Filed: March 2, 2015
    Date of Patent: May 28, 2019
    Assignee: ADP, LLC
    Inventors: Jerome Gouvernel, Jordan Schiffer, Hadar Yacobovitz, Nick Heasman
  • Patent number: 10261818
    Abstract: Real-time application metrics of an application executed by a virtual machine are dynamically monitored by a controlling agent and analyzed to determine an optimal configuration of the virtual machine for executing the application. Based on the measured metrics, tunable parameters of the virtual machine may be adjusted to achieve desired application performance.
    Type: Grant
    Filed: February 10, 2015
    Date of Patent: April 16, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Christopher J. Blythe, Michael H. Dawson, Curtis E. Hrischuk, Aaron J. Quirk
  • Patent number: 10264069
    Abstract: Methods, systems, and devices are described herein for modifying the monitoring of the health of a data center IP endpoint (such as VM) during live migration of the data center IP endpoint from a source host to a destination host. In one example, the described techniques may include receiving an indication that a virtual machine is going to be live migrated from a source host to a destination host. Next, evaluation of health probe responses originating from the virtual machine may be suspended for a time period. The time period may be selected based on the live migration. The evaluation of the probe responses originating from the virtual machine may be resumed upon completion of the time period. In some cases, a health probe status of the virtual machine may be migrated from the source host to the destination host.
    Type: Grant
    Filed: March 3, 2017
    Date of Patent: April 16, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ranjit Puri, Manish Tiwari, Madhan Sivakumar, Vikas Bhardwaj
  • Patent number: 10248423
    Abstract: A short pointer mode application is loaded in an address space configured for use by a plurality of types of applications including the short pointer mode application and a long pointer mode application. The address space has a first portion addressable by short pointers of a defined size and a second portion addressable by long pointers of another defined size. The other defined size is different from the defined size. Based on executing the short pointer mode application, one or more short pointers of the short pointer mode application are converted to one or more long pointers; and the one or more long pointers are used to access memory within the first portion of the address space addressable by short pointers.
    Type: Grant
    Filed: July 22, 2016
    Date of Patent: April 2, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Michael K. Gschwind
  • Patent number: 10241810
    Abstract: A processing system comprising a microprocessor core and a translator. Within the microprocessor core is arranged a hardware decoder configured to selectively decode instructions for execution in the microprocessor core, and, a logic structure configured to track usage of the hardware decoder. The translator is operatively coupled to the logic structure and configured to selectively translate the instructions for execution in the microprocessor core, based on the usage of the hardware decoder as determined by the logic structure.
    Type: Grant
    Filed: May 18, 2012
    Date of Patent: March 26, 2019
    Assignee: Nvidia Corporation
    Inventors: Rupert Brauch, Madhu Swarna, Ross Segelken, David Dunn, Ben Hertzberg
  • Patent number: 10223084
    Abstract: A quantum compiler is provided. The quantum compiler may generate, based on a text-based programmer input, an executable Hamiltonian for a quantum computer such as a quantum annealing computer or an adiabatic quantum computer. The quantum compiler may generate the program Hamiltonian by generating Hamiltonian phrases corresponding to portions of the programmer input and combining the Hamiltonian phrases. Various terms and values in the program Hamiltonian may correspond to physical features of the quantum computer so that the quantum computer can be operated, based on the program Hamiltonian, such that a low energy state of the quantum computer corresponds to the low energy state of the Hamiltonian.
    Type: Grant
    Filed: December 15, 2016
    Date of Patent: March 5, 2019
    Assignee: Lockheed Martin Corporation
    Inventor: Robert Andrew Dunn
  • Patent number: 10216529
    Abstract: Method for sharing driver pages, including, on a computer system having a first driver and performing system services, instantiating Containers; code and data of the driver are loaded sequentially into pages arranged in a virtual memory, and instantiating a next driver upon a request from one of the Containers for system services by: loading physical pages of the next driver into physical memory and allocated virtual memory pages for the next driver; associating the next driver with the first driver and comparing pages of the next driver and the first driver, generating a set of identical physical pages; mapping virtual pages of the next driver to identical physical pages of the first driver while atomically protecting identical physical pages; non-identical pages of the next driver from physical memory remain mapped to virtual pages of the next driver; releasing physical memory occupied by identical physical pages of the next driver.
    Type: Grant
    Filed: November 19, 2015
    Date of Patent: February 26, 2019
    Assignee: Virtuozzo International GmbH
    Inventors: Pavel Makhov, Marina Kudinova, Alexey Kostyushko, Mikhail Philippov
  • Patent number: 10175964
    Abstract: A compiler-created cache contains target addresses of multiple indirect routine call sites. Ordinals assigned to indirect routine call sites are used with hardcoded offsets into the cache. Ordinals may be computed using a routine counter and an indirect call site counter. At runtime a target address of an indirect routine call site is compared to an entry in the cache using the hardcoded offset for efficiency. If the target address matches the cache entry, then a redundant call is avoided; otherwise, the call is not redundant, and the cache is updated. The call tested for redundancy may be a security check for malware, or a computationally expensive routine which calculates a return value without any side effects. Stack pointer validity may be checked. The cache may be guarded with code for trustworthy computing. Tail merging may be performed.
    Type: Grant
    Filed: October 17, 2014
    Date of Patent: January 8, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: James J. Radigan
  • Patent number: 10152313
    Abstract: The invention relates to a method for transforming a shared library between two operating systems with different application binary interfaces (ABIs) on a predetermined instruction set architecture. The shared library is implemented by a source object file comprising at least a source memory image, source symbol information, and absolute source relocation information. The method comprises: creating a target object header compliant to the target ABI and comprising information descriptive of the shared library and/or a target object file; creating a target memory image compliant to the target ABI from the source memory image; creating target symbol information compliant to the target ABI from the source symbol information; creating target relocation information compliant to the target ABI from the source relocation information; and writing the target object header, memory image, symbol information, and relocation information to the target object file to implement the transformed shared library.
    Type: Grant
    Filed: December 19, 2017
    Date of Patent: December 11, 2018
    Assignee: International Business Machines Corporation
    Inventors: Frederik J. Hartmann, Ulrich Weigand
  • Patent number: 10140105
    Abstract: A method includes receiving source code in a first programming language. The method further includes identifying a design pattern based on a flag included in the source code. The method further includes generating a first translation of the source code in a second programming language, where at least a portion of the second file conforms to the design pattern. The method further includes generating a second translation of the source code in a third programming language. The method further includes outputting first data based on the first translation to a first device and second data based on the second translation to a second device.
    Type: Grant
    Filed: March 10, 2016
    Date of Patent: November 27, 2018
    Assignee: WOWZA MEDIA SYSTEMS, LLC
    Inventors: Scott Kellicker, Jan Borgersen
  • Patent number: 10133655
    Abstract: An emulator handles problematic target code blocks by evaluating target system code for problematic target code blocks and bypassing translation of such blocks, in some cases selecting alternative host code for a problematic block. Non-problematic portions of the target system code are translated into corresponding portions of host system code, which are inserted into an execution stream. Alternative host system code may also be inserted into the execution stream.
    Type: Grant
    Filed: June 12, 2017
    Date of Patent: November 20, 2018
    Assignee: Sony Interactive Entertainment Inc.
    Inventors: Geoffrey Piers Robert Norton, Jacob P. Stine, Takayuki Kazama, Dmitri Tolstov
  • Patent number: 10073687
    Abstract: Systems and methods for cross-building a non-native application on a computing device under a different architecture. In one example, the computing device may be a x86 host computing device, and the non-native application may be a non-x86 application intended to be executable on a non-x86 embedded system. To cross-build the application on the x86 host, the x86 host may provide a protected environment, such as a Linux container (LXC). The application and corresponding library files for the non-x86 embedded system are provided in the LXC. When the application is to be executed, the system determines that the application is non-x86, and loads a corresponding translator module to translate the non-x86 code of the application and the corresponding library files in the LXC to x86 code. Thus, the application may be executable in the LXC on the x86 host to access and utilize resources of the x86 host.
    Type: Grant
    Filed: August 25, 2016
    Date of Patent: September 11, 2018
    Assignee: AMERICAN MEGATRENDS, INC.
    Inventors: Samvinesh Christopher, Winston Thangapandian
  • Patent number: 10061573
    Abstract: User interfaces of a software platform that generates transformed code from source code enable interaction with the codes. In various embodiments, the software platform may store the source code and the transformed code in a data store. The transformed code is a transformation of the source code by at least one business semantic preserving code transform. The at least one business semantic preserving transform causes an execution of the transformed code in a new execution scenario to produce an identical semantic effect as an execution of the source code in an old execution scenario. Subsequently, the software platform may cause a display of a user interface of the application on a display device. The user interface may provide one or more user command items for manipulating at least one of the source code or the transformed code stored in the data store.
    Type: Grant
    Filed: April 14, 2015
    Date of Patent: August 28, 2018
    Assignee: MOBILIZE.NET CORPORATION
    Inventors: Carlos Araya, Iván Sanabria, Federico Zoufaly, Mauricio Rojas, Edgar Infante, Olman Garcia
  • Patent number: 10048952
    Abstract: A data model evaluation optimizer is provided that optimizes data model evaluation. An expression of a data model is received that is defined using a domain-specific language, the expression to be evaluated by an application, and the application having been written in a first programming language. New code is dynamically generated in a second programming language by translating the domain-specific language expression into the second programming language. The generated new code is compiled (and optimized) into a compilation of the second programming language. The compilation of the second programming language is made available to the application of the first programming language such that the application evaluates the expression using the compilation.
    Type: Grant
    Filed: November 11, 2015
    Date of Patent: August 14, 2018
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Alexey Roytman, Natalia Reichman
  • Patent number: 9946526
    Abstract: Method, system, and programs for providing development, deployment, and hosting of applications that are interoperable across different device platforms. An application capable of being executed in a plurality of different device formats is generated. The application is deployed to a client device for execution at the client device. Execution of the same application is initiated at a server.
    Type: Grant
    Filed: April 2, 2012
    Date of Patent: April 17, 2018
    Assignee: EXCALIBUR IP, LLC
    Inventors: Bruno Fernandez-Ruiz, Daryl Mun-Kid Low, Martin F. N. Cooper
  • Patent number: 9910646
    Abstract: Technologies for native code invocation using binary analysis are described. A computing device for invoking native code from managed code using binary analysis receives a call from a thread executing a managed code segment to execute a native code segment. The computing device performs a binary analysis of the native code segment and generates, from the binary analysis, a complexity indicator that indicates a level of complexity of the native code segment by comparing the native code segment to at least one predefined complexity rule. Additionally, the computing device stores a status of the thread based on the complexity indicator and executes the native code segment. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 26, 2015
    Date of Patent: March 6, 2018
    Assignee: Intel Corporation
    Inventors: Abhay S. Kanhere, Haitao Feng, Paul H Hohensee, Aravind Subramanian
  • Patent number: 9880846
    Abstract: In one embodiment, a micro-processing system includes a hardware structure disposed on a processor core. The hardware structure includes a plurality of entries, each of which are associated with portion of code and a translation of that code which can be executed to achieve substantially equivalent functionality. The hardware structure includes a redirection array that enables, when referenced, execution to be redirected from a portion of code to its counterpart translation. The entries enabling such redirection are maintained within or evicted from the hardware structure based on usage information for the entries.
    Type: Grant
    Filed: April 11, 2012
    Date of Patent: January 30, 2018
    Assignee: NVIDIA CORPORATION
    Inventors: Nathan Tuck, Ross Segelken
  • Patent number: 9836798
    Abstract: Particular embodiments of the present invention are directed to providing an application programming interface allowing developers to create a single version of a social networking application configured to execute on more than one social network, wherein such execution may be customized with respect to each particular social network in which the social networking application may execute. The same or alternative embodiments may also provide an application programming interface for saving and/or retrieving social networking application data in and/or from a common data store, allowing aggregation of data specific to the cross-network social networking application such that the data is available across multiple social networks.
    Type: Grant
    Filed: October 30, 2008
    Date of Patent: December 5, 2017
    Assignee: EXCALIBUR IP, LLC
    Inventors: William MacDonald White, Steven Horowitz
  • Patent number: 9836295
    Abstract: A method and system for secure automated deployment of an emulated computer system. The method includes providing a download package for installation on a target machine. The download package includes a generic emulated computer system having no unique identity, no model identity, no features, and minimal processing components. The download package also includes a customer order file based on an order from a customer of the target machine. The customer order file includes a machine identity, at least one machine capability, and control data. The download package also includes at least one enabling key configured to enable the emulated computer system on the target machine. The enabling key is customized based on the order from the customer of the target machine, and includes identity information that restricts the use of the emulated computer system on any computer system other than the target machine.
    Type: Grant
    Filed: November 4, 2015
    Date of Patent: December 5, 2017
    Assignee: Unisys Corporation
    Inventors: Philip M Hoffman, Sharon M Mauer, Michael I Bell, Greg L Gensichen, Dwayne E Ebersole, Tatyana Martsun
  • Patent number: 9787529
    Abstract: The disclosed method for tunneling socket calls across operating systems may include (1) intercepting a socket call issued by an application running on a first operating system, (2) determining that the socket call is directed to a network interface that is (A) accessible to a second operating system installed on a virtual machine running on the first operating system and (B) inaccessible to the first operating system and then, in response to determining that the socket call is directed to the network interface, (3) tunneling the socket call to the second operating system installed on the virtual machine, and (4) executing the socket call within the second operating system to initiate at least one networking action with respect to the network interface on behalf of the application. Various other methods, systems, and computer-readable media are also disclosed.
    Type: Grant
    Filed: January 16, 2015
    Date of Patent: October 10, 2017
    Assignee: Juniper Networks, Inc.
    Inventors: Usha Sharma, Surinder Singh
  • Patent number: 9772827
    Abstract: One embodiment sets forth a method for efficiently determining memory resource dependencies between instructions included in a software application. For each instruction, a dependency analyzer uses overlapping search techniques to identify one or more overlaps between the memory elements included in the current instruction and the memory elements included in previous instructions. The dependency analyzer then maps objects included in the instructions to a set of partition elements wherein each partition element represents a set of memory elements that are functionally equivalent for dependency analysis. Subsequently, the dependency analyzer uses the set of partition elements to determine memory dependencies between the instructions at the memory element level.
    Type: Grant
    Filed: April 22, 2013
    Date of Patent: September 26, 2017
    Assignee: NVIDIA Corporation
    Inventor: Julius Vanderspek
  • Patent number: 9767004
    Abstract: Embodiments presented herein describe techniques to track and correct indirect function calls in disassembled object code. Assembly language source code is generated from a binary executable object. The assembly language source code may include indirect function calls. Memory addresses associated with the function calls are identified. A central processing unit (CPU) interrupt instruction is inserted in the disassembled source code at each indirect function call. The disassembled source code is executed. When the interrupt at each indirect function call is triggered, the function name of a function referenced by a register may be determined.
    Type: Grant
    Filed: June 16, 2014
    Date of Patent: September 19, 2017
    Assignee: Symantec Corporation
    Inventors: Hong Yi Yang, Rui Guo
  • Patent number: 9756149
    Abstract: Methods, systems, and computer program products are provided for machine-specific instruction set translation. One example method includes identifying computing devices, each device having a respective software component installed, the software component including a translator component for translating a program in a portable format to a machine-specific instruction set, and a sandbox component for executing programs translated to the machine-specific instruction set on the computing device using software-based fault isolation; identifying computing devices having a given hardware configuration; and transmitting another translator component and another sandbox component to each of the identified computing devices. Each of the identified computing devices having the given hardware configuration is configured to receive the components and to configure its software component to use the received components in lieu of the corresponding components.
    Type: Grant
    Filed: March 28, 2016
    Date of Patent: September 5, 2017
    Assignee: Google Inc.
    Inventors: David C. Sehr, J. Bradley Chen, Bennet S. Yee, Robert Muth, Jan Voung, Derek L. Schuff
  • Patent number: 9606779
    Abstract: The present invention relates to a data processing system and to a method for implementing simulation in the system, and the invention comprises: a process of inputting an application code for implementing a simulation; a process of converting the input application code into assembly data format; a process of generating basic blocks for the assembly data format; and a process of implementing the simulation via the generated basic blocks. Consequently the simulation implementation time is shortened as the simulation is implemented from instruction units to basic block units.
    Type: Grant
    Filed: January 30, 2013
    Date of Patent: March 28, 2017
    Assignee: SAMSUNG ELECTRONICS CO., LTD
    Inventors: Ui Son Yoon, Bum Sik Kim, Kyoung Soo Cho, Ji Joong Moon
  • Patent number: 9569234
    Abstract: A content processing device and corresponding method for processing source code are disclosed. The method may include receiving source code with a virtual machine operating on a hardware platform with an inherent address-pointer-bit-width and generating, from the source code, executable code that includes internal address pointers to objects in the virtual machine heap. One or more runtime conditions may be monitored and a size of a bit-width for the internal address pointers in the virtual machine may be adjusted, with or without associated changes to create optimized layout of the objects in the virtual machine heap, based upon one or more runtime conditions.
    Type: Grant
    Filed: October 27, 2014
    Date of Patent: February 14, 2017
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Subrato K. De, Derek J. Conrod, Dineel D. Sule
  • Patent number: 9558023
    Abstract: Provided are techniques for comparing a first fileset associated with a first operating system (OS) with a second fileset associated with a second OS; determining, based upon the comparing, that the second OS is a more current version of the first OS; in response to the determining that the second OS is a more current version of the first OS, moving, in conjunction with live application mobility, a virtual machine (VM) workload partition (WPAR) on the first LPAR to a second LPAR, the moving comprising determining a set of overlays associated with the WPAR corresponding to the second OS; removing from the WPAR any overlays associated with the first OS; applying to the WPAR a set of overlays corresponding to the second OS; check pointing processes associated with the WAPR; and copying live data associated with the LPAR from the first LPAR to the second LPAR.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: January 31, 2017
    Assignee: International Business Machines Corporation
    Inventors: Frederic Barrat, Christine M. Briand, Laurent Dufour, Khalid Filali-Adib, Perinkulam I. Ganesh, J. Mark McConaughy, Stephen B. Peckham, David W. Sheffield, Marc J. Stephenson, Nathaniel S. Tomsic, Sungjin Yook
  • Patent number: 9489220
    Abstract: A system, method and computer program product for implementing a VM on a host computer and monitoring the VM processes from the Host computer. A host-based Task Manager monitors the VM process and obtains execution statistics using a proprietary dynamic link library that substitutes Guest statistic collection functions for standard host statistic collection functions. The Guest statistic collection functions acquire data related to the execution of the VM processes running on the Guest OS.
    Type: Grant
    Filed: November 27, 2015
    Date of Patent: November 8, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Elena A. Koryakina, Alexey B. Koryakin
  • Patent number: 9461819
    Abstract: A project managing unit 11 authenticates users of virtual machines 24-1 to 24-N and specifies a project to which the users belong. A key managing unit 12 distributes an encryption key, which is assigned in advance to the project specified by the project managing unit 11, to encryption processing units 232-1 to 232-N of virtualizing units 23-1 to 23-N. Input/output monitoring units 231-1 to 231-N of the virtualizing units 23-1 to 23-N receive input/output data generated between the virtual machines 24-1 to 24-N and devices 22-1 to 22-N, and deliver the data to the encryption processing units 232-1 to 232-N. The encryption processing units 232-1 to 232-N encrypt output (write) data and decrypt input (read) data by using the distributed encryption key.
    Type: Grant
    Filed: May 19, 2008
    Date of Patent: October 4, 2016
    Assignee: NEC CORPORATION
    Inventors: Masayuki Nakae, Takayuki Sasaki
  • Patent number: 9417875
    Abstract: One embodiment of the present invention sets forth a technique for performing aggregation operations across multiple threads that execute independently. Aggregation is specified as part of a barrier synchronization or barrier arrival instruction, where in addition to performing the barrier synchronization or arrival, the instruction aggregates (using reduction or scan operations) values supplied by each thread. When a thread executes the barrier aggregation instruction the thread contributes to a scan or reduction result, and waits to execute any more instructions until after all of the threads have executed the barrier aggregation instruction. A reduction result is communicated to each thread after all of the threads have executed the barrier aggregation instruction and a scan result is communicated to each thread as the barrier aggregation instruction is executed by the thread.
    Type: Grant
    Filed: September 12, 2013
    Date of Patent: August 16, 2016
    Assignee: NVIDIA CORPORATION
    Inventors: Brian Fahs, Ming Y. Siu, Brett W. Coon, John R. Nickolls, Lars Nyland
  • Patent number: 9354846
    Abstract: A method, performed by a computer device, may include selecting one or more input and output points in an executable graphical model in a modeling application and simulating the executable graphical model over a plurality of time points. The method may further include generating a time domain response plot for the executable graphical model based on the simulating; obtaining matrices of partial derivatives based no the selected one or more input and output points at particular time points of the plurality of time points; generating a frequency domain response plot for the executable graphical model based on the obtained matrices of partial derivatives; and generating a bidomain simulator user interface, the bidomain simulator user interface including the generated time domain response plot and the generated frequency domain response plot.
    Type: Grant
    Filed: October 15, 2012
    Date of Patent: May 31, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Fu Zhang, Zhi Han, Murali K. Yeddanapudi, Pieter J. Mosterman
  • Patent number: 9292317
    Abstract: A method for providing a cloud environment for provisioning a guest virtual machine instance. The method includes selecting at least one machine from a collection of machines as a management node, wherein the at least one machine includes a hypervisor enabled with nested virtualization capability, deploying a plurality of cloud managers on each management node, selecting at least one machine from the collection of machines as a host node, deploying a plurality of level two hypervisors on each host node, forming a plurality of virtual clouds, wherein each virtual cloud contains at least one of the plurality of cloud managers and one of the plurality of level two hypervisors, and provisioning, via the at least one cloud manager, at least one guest virtual machine instance on top of the at least one level two hypervisors.
    Type: Grant
    Filed: September 13, 2012
    Date of Patent: March 22, 2016
    Assignee: International Business Machines Corporation
    Inventors: Han Chen, Hui Lei, Zhe Zhang
  • Patent number: 9292316
    Abstract: A system and an article of manufacture for providing a cloud environment for provisioning a guest virtual machine instance include selecting at least one machine from a collection of machines as a management node, wherein the at least one machine includes a hypervisor enabled with nested virtualization capability, deploying a plurality of cloud managers on each management node, selecting at least one machine from the collection of machines as a host node, deploying a plurality of level two hypervisors on each host node, forming a plurality of virtual clouds, wherein each virtual cloud contains at least one of the plurality of cloud managers and one of the plurality of level two hypervisors, and provisioning, via the at least one cloud manager, at least one guest virtual machine instance on top of the at least one level two hypervisors.
    Type: Grant
    Filed: March 1, 2012
    Date of Patent: March 22, 2016
    Assignee: International Business Machines Corporation
    Inventors: Han Chen, Hui Lei, Zhe Zhang
  • Patent number: 9274928
    Abstract: A code verification tool verifies that code generated from a model represents all of the functionality of the model and does not contain any unintended functionality. The code verification tool may receive for examination a model or an intermediate representation (IR) of the model and the generated code or an intermediate representation of the generated code. The code verification tool may create further intermediate representations of the model and/or the generated code in order to compare the functionality presented in both.
    Type: Grant
    Filed: March 31, 2014
    Date of Patent: March 1, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Mirko Conrad, Joel Thornton, Peter S. Szpak, Xiaocang Lin
  • Patent number: 9250881
    Abstract: An object has an unresolved symbol corresponding with a direct first function call in a first module of the object. A loader receives a request to resolve the symbol and identifies a callee function called by the first function call, identifies a second module in which the callee function is located, and determines whether the function call corresponds with one or more properties of two or more properties. The loader returns a first callee function entry point associated with a first property when the first function call has the first property. The loader returns a second callee function entry point associated with a second property when the first function call has the second property. The first and second callee function entry points are for storing in a program linkage table. The request can be received when the first function call is first invoked or when the first module is loaded.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: February 2, 2016
    Assignee: International Business Machines Corporation
    Inventors: Michael K. Gschwind, Ulrich Weigand
  • Patent number: 9235398
    Abstract: Method, system, and programs for providing development of applications that are interoperable across different device platforms. Application parameters of an application are defined allowing the application to be executable on a plurality of device platforms. A framework is applied to the application facilitating transportable code between a client device and a server to execute the application. The application is deployed so that it may be served to a client device.
    Type: Grant
    Filed: April 2, 2012
    Date of Patent: January 12, 2016
    Assignee: YAHOO! INC.
    Inventors: Bruno Fernandez-Ruiz, Daryl Mun-Kid Low, Martin F. N. Cooper