Emulation Patents (Class 717/138)
  • Patent number: 8843905
    Abstract: The present invention transmits upgrade information as appropriate from a server apparatus to one or more manufacturing apparatuses for performing a predetermined semiconductor process on processing target substrates. A server apparatus is provided with an upgrade information receiving portion that receives upgrade information, which is information for upgrading an execution software program for controlling the manufacturing apparatus; a state information storage portion in which state information, which is information relating to a state of the manufacturing apparatus, is stored; a transmission judging portion that judges whether or not to transmit the upgrade information to the manufacturing apparatus, using the state information; and a transmitting portion that transmits the upgrade information to the manufacturing apparatus to which the transmission judging portion has judged to transmit the upgrade information.
    Type: Grant
    Filed: November 1, 2007
    Date of Patent: September 23, 2014
    Assignee: Tokyo Electron Limited
    Inventors: Kohei Nara, Toshihiko Kanno
  • Publication number: 20140258993
    Abstract: In accordance with embodiments of the present disclosure, an information handling system comprising may include a processor, a memory communicatively coupled to the processor and having stored thereon a program of instructions. The instructions may be configured to, when read and executed by the processor: (i) receive user interface elements of content for displaying a web site; (ii) receive parameters associated with a client device; and (iii) based on the parameters, generate an application comprising one or more instructions, the one or more instructions of the application for emulating the user interface elements on the client device.
    Type: Application
    Filed: March 7, 2013
    Publication date: September 11, 2014
    Applicant: DELL PRODUCTS L.P.
    Inventors: Charla Kunkel, Jay McLain, Vidya Kuram
  • Patent number: 8826245
    Abstract: A method, system and program product for optimizing emulation of a suspected malware. The method includes identifying, using an emulation optimizer tool, whether an instruction in a suspected malware being emulated by an emulation engine in a virtual environment signifies a long loop and, if so, generating a first hash for the loop. Further, the method includes ascertaining whether the first hash generated matches any long loop entries in a storage and, if so calculating a second hash for the long loop. Furthermore, the method includes inspecting any long loop entries ascertained to find an entry having a respective second hash matching the second hash calculated. If an entry matching the second hash calculated is found, the method further includes updating one or more states of the emulation engine, such that, execution of the long loop of the suspected malware is skipped, which optimizes emulation of the suspected malware.
    Type: Grant
    Filed: May 23, 2013
    Date of Patent: September 2, 2014
    Assignee: International Business Machines Corporation
    Inventor: Ji Yan Wu
  • Patent number: 8813044
    Abstract: A method, system, and article of manufacture are disclosed for transforming a definition of a process for delivering a service. This service process definition is comprised of computer readable code. The method comprises the steps of expressing a given set of assumptions in a computer readable code; and transforming said process definition by using a processing unit to apply said assumptions to said process definition to change the configuration of the process definition. The process definition may be transformed by using factors relating to the specific context in or for which the process definition is executed. Also, the process definition may be transformed by identifying, in a flow diagram for the service process definition, flows to which the assumptions apply, and applying program rewriting techniques to those identified flows.
    Type: Grant
    Filed: September 6, 2012
    Date of Patent: August 19, 2014
    Assignee: International Business Machines Corporation
    Inventors: David F. Bantz, Steven J. Mastrianni, James R. Moulic, Dennis G. Shea
  • Patent number: 8799862
    Abstract: Various exemplary embodiments relate to a method and related network node including one or more of the following: determining, by the session establishment node, that a session should be established for the developer; transmitting, to a sandbox server, an instruction to establish a sandbox for the session; transmitting to the sandbox server, an identification of an emulator associated with the session; and notifying the developer when the sandbox is available for use. Various exemplary embodiments relate to a method and related network node including one or more of the following: receiving, by the sandbox server, an instruction to establish a sandbox; establishing the sandbox on the sandbox server; and instantiating a device emulator on the sandbox.
    Type: Grant
    Filed: June 24, 2011
    Date of Patent: August 5, 2014
    Assignee: Alcatel Lucent
    Inventor: Kevin S. Adamson
  • Patent number: 8793240
    Abstract: After receipt of an instruction (e.g. a database statement), one or more computers specialize an interpreter with the received instruction as constant, to obtain a specialized interpreter that is stored in memory and/or disk. The specialized interpreter is then invoked to execute the received instruction. Depending on the embodiment, the interpreter being specialized may additionally be received and used in binary form without specialization. Specifically, in some embodiments, an identical interpreter is received in two forms: in a binary language specific to the one or more computers and also in a language that is acceptable to a specializer, such as a source language or an intermediate language. The interpreter in the binary language is invoked by default unless a predetermined condition for specialization is met. When the predetermined condition is met, the interpreter in the specializer-acceptable language is specialized by the specializer, and then the specialized interpreter is invoked.
    Type: Grant
    Filed: August 26, 2011
    Date of Patent: July 29, 2014
    Assignee: Oracle International Corporation
    Inventors: Dmitry M. Potapov, Dmitri Bronnikov
  • Patent number: 8786583
    Abstract: A method and system for a software driver of a graphics controller to work with a display codec. The software driver may be configured to work with different display codecs at different periods of time while using a default configuration. Other embodiments are also described.
    Type: Grant
    Filed: June 19, 2013
    Date of Patent: July 22, 2014
    Assignee: Intel Corporation
    Inventors: Mike S. Choi, Robert M. Fosha, Scott R. Janus, Aaron F. Leatherman, Scott M. Rowe, Wade M. Thompson
  • Publication number: 20140201724
    Abstract: Systems and methods which provide platform sensitive application characteristics with respect to multi-platform applications are shown. As application aspects are developed in the application, embodiments include platform sensitivity characteristics for the application aspects in the application to provide for adaptation of application characteristics for multiple platforms. Embodiments provide an application runtime environment which, although independently defining its own user interface rendering attributes, operates to adjust application characteristics in accordance with a host platform. As application aspects of a multi-platform application are to be executed, if there are relevant cross platform differences, application aspect characteristics are adjusted so as to be appropriate to the host platform. The appropriately adjusted aspects are executed to thereby provide platform sensitive application characteristics with respect to the multi-platform application.
    Type: Application
    Filed: December 18, 2008
    Publication date: July 17, 2014
    Applicant: Adobe Systems Incorporated
    Inventor: Dave Nelson
  • Patent number: 8769507
    Abstract: A method, system, and article of manufacture are disclosed for transforming a definition of a process for delivering a service on a specified computing device. This service process definition is comprised of computer readable code. The method comprises the steps of expressing a given set of assumptions in a computer readable code; and transforming the definition by using a processing unit to apply the assumptions to the definition of the process to change the way in which the process operates. The definition of the process may be transformed by using factors relating to the specific context in or for which the definition is executed. Also, the definition may be transformed by identifying, in a flow diagram for the process, flows to which the assumptions apply, and applying program rewriting techniques to those identified flows.
    Type: Grant
    Filed: May 14, 2009
    Date of Patent: July 1, 2014
    Assignee: International Business Machines Corporation
    Inventors: David F. Bantz, Steven J. Mastrianni, James R. Moulic, Dennis G. Shea
  • Patent number: 8762964
    Abstract: In one embodiment, a method comprises receiving an application that describes functions according to a prescribed symbol manipulation language, the prescribed symbol manipulation language a non-Turing complete language that does not permit partial functions and describes the functions independent of any attribute of any computing system; identifying, in the application, a distribution annotation that identifies a candidate element in the application, the candidate element configured for execution in a distributed computing operation by a distributed computing system comprising two or more distributed computing devices; generating one or more variants of the application based on executing a nondestructive transformation of the application relative to prescribed equality axioms, at least one of the variants containing a corresponding semantically-equivalent variation of the candidate element; and selecting one of the variants as an optimization for execution of the application by the distributed computing syste
    Type: Grant
    Filed: December 17, 2010
    Date of Patent: June 24, 2014
    Assignee: Cisco Technology, Inc.
    Inventors: Bryan Turner, Billy Gayle Moon
  • Patent number: 8762965
    Abstract: An information processing system includes a preparation machine with an installed image; an execution machine on which the installed image is virtually installed; and a virtualizer for virtualizing the installed image on the execution machine to produce a virtually installed image by using a hierarchy of selective virtualizers, wherein the virtualizing is selective such that not all operations of the executing software of the installed image at any particular level are virtualized.
    Type: Grant
    Filed: August 31, 2012
    Date of Patent: June 24, 2014
    Assignee: International Business Machines Corporation
    Inventors: Bowen L. Alpern, Joshua S. Auerbach, Vasanth Bala, Thomas V. Frauenhofer, Jobi George, Todd W. Mummert, Michael A. Pigott
  • Patent number: 8745601
    Abstract: Methods and systems for creating and using data structures for operating systems. In one embodiment, a method includes receiving information indicating that a first installer is being launched for a first application program and storing, in response to the receiving of the information, first data which specifies changes to an operating system (OS) data structure that is used to configure a system to allow execution of the first application program after installing the first application program, the first data being stored separately from the OS data structure. The OS data structure may be, in one embodiment, a registry for configuring a system to execute multiple applications on the system.
    Type: Grant
    Filed: July 17, 2008
    Date of Patent: June 3, 2014
    Assignee: Apple Inc.
    Inventors: Eric O. Carlson, Joshua H. Shaffer, James Mensch
  • Patent number: 8736856
    Abstract: A method of executing an additional extended feature of an image forming apparatus, includes receiving an application from an external storage medium, the application corresponding to the additional extended feature, installing the received application using one operating system of the plurality of operating systems, selecting the additional extended feature from a menu showing at least one application installed in the image forming apparatus, and executing an application corresponding to the selected additional extended feature using an operating system corresponding to the selected additional extended feature.
    Type: Grant
    Filed: December 9, 2010
    Date of Patent: May 27, 2014
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Hyung-sik Byun, Cheol-yon Won
  • Patent number: 8713546
    Abstract: A system and method for redundant array copy removal in a virtual machine (VM), or other runtime environment, and particularly for use in a system that includes a Java Virtual Machine (JVM). In pointer free languages array copy operations are common and time consuming. Embodiments of the present invention enable the compiler to detect situations where the compiled code can safely use the source array as the destination array without performing any copy operation. By avoiding array copy operations, the performance of the application is improved.
    Type: Grant
    Filed: December 11, 2007
    Date of Patent: April 29, 2014
    Assignee: Oracle International Corporation
    Inventor: Marcus Lagergren
  • Patent number: 8694973
    Abstract: Methods and systems for executing a code stream of non-native binary code on a computing system are disclosed. One method includes parsing the code stream to detect a plurality of elements including one or more branch destinations, and traversing the code stream to detect a plurality of non-native operators. The method also includes executing a pattern matching algorithm against the plurality of non-native operators to find combinations of two or more non-native operators that do not span across a detected branch destination and that correspond to one or more target operators executable by the computing system. The method further includes generating a second code stream executable on the computing system including the one or more target operators.
    Type: Grant
    Filed: September 27, 2011
    Date of Patent: April 8, 2014
    Assignee: Unisys Corporation
    Inventor: Andrew Ward Beale
  • Patent number: 8677329
    Abstract: A method and an apparatus that instructs a compiler server to build or otherwise obtain a compiled code corresponding to a compilation request received from an application are described. The compiler server may be configured to compile source codes for a plurality of independent applications, each running in a separate process, using a plurality of independent compilers, each running in a separate compiler process. A search may be performed in a cache for a compiled code that satisfies a compilation request received from an application. A reply message including the compiled code can be provided for the application, wherein the compiled code is compiled in direct response to the request, or is obtained from the cache if the search identifies in the cache the compiled code that satisfies the compilation request.
    Type: Grant
    Filed: June 3, 2009
    Date of Patent: March 18, 2014
    Assignee: Apple Inc.
    Inventors: Robert Beretta, Nicholas William Burns, Nathaniel Begeman, Phillip Kent Miller, Geoffrey Grant Stahl
  • Patent number: 8671319
    Abstract: An operating system independent JTAG debugging system implemented to run in a web browser. The software executing in the browser identifies the JTAG enabled components in the target system that is to be tested, and automatically downloads the latest versions of the appropriate software, JTAG drivers and configuration information from a test server.
    Type: Grant
    Filed: June 19, 2012
    Date of Patent: March 11, 2014
    Assignee: Texas Instruments Incorporated
    Inventors: Stephen Yee Shun Lau, Vikas Varshney
  • Patent number: 8661420
    Abstract: The present invention provides methods, machine readable memories and systems for versioning plugin adapters for servers so as to allow legacy versions of software plugins to function when the interfaces configured to accept the plugins are upgraded. An adapter resides between a plugin interface and the plugin module and converts requests designed for a current or new version to requests designed for legacy versions. In some embodiments, the interface elements are designed to extend and adapt the functionality of a security apparatus by enabling the security apparatus to utilize third party security providers.
    Type: Grant
    Filed: August 3, 2005
    Date of Patent: February 25, 2014
    Assignee: Oracle International Corporation
    Inventor: Neil Smithline
  • Patent number: 8661303
    Abstract: An operating system independent JTAG debugging system implemented to run in a web browser. The software executing in the browser identifies the JTAG enabled components in the target system that is to be tested and automatically downloads the latest versions of the appropriate software and drivers from a test server database, together with any applicable patches and software updates.
    Type: Grant
    Filed: June 19, 2012
    Date of Patent: February 25, 2014
    Assignee: Texas Instruments Incorporated
    Inventors: Stephen Yee Shun Lau, Vikas Varshney
  • Patent number: 8656074
    Abstract: A data transmission system is provided. The data transmission system includes a first control circuit coupled to a first device, a translation circuit coupled to the first control circuit and a second control circuit coupled to the translation circuit. The first control circuit decodes a first format data packet sent by the first device. The translation circuit receives the decoded first format data packet and translates the decoded first format data packet into a second format data packet. The second control circuit transmits the second format data packet to a host. 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.
    Type: Grant
    Filed: August 24, 2010
    Date of Patent: February 18, 2014
    Assignee: Via Technologies, Inc.
    Inventors: Jiin Lai, Buheng Xu, Jinkuan Tang
  • Patent number: 8621444
    Abstract: Methods for simulating an instruction set architecture (ISA) with a instruction set simulator (ISS) are provided. One exemplary embodiment of the methods includes fetching a first decoded instruction during a run time, where the decoded instruction is decoded from an original instruction in a target application program during a compile time preceding the run time. The decoded instruction can designate a template configured to implement the functionality of the original instruction. The method also preferably includes determining whether the fetched instruction is modified from the original instruction and then executing the designated template if the instruction was not modified. The method can also include decoding the original instruction during the compile time by selecting a template corresponding to the original instruction and then customizing the template based on the data in original instruction. The method can also include optimizing the customized template during the compile time.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: December 31, 2013
    Assignee: The Regents of the University of California
    Inventors: Nikil Dutt, Mohammad H. Reshadi
  • Patent number: 8621445
    Abstract: A system comprises a media framework component graph, a first media framework, a second media framework, and a media framework translator. The media framework component graph comprises one or more components. The one or more components are coupled with the first media framework. The first media framework is designed to run the media framework component graph. The media framework translator enables the first media framework and the media framework component graph to both function as a component for the second media framework.
    Type: Grant
    Filed: December 6, 2010
    Date of Patent: December 31, 2013
    Assignee: VisualOn, Inc.
    Inventors: Jin Bangfei, Chin-Yee Lin
  • Patent number: 8612578
    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 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: March 10, 2011
    Date of Patent: December 17, 2013
    Assignee: International Business Machines Corporation
    Inventor: John A. Ricketts
  • Patent number: 8600727
    Abstract: Methods and systems are disclosed, including a method for executing a non-native code stream on a computing system. The method includes forming one or more blocks of emulated mode code for execution on a computing system. Each of the one or more blocks includes a preamble and a plurality of operators ordered for execution in a predetermined sequence, wherein for a specified block the preamble defines one or more conditions required for uninterrupted execution of the operators included in the specified block. The method also includes assessing the one or more conditions associated with the specified block, and, after assessing the one or more conditions, executing each of the operators included in the specified block without assessing any of the one or more conditions between execution of the operators within the specified block.
    Type: Grant
    Filed: October 11, 2011
    Date of Patent: December 3, 2013
    Assignee: Unisys Corporation
    Inventors: David Strong, Andrew Ward Beale
  • Patent number: 8601448
    Abstract: An arrangement by which pointers may be represented in a restricted software execution environment that provides access to only reference types but not pointers is realized by modeling both pointers and value type boxing using a set of boxes (i.e., containers) which describe how to retrieve the value associated with the pointer, and emitting code for accessing the set of boxes. A decompiling and recompiling process is utilized in which code arranged to run in an execution environment that supports pointers is scanned to reveal pointer and boxing usage. In one illustrative example, code is responsively emitted to create one or more specific boxes. At runtime in the restricted execution environment, an instance of a box class is created to thus emulate a pointer to the value.
    Type: Grant
    Filed: December 5, 2007
    Date of Patent: December 3, 2013
    Assignee: Microsoft Corporation
    Inventors: Erik Meijer, Jeffrey van Gogh
  • Patent number: 8589143
    Abstract: A virtualization apparatus includes: an emulation manager for searching a basic block cache for an entry with an entry point, and, if there exists no entry with the entry point in the basic block cache, requesting the identification of a basic block corresponding to the entry point; a basic block identifier for identifying the basic block by sequentially analyzing instructions of a source binary in response to a request from the emulation manager; and an instruction replacer for writing an entry of the identified basic block in a replaced instruction table, writing a branch instruction for the entry of the basic block in the source binary, and then branching to the entry point. The apparatus further includes an instruction emulator for executing an instruction of the basic block when a branch to the entry point is made.
    Type: Grant
    Filed: December 16, 2010
    Date of Patent: November 19, 2013
    Assignee: Electronics and Telecommunications Research Institute
    Inventors: Kwang-Won Koh, Kang Ho Kim, Soo Cheol Oh, Ki-Hyuk Nam
  • Patent number: 8578348
    Abstract: A cost oriented profiler (COP) mechanism that analyzes the behavior of input application source code with regard to the software total cost of ownership (TCO). The cost analysis tool provided by the mechanism analyzes the behavior of the source code and generates a cost report with indications as to the portions of the source code that have the most impact on the TCO of the application. Based on simulations and by comparing multiple versions of the source code, the COP mechanism determines if a particular change to the source code will increase or decrease software TCO. Behavior analysis, including static and dynamic analysis of the source code, is used to generate one or more code recommendations to reduce the TCO.
    Type: Grant
    Filed: September 1, 2011
    Date of Patent: November 5, 2013
    Assignee: Code Value Ltd.
    Inventors: Alon Mordechai Fliess, Erez Fliess, Joshua Reuben, Aaron Etchin
  • Patent number: 8572587
    Abstract: A provisioning server can maintain a library of virtual images. The virtual images can be a disk image of software that has been previously installed according to metadata. The metadata can represent parameters utilized to create the virtual image and the parameters required to provision the virtual image on a target machine. The provisioning server can maintain the metadata for a virtual image in a virtual image record associated with the virtual image. The provisioning server can provision a virtual image to one or more target machines. To provision the virtual image, the provisioning server can copy the virtual image to a storage device on the one or more target machines and configure the target machine according to metadata in the associated virtual image record.
    Type: Grant
    Filed: February 27, 2009
    Date of Patent: October 29, 2013
    Assignee: Red Hat, Inc.
    Inventors: Michael Paul DeHaan, Bryan M. Kearney
  • Patent number: 8555250
    Abstract: Analyzing dynamic source code. A method includes accessing a specific metadata format data structure. The data structure was created by obtaining one or more first data structures defining constructs in a body of dynamic language source code. From the one or more first data structures, identifier information is extracted for one or more of the defined constructs. Knowledge about the constructs is augmented. The metadata format data structure is parsed to compute metrics about the metadata format data structure. The metrics about the metadata format data structure are provided to a user.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: October 8, 2013
    Assignee: Microsoft Corporation
    Inventors: Michael C. Fanning, Frederico A. Mameri, Zachary A. Nation
  • Patent number: 8549493
    Abstract: Embodiments of the present invention address deficiencies of the art in respect to MIDlet execution in a desktop environment and provide a method, system and computer program product for clip region definition for a MIDlet region space. In one embodiment of the invention, a method for clip region definition for a MIDlet region space can be provided. The method can include extracting a raster image from a MIDlet, computing a clip region from the extracted raster image for the MIDlet, deploying the MIDlet to a desktop environment through an emulator, and applying the clip region to the MIDlet through the emulator to deploy the MIDlet as a widgetized application in the desktop environment.
    Type: Grant
    Filed: June 19, 2007
    Date of Patent: October 1, 2013
    Assignee: International Business Machines Corporation
    Inventor: Richard Redpath
  • Patent number: 8539459
    Abstract: An individual security program is randomly chosen by way of a respective key and is then packaged with a games program to provide an executable program file which is applied to a storage media, such as an optical disc. Whenever the security program is running, the object code it produces is obfuscated to make it difficult to overcome the protection by identifying and removing the security program. The obfuscated object code is produced by substituting a variable in source code with a function of the variable. When the source code is compiled to produce the object code, the function causes the variable to be presented in the compiled object code as a series of operations.
    Type: Grant
    Filed: August 19, 2004
    Date of Patent: September 17, 2013
    Assignee: Rovi Europe Limited
    Inventors: Alan Walter Stiemens, Martin Clive Gray, Christopher Edward Sulley
  • Patent number: 8533686
    Abstract: Embodiments of the present invention provide a system profiler that can be used on any processor architecture. In particular, instead of copying an entire stack every time, the stack is divided into blocks of a fixed size. For each block, a hash value is computed. As stack blocks are sent out of the kernel, the hash value and a copy of the block contents is kept in a user space cache. In the kernel, the hash codes of sent stack blocks are tracked in a table. During system profiling, the kernel module sampling the call stack determines if that stack block was previously sent by checking for the hash value in the kernel table. If the hash matches an entry in the kernel table, then only the hash value is sent. If the hash value is not in the table, the entire block and the hash value is sent.
    Type: Grant
    Filed: June 14, 2007
    Date of Patent: September 10, 2013
    Assignee: Red Hat, Inc.
    Inventor: Kristian Hoegsberg Kristensen
  • Publication number: 20130227534
    Abstract: A code converter 11 of a simulation apparatus 1 detects, during the execution of a program in a target CPU, an externally dependent instruction affected by the external environment in each of divided blocks, predicts the execution result of the externally dependent instruction, simulates the instruction execution in the predicted result, and generates a host code in which a code for performance simulation is embedded based on the simulation result. A simulation executor 12 performs performance simulation about instruction execution in the prediction result of the program using the host code, and when the execution result of the externally dependent instruction is different from the setting of the prediction result during the execution, corrects the execution time of the instruction in the prediction result using the execution time of instructions executed before and after the instruction, and the like. A simulation information collector 13 collects and outputs performance simulation information.
    Type: Application
    Filed: April 9, 2013
    Publication date: August 29, 2013
    Applicant: FUJITSU LIMITED
    Inventor: Fujitsu Limited
  • Patent number: 8521504
    Abstract: The invention relates to managing registers during a binary translation mode in a virtual computing system. A set of registers is saved to memory before beginning to execute a series of blocks of translated code, and the contents of the set of registers are restored from memory later. A status register is maintained for tracking the status of each register within the set, the status indicating whether the contents are valid and whether the contents are saved in memory. Before the execution of each block, a determination is made as to whether the actions taken within the block relative to the registers are compatible with the current status of the registers. If the actions are not compatible, additional registers are saved to memory or restored from memory, so that the translation block can be executed.
    Type: Grant
    Filed: August 20, 2007
    Date of Patent: August 27, 2013
    Assignee: VMware, Inc.
    Inventors: Xiaoxin Chen, Sahil Rihan
  • Publication number: 20130219376
    Abstract: Systems and methods which provide platform sensitive application characteristics with respect to multi-platform applications are shown. As application aspects are developed in the application, embodiments include platform sensitivity characteristics for the application aspects in the application to provide for adaptation of application characteristics for multiple platforms. Embodiments provide an application runtime environment which, although independently defining its own user interface rendering attributes, operates to adjust application characteristics in accordance with a host platform. As application aspects of a multi-platform application are to be executed, if there are relevant cross platform differences, application aspect characteristics are adjusted so as to be appropriate to the host platform. The appropriately adjusted aspects are executed to thereby provide platform sensitive application characteristics with respect to the multi-platform application.
    Type: Application
    Filed: December 18, 2008
    Publication date: August 22, 2013
    Applicant: Adobe Systems Incorporated
    Inventor: Dave Nelson
  • Patent number: 8510596
    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: July 6, 2007
    Date of Patent: August 13, 2013
    Assignee: Virsec Systems, Inc.
    Inventors: Satya V. Gupta, Prashant Shenoy
  • Patent number: 8495596
    Abstract: A system, method, and computer program product are provided for interfacing an automated operational support system (OSS) with a legacy OSS. In use, a legacy OSS that operates manually at least in part is automated, utilizing an adapter. Furthermore, an automatic OSS is interfaced with the legacy OSS based on the automation, utilizing the adapter.
    Type: Grant
    Filed: February 9, 2009
    Date of Patent: July 23, 2013
    Assignee: Amdocs Software Systems Limited
    Inventor: Mehdi Safavi-Naini
  • Patent number: 8495606
    Abstract: A system performs operations comprising creating a call graph for a program translated from source code, identifying redundant exception handling code in the program utilizing the call graph, and removing the redundant exception handling code. The operation of identifying redundant exception handling code may comprise identifying at least one function or callsite by determining that a first function in the at least one function's or callsite's callee chain throws an exception and that the exception is handled by a second function in the function's or callsite's callee chain or by determining that an exception is not thrown in the at least one function's or callsite's callee chain. The operation of removing the redundant exception handling code may comprise removing redundant exception handling code included in at least one function or callsite and/or removing at least one entry for the at least one function or callsite from an exception lookup table.
    Type: Grant
    Filed: November 14, 2008
    Date of Patent: July 23, 2013
    Assignee: Oracle America, Inc.
    Inventors: Sheldon M. Lobo, Fu-Hwa Wang
  • Patent number: 8493374
    Abstract: A method and system for a software driver of a graphics controller to work with a display codec. The software driver may be configured to work with different display codecs at different periods of time while using a default configuration. Other embodiments are also described.
    Type: Grant
    Filed: June 20, 2012
    Date of Patent: July 23, 2013
    Assignee: Intel Corporation
    Inventors: Mike S. Choi, Robert M. Fosha, Scott R. Janus, Aaron F. Leatherman, Scott M. Rowe, Wade M. Thompson
  • Patent number: 8490073
    Abstract: Tracing within a processing environment is controlled. Trace directives are automatically included within code being compiled in order to control where one or more traces begin and end within the code. The trace directives provide a framework for mapping traces to well understood boundaries of the code.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: July 16, 2013
    Assignee: International Business Machines Corporation
    Inventor: Marcel Mitran
  • Patent number: 8490069
    Abstract: A method for validating a translation of a graphical workflow of activities into an arbitrary, but structured language uses as input a term of a high level graphically expressed language having a number of graphical elements related logically to each other and analyzes its content and/or structure in order to translate this content and/or structure into a structured set of instructions. The graphical workflow of activities is simulated to arrive at a first set of activity results. Each instruction is translated into a generic language in order to trace the execution of such instruction to arrive at a second set of results from the translated instructions. The first set of activity results is compared with the second set of results, and the translation is validated in case of a match among the first set of activity results and the second set of results.
    Type: Grant
    Filed: February 28, 2008
    Date of Patent: July 16, 2013
    Assignee: Siemens Aktiengesellschaft
    Inventor: Marco Solimano
  • Patent number: 8490080
    Abstract: The system and methods of the present application comprise one or more computers that generate and maintain a plurality of software-simulated computers. Each software-simulated computer is adapted to efficiently run an installed application program. Additional security layers provide access to the installed application through a remote user interface installed on a user's computing device. The system generates a new copy of the software-simulated computer for each user session, that prevents configuration problems from interfering with the proper operation of the application program, thereby consistently running the application in an optimized fashion, regardless of changes made to the software-simulated computer by the user or a virus. These software-simulated computers are unaffected by changes a user makes on their own client device. To this end, the system provides robust, web accessible capabilities to application software that may not have been adapted for use on the Internet.
    Type: Grant
    Filed: June 24, 2011
    Date of Patent: July 16, 2013
    Assignee: Applianz Technologies, Inc.
    Inventor: Mark Janzen
  • Patent number: 8479176
    Abstract: Generally, the present disclosure provides a system and method for mapping registers from a system with more registers to a system with fewer registers. Regions may be formed that include one or more blocks of code with relatively frequent register accesses. The most frequently accessed source registers may be mapped to target registers. Each block in the region may be bounded by a prologue and at least one epilogue. The prologue may be configured to implement register mapping and the epilogue(s) may be configured to manage program flow from a block in the region to another block in the region or to a block not in the region.
    Type: Grant
    Filed: June 14, 2010
    Date of Patent: July 2, 2013
    Assignee: Intel Corporation
    Inventors: Guilherme D. Ottoni, Hong Wang, Wei Li
  • Patent number: 8479174
    Abstract: In one aspect, an executable computer file is partitioned into basic blocks of code. At least some basic blocks are translated into translated basic blocks. At least some translated basic blocks are linked in memory of a computer. At least some translated basic blocks on the computer are executed so as to enable the file to be unpacked or decrypted. In this way, the file can be analyzed to determine whether the file is or should be classed as malware. In another aspect, at least a read page of cache memory is created for at least some basic blocks and at least a write page of cache memory is created for at least some basic blocks. During the execution of a basic block, at least one of the read page and the write page is checked for a cached real address corresponding to the virtual address that is being accessed for said basic block.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: July 2, 2013
    Assignee: Prevx Limited
    Inventor: Mihai Chiriac
  • Patent number: 8473931
    Abstract: A method, system and program product for optimizing emulation of a suspected malware. The method includes identifying, using an emulation optimizer tool, whether an instruction in a suspected malware being emulated by an emulation engine in a virtual environment signifies a long loop and, if so, generating a first hash for the loop. Further, the method includes ascertaining whether the first hash generated matches any long loop entries in a storage and, if so calculating a second hash for the long loop. Furthermore, the method includes inspecting any long loop entries ascertained to find an entry having a respective second hash matching the second hash calculated. If an entry matching the second hash calculated is found, the method further includes updating one or more states of the emulation engine, such that, execution of the long loop of the suspected malware is skipped, which optimizes emulation of the suspected malware.
    Type: Grant
    Filed: March 20, 2012
    Date of Patent: June 25, 2013
    Assignee: International Business Machines Corporation
    Inventor: Ji Yan Wu
  • Patent number: 8473930
    Abstract: A method for executing non-native binaries on a host computer architecture comprises receiving the guest executable binary into a computer readable medium. The guest executable binary is executed on the host computer architecture by translating the guest executable binary into a translated executable binary. Each instruction of the translated executed binary is then executed on the host computer architecture. Signals are responded to by placing signal information on a signal queue and deferring signal handling until a safe point is reached. A computer system implementing the method is also provided.
    Type: Grant
    Filed: November 5, 2008
    Date of Patent: June 25, 2013
    Assignee: Oracle America, Inc.
    Inventors: Abhinav Das, Jiwei Lu, William Y. Chen, Chandramouli Banerjee
  • Patent number: 8468506
    Abstract: A method and system are described for generating reference tables in object code which specify the addresses of branches, routines called, and data references used by routines in the code. In a suitably equipped processing system, the reference tables can be passed to a memory management processor which can open the appropriate memory pages to expedite the retrieval of data referenced in the execution pipeline. The disclosed method and system create such reference tables at the beginning of each routine so that the table can be passed to the memory management processor in a suitably equipped processor. Resulting object code also allows processors lacking a suitable memory management processor to skip the reference table, preserving upward compatibility.
    Type: Grant
    Filed: November 8, 2010
    Date of Patent: June 18, 2013
    Assignee: Micron Technology, Inc.
    Inventor: Dean A. Klein
  • Patent number: 8458674
    Abstract: A target computing system performs program code conversion from subject code, executable by a subject computing architecture, into target code executable by the target computing system, and then executes the target code. The target system handles exceptions during binding to native code. Native code binding executes a portion of native code in place of translating a portion of the subject code into the target code. Upon an exception during execution of the portion of native code, the target system saves a target state representing a current point of execution for the portion of native code, and creates a subject state representing an emulated point of execution in the subject architecture. A subject exception handler handles the exception with reference to the subject state. Upon resuming execution from the exception using the subject state, the saved target state is restored to resume execution in the section of portion of native code.
    Type: Grant
    Filed: June 19, 2007
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: Gavin Barraclough, Kit Man Wan, Abdul Rahman Hummaida
  • Patent number: 8458682
    Abstract: System and method for converting a class oriented data flow program to a structure oriented data flow program. A first data flow program is received, where the first data flow program is an object oriented program comprising instances of one or more classes, and wherein the first data flow program is executable to perform a first function. The first data flow program is automatically converted to a second data flow program, where the second data flow program does not include the instances of the one or more classes, and where the second data flow program is executable to perform the first function. The second data flow program is stored on a computer memory, where the second data flow program is configured to be deployed to a device, e.g., a programmable hardware element, and where the second data flow program is executable on the device to perform the first function.
    Type: Grant
    Filed: April 27, 2009
    Date of Patent: June 4, 2013
    Assignee: National Instruments Corporation
    Inventors: Stephen R. Mercer, Akash B. Bhakta, Matthew E. Novacek
  • Patent number: 8458673
    Abstract: A computer-implemented method and system for binding digital rights management executable code to a software application are disclosed. The method and system include selecting a memory page of host application code, translating the contents of the selected memory page of host application code, saving the translated contents of the selected memory page into a stub code area, overwriting the selected memory page of host application code; removing host page permission for execution of code in the selected memory page of host application code, and emulating the translated contents of the selected memory page when an exception is raised as a result of attempted access to the selected memory page of host application code.
    Type: Grant
    Filed: January 29, 2007
    Date of Patent: June 4, 2013
    Assignee: Flexera Software LLC
    Inventors: Ivan Gadea, Andres M. Torrubia