Emulation Patents (Class 717/138)
  • 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: 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: 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: 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
  • Patent number: 9235337
    Abstract: A system, a GUI and a method are provided that allow intuitive, flexible and robust editing of individually editable instructions generated by conversion operations applied to a defined step-and-repeat programming element in a machine vision inspection system. The method includes: a) Converting a defined step-and-repeat programming element to generate N independently-editable code blocks including an independently-editable substantial replication of a repeated operation block of the step-and-repeat element, each of code blocks executed at a respective location corresponding to a step and repeat location; b) Representing the code blocks in an editing GUI; and c) Eliminating the defined step-and-repeat programming element as an editable element. The defined step-and-repeat programming element may be represented in the editing GUI. The conversion operations may be initiated by a user activating a step and repeat conversion command directed to the defined step-and-repeat programming element.
    Type: Grant
    Filed: May 9, 2013
    Date of Patent: January 12, 2016
    Assignee: Mitutoyo Corporation
    Inventors: Ryan Northrup, Barry Saylor
  • Patent number: 9223599
    Abstract: A method of executing a cross-platform application on a system is disclosed. An instruction pertaining to an execution of the cross-platform application on the system is received. Based on a determination that the instruction pertains to a rendering of an element of a user interface of the cross-platform application on the system, the instruction is sent across a bridge to an engine executing in the native layer to process the instruction at the native layer. Alternatively, based on a determination that the instruction does not pertain to a rendering of the element of the user interface of the cross-platform application on the system, the instruction is sent to an engine executing in the cross-platform layer of the system to process the instruction at the cross-platform layer.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: December 29, 2015
    Assignee: Zynga Inc.
    Inventors: Dan Racanelli, Ian Dunn, Robert Aaron Jones
  • Patent number: 9223553
    Abstract: Methods, apparatus, systems and articles of manufacture are disclosed to validate translated guest code in a dynamic binary translator. An example apparatus disclosed herein includes a translator to generate a first translation of code to execute on a host machine, the first translation of the guest code to facilitate creating a first translated guest code, and the translator to generate a second translation of the translated guest code to execute on the host machine. The example apparatus also includes a translation versions manager to identify a first host machine state based on executing a portion of the first translation, and the translation versions manager to identify a second host machine state based on executing a portion of the second translation. The example system also includes a validator to determine a state divergence status of the second translation based on a comparison between the first host machine state and the second host machine state.
    Type: Grant
    Filed: September 26, 2013
    Date of Patent: December 29, 2015
    Assignee: INTEL CORPORATION
    Inventors: Girish Venkatasubramanian, Chaitanya Mangla, Gerolf F. Hoflehner, Ethan Schuchman
  • Patent number: 9207912
    Abstract: In an illustrative embodiment, an apparatus, computer-readable media, or method may be configured to suggest determine relationships. Interaction with a block diagram model may include receiving a first portion of a block diagram model. The block diagram model may include a plurality of blocks. Each of the plurality of blocks may represent a set of dynamic equations. The interacting may be performed using the computer. Relationships between a plurality of a synthesized input, a synthesized output, a synthesized state, or a synthesized derivative, may be determined. A determination may be performed for the first portion of the block diagram model. The determining may include determining a block Jacobian pattern of relationships between two or more of an input, an output, a state, or a derivative of a first block of the plurality of blocks in the graphical model.
    Type: Grant
    Filed: December 11, 2014
    Date of Patent: December 8, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Fu Zhang, Zhi Han, Murali K. Yeddanapudi, Pieter J. Mosterman
  • Patent number: 9189427
    Abstract: A system and method for providing cost-effective policy-based data archiving triggered by end-user activity. When an end-user makes a request to store data, the storage device communicates with a storage policy rules software engine. The storage policy rules software engine compares the user activity to a set of previously established rules and then invokes a translation software engine to translate the intended actions into instructions specific for a particular data archiving product in order for that application to archive data as intended.
    Type: Grant
    Filed: October 29, 2009
    Date of Patent: November 17, 2015
    Inventor: Bruce Backa
  • Patent number: 9134969
    Abstract: Systems and methods are provided for generating a plurality of applications of disparate types. A graphical user interface is provided for designing an interactive user experience, where a designed user experience includes an arrangement of experience elements, where the experience elements include a plurality interactive elements and decorative elements, and where each of the experience elements are configured for display according to one or more attributes. An identification of the experience elements and the attributes of the experience elements is received via the graphical user interface. An identification of a plurality of disparate types of applications to be generated based on the designed experience is received. The experience is translated for each of the disparate types of applications to generate the plurality of applications of disparate types.
    Type: Grant
    Filed: December 4, 2012
    Date of Patent: September 15, 2015
    Assignee: IPAR, LLC
    Inventors: Jeffrey D. Brandstetter, Joseph L. Spears
  • Patent number: 9116729
    Abstract: A processor includes a processor core to execute a first translated instruction translated from a first instruction stored in first page of a memory. The processor also includes a translation indicator agent (XTBA) to store a first translation indicator that is read from a physical map (PhysMap) in the memory. In an embodiment, the first translation indicator is to indicate whether the first page has been modified after the first instruction is translated. Other embodiments are described as claimed.
    Type: Grant
    Filed: December 27, 2012
    Date of Patent: August 25, 2015
    Assignee: Intel Corporation
    Inventors: Nirajan L. Cooray, David Keppel, Naveen Kumar, Ori Lempel, Michael Neilly, Naveen Neelakantam, H. Peter Anvin, Sebastian Winkel
  • Patent number: 9081588
    Abstract: Aspects of the invention are directed towards profiling computer programs that include interpreted functions. Various implementations provide for profiling a computer program, written in a first programming language, which includes an interpretive function that can execute a computer program, written in a second programming language. During profiling, when the interpretive function is called, the functions of the computer program written in the second programming languages are profiled.
    Type: Grant
    Filed: January 31, 2013
    Date of Patent: July 14, 2015
    Assignee: Mentor Graphics Corporation
    Inventor: Brian Griffin
  • Patent number: 9058199
    Abstract: A method for fast migrating of a source virtual machine located on a source host to one or more destination hosts is provided. A source migration manager receives an identity of a destination host. The source migration manager copies at least one data segment corresponding to a portion of a state of a source virtual machine to the destination host. The source migration manager remains in a warm-up phase and continues copying data segments corresponding to the state of the source virtual machine to the destination host, even if the entire state of the source virtual machine has been copied to the destination host. The source migration manager receives a command to migrate the source virtual machine to the destination host after copying the at least one data segment to the destination host. If a warm-up exit condition has been attained, the source migration manager exits the warm-up migration phase.
    Type: Grant
    Filed: May 31, 2012
    Date of Patent: June 16, 2015
    Assignee: Red Hat Israel, Ltd.
    Inventor: Michael Tsirkin
  • Patent number: 9043194
    Abstract: A method (and system) of emulation in a multiprocessor system, includes performing an emulation in which a host multiprocessing system of the multiprocessor system supports a weak consistency model, and the target multiprocessing system of the multiprocessor system supports a strong consistency model.
    Type: Grant
    Filed: September 17, 2002
    Date of Patent: May 26, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ravi Nair, John Kevin O'Brien, Kathryn Mary O'Brien, Peter Howland Oden, Daniel Arthur Prener
  • Patent number: 9021452
    Abstract: Systems and methods for demonstrating a replacement information management software for a computing system. The methods may include determining if existing information management software is installed in the computing system. The methods may include identifying computing devices of the computing system using information from the existing information management software. The methods may include simulating the replacement information management software with characteristics of the identified computing devices to enable a user to experience the replacement information management software prior to committing to installing the replacement information management software in the computing system. The methods may include automatically installing the replacement information management software. Other implementations are disclosed.
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: April 28, 2015
    Assignee: CommVault Systems, Inc.
    Inventor: Sanjay Harakhchand Kripalani
  • Patent number: 9021465
    Abstract: A method and system for providing guest software updates to a host computer system. The hypervisor in the host computer system downloads an update to guest software that runs on a virtual machine associated with the hypervisor. The hypervisor determines the content of the update to be sent to the virtual machine. The hypervisor then sends the content of the update to the virtual machine via a dedicated channel between the hypervisor and the virtual machine. Thus, a guest without external networking or even no network stack can be updated.
    Type: Grant
    Filed: December 15, 2010
    Date of Patent: April 28, 2015
    Assignee: Red Hat Israel, Ltd.
    Inventor: Dor Laor
  • Patent number: 8997066
    Abstract: The present invention extends to methods, systems, and computer program products for emulating pointers. Pointers can be emulated by replacing the pointers with a <variable#, offset> pair and replacing each dereference site with a switch on the tag and a switch body that executes the emulated pointer access on the corresponding variable the pointer points to. Data flow optimizations can be used to reduce the number of switches and/or reduce the number of cases which need be considered at each emulated pointer access sites.
    Type: Grant
    Filed: December 27, 2010
    Date of Patent: March 31, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yosseff Levanoni, Weirong Zhu, Lingli Zhang, John Lee Rapp, Andrew L. Bliss
  • Patent number: 8983935
    Abstract: A method, computer readable medium and apparatus that utilize a JavaScript emulator in a proxy server to create and store an object model of a web page which has one or more JavaScript instruction sets. At least one of the one or more JavaScript instruction sets are extracted from the web page and a JavaScript field identifier is inserted into the web page to optimize the web page which is then provided.
    Type: Grant
    Filed: June 11, 2010
    Date of Patent: March 17, 2015
    Assignee: Usablenet Inc.
    Inventor: Enrico Scoda
  • Patent number: 8966458
    Abstract: A virtual machine can be extended to be aware of secondary cores and specific capabilities of the secondary cores. If a unit of platform-independent code (e.g., a function, a method, a package, a library, etc.) is more suitable to be run on a secondary core, the primary core can package the unit of platform-independent code (“code unit”) and associated data according to the ISA of the secondary core. The primary core can then offload the code unit to an interpreter associated with the secondary core to execute the code unit.
    Type: Grant
    Filed: May 7, 2013
    Date of Patent: February 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Nobuhiro Asai, Andrew B. Cornwall, Rajan Raman, Akira Saitoh, Ravi Shah
  • Patent number: 8966312
    Abstract: A method or apparatus detects a memory corruption of at least one portion of memory during run-time and corrects the memory corruption of the at least one portion of memory by replacing the at least one portion of memory with a backup of the at least one portion of memory. In this way, memory corruption can be corrected in a timely fashion while minimizing security risks.
    Type: Grant
    Filed: August 9, 2013
    Date of Patent: February 24, 2015
    Assignee: Virsec Systems, Inc.
    Inventors: Satya V. Gupta, Prashant Shenoy
  • Patent number: 8953218
    Abstract: A method and apparatus for extending LCDS imaging data stream imaging capabilities. An imaging data stream can be modified to permit the imaging data stream to implement at least one full-color call for rendering full-color forms and full-color jobs via at least one rendering device within a rendering system. This can be accomplished by creating and associating at least one full-color extension with a syntax of the imaging data stream in order to implement the at least one full-color call in an extensible set of color spaces, and also compactly decoding, storing indexing and searching the at least one full-color call within a particular job. In addition, an LCDS imaging data stream can be modified to provide an image substitution pathway to permit at least one full-color image included in said LCDS imaging data stream to be substituted for monochrome images or highlight color images.
    Type: Grant
    Filed: November 14, 2006
    Date of Patent: February 10, 2015
    Assignee: Xerox Corporation
    Inventors: George Kenneth Hartupee, Jr., Hayley H. Yau
  • Patent number: 8935677
    Abstract: Systems and methods for automatically reverse engineering an input data format using dynamic data flow analysis. Combining input data with a simulated execution of the binary program using the input data and analyzing the use of the data by the program to generate a BNL-like grammar representing the input data format. The input data can be application level protocols, network protocols or formatted files.
    Type: Grant
    Filed: April 7, 2008
    Date of Patent: January 13, 2015
    Assignee: Microsoft Corporation
    Inventors: Weidong Cui, Marcus Peinado, Karl Chen, Jiahe Helen Wang, Luis Irun-Briz
  • Patent number: 8930918
    Abstract: The present invention relates to a field of evaluating the performance of a Structure Query Language (SQL) in information system. In particular, the invention proposes system and method of integration of a tool in Software Development Life Cycle (SDLC) which assures performance of SQL by estimating an execution time and remote installation of the same in a cloud based testing services. So, it can be used to detect the queries which may not perform well in the production environment.
    Type: Grant
    Filed: May 18, 2011
    Date of Patent: January 6, 2015
    Assignee: Tata Consultancy Services Limited
    Inventor: Dattatraya Mohan Tendulkar
  • Patent number: 8930599
    Abstract: A data transmission system and method are provided. The data transmission method receives a second format data packet sent by a host; decodes the second format data packet sent by the host, and translating the decoded second format data packet into a first format data packet; transmits the first format data packet to a first device; receives a transmission response sent by the first device in response to the first format data packet, determines whether to transmit the transmission response to the host, and performs a re-try flow when the transmission response does not need to be transmitted to the host. Preferably, a data transmission rate of the first device is slower than that of a second device, and the data transmission system is backward compatible to the first device, and the second format data packet is consistent with the second device.
    Type: Grant
    Filed: October 8, 2013
    Date of Patent: January 6, 2015
    Assignee: Via Technologies, Inc.
    Inventors: Jiin Lai, Buheng Xu, Jinkuan Tang
  • Patent number: 8898051
    Abstract: A system and method for selectively capturing and storing emulation data results from a hardware emulation system, which reduces the data bandwidth requirement and the unnecessary consumption of the DRAM memory capacity by uninteresting data. According to one embodiment, a system comprises a trace array for storing one or more frames of data; a first set of hardware control bits that enables the trace array to selectively capture non-continuous windows of data within a frame of data; a data capture card; and a second set of hardware control bits that enables the data capture card to capture a select frame of data from the one or more frames of data stored on the trace array.
    Type: Grant
    Filed: June 11, 2010
    Date of Patent: November 25, 2014
    Assignee: Cadence Design Systems, Inc.
    Inventors: Arthur Perry Sarkisian, Jingbo Gao, Tsair-Chin Lin
  • Patent number: 8862729
    Abstract: A computer implemented method, system, and/or computer program product manages capacity in a service-provider system. A software model of a physical service-provider system is created and stored in memory. A parameter for running the software model with real-time metrics from the physical service-provider system as inputs to the software model is established. If the parameter is met, then the software model is run using the real-time metrics from the physical service-provider system as inputs. A pre-determined action, which adjusts policies for, and capacity in, the service-provider system and is prescribed by a specific model output, is established. If the specific model output, which resulted from using the real-time metrics from the physical service-provider system as inputs for running the software model, is output from the software model, then the pre-determined action is executed.
    Type: Grant
    Filed: October 21, 2013
    Date of Patent: October 14, 2014
    Assignee: International Business Machines Corporation
    Inventor: John A. Ricketts
  • Patent number: 8863113
    Abstract: A method and system for an unattended installation of any type of a guest operating system (GOS) on a Virtual Machine (VM), or a nested VM. Proposed method and system allow users to create an executable script, which provides automation of any GOS or application installation on the VM. User actions, such as mouse clicks, gestures, touch commands and keyboard strokes, performed during GOS/application installation are recorded. The delays, time periods between clicks and strokes are recorded as well. All of this information is incorporated into an executable script. The script, when executed, simulates/reproduces GOS/application action sequence. This sequence reflects the behavior of GOS/application itself executed on a VM.
    Type: Grant
    Filed: November 6, 2012
    Date of Patent: October 14, 2014
    Assignee: Parallels IP Holdings GmbH
    Inventors: Elena A. Koryakina, Alexey B. Koryakin, Nikolay N. Dobrovolskiy, Alexander G. Tormasov, Serguei M. Beloussov
  • Patent number: 8850410
    Abstract: A system and method for improving software maintainability, performance, and/or security by associating a unique marker to each software code-block; the system comprising of a plurality of processors, a plurality of code-blocks, and a marker associated with each code-block. The system may also include a special hardware register (code-block marker hardware register) in each processor for identifying the markers of the code-blocks executed by the processor, without changing any of the plurality of code-blocks.
    Type: Grant
    Filed: January 29, 2010
    Date of Patent: September 30, 2014
    Assignee: International Business Machines Corporation
    Inventors: Ramanjaneya S. Burugula, Joefon Jann, Pratap C. Pattnaik