Interpreter Patents (Class 717/139)
  • Patent number: 9760380
    Abstract: Aspects of the subject matter described herein relate to serializing and de-serializing objects. In aspects, a serialization engine uses a grammar to serialize data into a binary representation. The serialization engine may call upon a host serialization engine to serialize embedded object that are not directly supported by the environment hosting the serialization engine. The serialization engine may encode the grammar used to serialize the data into the serialized data for use in de-serializing the data. After the object is serialized, the serialized data may be de-serialized when desired by using the grammar. The grammar is such that it causes embedded objects and relationships to be preserved in the serialized representation of the object.
    Type: Grant
    Filed: March 14, 2012
    Date of Patent: September 12, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gaurav Seth, Jianchun Xu, Geoffrey M. Kizer
  • Patent number: 9652378
    Abstract: A writing method, a memory controller and a memory storage device are provided. The writing method includes steps of: configuring logical addresses to map to part of physical programming units in a storage area, wherein at least one of the physical programming units stores a valid data; transmitting a first write command for writing data having a first data length to at least one of the physical programming units; receiving a status signal; and selecting a spare physical erasing unit and copying the valid data having a second data length to the spare physical erasing unit, after transmitting the first write command and before receiving the status signal, wherein the first data length is not greater than the second data length. Therefore, it prevents a host system from waiting too long when writing data.
    Type: Grant
    Filed: July 25, 2013
    Date of Patent: May 16, 2017
    Assignee: PHISON ELECTRONICS CORP.
    Inventors: Kuo-Hwa Ho, Kheng-Chong Tan
  • Patent number: 9639449
    Abstract: An error detection device and method for a programming language is provided, the device including a program preparation unit configured to prepare a program by using a programming language, a logic converter configured to convert the prepared program to a sequence, a hash code calculator configured to detect a same logic relative to a sequence by dividing the converted sequence to a minimum unit of a plurality of program languages, calculating each hash code by the divided minimum unit of the plurality of program languages and comparing each calculated hash code, and an LCS (Longest Common Subsequence) calculator calculating an LCS relative to the sequence divided by the minimum unit of the plurality of program languages, and detecting a similar logic relative to the sequence by applying the calculated LCS to an LCS algorithm.
    Type: Grant
    Filed: August 19, 2013
    Date of Patent: May 2, 2017
    Assignee: LSIS CO., LTD.
    Inventor: Sang Hun Lee
  • Patent number: 9619210
    Abstract: Described are methods, systems and computer readable media for parsing and compiling data system queries.
    Type: Grant
    Filed: May 14, 2016
    Date of Patent: April 11, 2017
    Inventors: David R. Kent, IV, Ryan Caudy, Charles Wright, Mark Zeldis, Radu Teodorescu
  • Patent number: 9600249
    Abstract: Methods and a system are provided. A method includes implementing a function, which a compiler for a first language does not have, using a compiler for a second language. The implementing step includes generating, by the compiler for the first language, a first abstract syntax tree. The implementing step further includes converting, by a converter, the first abstract syntax tree to a second abstract syntax tree of the compiler for the second language using a conversion table from data representation types in the first language to data representation types in the second language. When a compilation error occurs, the implementing step also includes generating a special node for error processing in the second abstract syntax tree and storing an error token in the special node. When unparsing, the implementing step additionally includes outputting the error token, in the form of source code written in the first language.
    Type: Grant
    Filed: June 24, 2015
    Date of Patent: March 21, 2017
    Assignee: International Business Machines Corporation
    Inventors: Michihiro Horie, Hiroshi H. Horii, Kiyokuni Kawachiya, Mikio Takeuchi
  • Patent number: 9569238
    Abstract: Techniques and systems for modifying a virtual machine functionality. Archive files each including at least a class files are received. The archive files are stored within the virtual machine. The virtual machine runs on a host system and neither the virtual machine nor the host system are restarted in response to the receiving or storing of the archive files. Files of the host system are scanned to find class files that are not included in a class path for the virtual machine. The class files are copied to a class path for the virtual machine. Neither the virtual machine nor the host system are restarted in response to the copying of the class files. The classes corresponding to the class files are registered in the virtual machine in response to the copying of the class files to the class path. Neither the virtual machine nor the host system are restarted in response to the registration of the classes.
    Type: Grant
    Filed: September 17, 2014
    Date of Patent: February 14, 2017
    Assignee: salesforce.com, inc.
    Inventors: Stephen Wood, Samuel William Bailey, Matthew Lucas
  • Patent number: 9565244
    Abstract: Various embodiments provide methods and apparatus for operating a browser engine, and related browsers and terminals. When starting a browser, an operating environment of the browser can be obtained. The operating environment can include a CPU environment in a browser-installed-terminal. A matched operation mode of the browser engine can be selected according to the operating environment. The selected operation mode can be used to operate the browser engine. Exemplary apparatus for operating the browser engine can include an obtaining module, a selection module, and an operation module. Various embodiments also provide a browser including the disclosed apparatus, and a terminal including the disclosed browser.
    Type: Grant
    Filed: December 9, 2013
    Date of Patent: February 7, 2017
    Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
    Inventors: Yang Lu, Mengliang Rao, Fanchao Liu, Xinhua Guo, Jingyao Wang
  • Patent number: 9535691
    Abstract: The method includes adjusting, by one or more computer processors, a JAVASCRIPT object notation structure to comprise a tag on at least one object and a tag on at least one array. The method further includes receiving, by one or more computer processors, data indicating a first set of at least one change to the JAVASCRIPT object notation structure. The method further includes adjusting, by one or more computer processors, the tags in the JAVASCRIPT object notation structure to include the first set of the at least one change in the JAVASCRIPT object notation structure. The method further includes receiving, by one or more computer processor, data indicating the first set of the at least one change to the JAVASCRIPT object notation structure is complete. The method further includes displaying the first set of the at least one change to the JAVASCRIPT object notation structure based upon the adjusted tags.
    Type: Grant
    Filed: March 28, 2016
    Date of Patent: January 3, 2017
    Assignee: International Business Machines Corporation
    Inventor: Amit P. Joglekar
  • Patent number: 9535811
    Abstract: A dynamic service module is embedded in an agent and able to add functionality to the agent. The service module may manage .jar files for execution by the agent. The service module may receive the .jar files, provide them to an agent for execution, and may perform other functions. The agent may perform obfuscation in order to translate the .jar files into a modified version which may be more compatible with a particular agent. Once execution of the .jar file is complete, the agent may remove the .jar file as well as all trace of the .jar file. For example, the agent may remove byte code instrumentation that was installed as a result of the .jar file.
    Type: Grant
    Filed: October 31, 2014
    Date of Patent: January 3, 2017
    Assignee: AppDynamics, Inc.
    Inventors: Brad Winslow, Anthony Kilman
  • Patent number: 9477496
    Abstract: A method and apparatus for loading classes to virtual machines and a method and apparatus for reorganizing class archives. The method for loading a class to a virtual machine includes organizing a class archive before class loading such that the organized class archive includes a class contraction portion and loading only the class contraction portion of the class archive to the virtual machine at the moment of class loading. By first loading the class contraction portion from the organized class archive to the virtual machine at the moment of loading, the present invention curtails code redundancy, shortens loading time and reduces occupied memory resources.
    Type: Grant
    Filed: February 26, 2009
    Date of Patent: October 25, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Chang Yan Chi, Xin Hui Li, Wen Peng Xiao
  • Patent number: 9459848
    Abstract: Methods and a system are provided. A method includes implementing a function, which a compiler for a first language does not have, using a compiler for a second language. The implementing step includes generating, by the compiler for the first language, a first abstract syntax tree. The implementing step further includes converting, by a converter, the first abstract syntax tree to a second abstract syntax tree of the compiler for the second language using a conversion table from data representation types in the first language to data representation types in the second language. When a compilation error occurs, the implementing step also includes generating a special node for error processing in the second abstract syntax tree and storing an error token in the special node. When unparsing, the implementing step additionally includes outputting the error token, in the form of source code written in the first language.
    Type: Grant
    Filed: May 29, 2015
    Date of Patent: October 4, 2016
    Assignee: International Business Machines Corporation
    Inventors: Michihiro Horie, Hiroshi H. Horii, Kiyokuni Kawachiya, Mikio Takeuchi
  • Patent number: 9426090
    Abstract: A system and method for managing dynamically allocated resources assigned to a service includes providing a service to be used by a plurality of sites in a federation. Usage information associated with the service is communicated to each of the plurality of sites. A disposition of the service is determined based on local policies and the usage information received from other sites by a service owner. The disposition of the service is updated across a plurality of sites in accordance with messages sent by the service owner to reduce resource usage.
    Type: Grant
    Filed: April 30, 2012
    Date of Patent: August 23, 2016
    Assignee: International Business Machines Corporation
    Inventors: Ajay Mohindra, Anindya Neogi
  • Patent number: 9384001
    Abstract: A processing system includes a microprocessor, a hardware decoder arranged within the microprocessor, and a translator operatively coupled to the microprocessor. The hardware decoder is configured to decode instruction code non-native to the microprocessor for execution in the microprocessor. The translator is configured to form a translation of the instruction code in an instruction set native to the microprocessor and to connect a branch instruction in the translation to a chaining stub. The chaining stub is configured to selectively cause additional instruction code at a target address of the branch instruction to be received in the hardware decoder without causing the processing system to search for a translation of additional instruction code at the target address.
    Type: Grant
    Filed: August 15, 2012
    Date of Patent: July 5, 2016
    Assignee: NVIDIA CORPORATION
    Inventors: Ben Hertzberg, Nathan Tuck
  • Patent number: 9363252
    Abstract: In one example embodiment, a method includes, in one of an interpreted computer environment and a compiled computer environment, generating a software application. Generating the software application includes associating at least one first overlaid object with a first overlay group, the at least one overlaid object having a corresponding base object of the software application, assigning a first permission to the first overlay group, determining if a user is authorized to use the first overlay group based on the first permission, and configuring the software application to execute in the computer system using the at least one first overlaid object and the corresponding base object upon determining the user is authorized to use the first overlay group.
    Type: Grant
    Filed: August 7, 2014
    Date of Patent: June 7, 2016
    Assignee: BMC Software, Inc.
    Inventors: Douglas Mueller, Charles A. Mousseau
  • Patent number: 9244716
    Abstract: Methods, devices, and systems for creating a virtual machine are provided. In particular, a mechanism is provided which allows the automated creation of a virtual machine based on attributes of an existing physical machine. This allows for an efficient and user-friendly way of transitioning a physical machine or set of machines to a virtual machine architecture.
    Type: Grant
    Filed: July 12, 2010
    Date of Patent: January 26, 2016
    Assignee: Avaya Inc.
    Inventors: Glen George Freundlich, Prasad Subramanian
  • Patent number: 9201657
    Abstract: A method for processing data using a time-stationary multiple-instruction word processing apparatus, arranged to execute a plurality of instructions in parallel, said method comprising the following steps: generating a set of multiple-instruction words (INS(i), INS(i+1), INS(i+2)), wherein each multiple-instruction word comprises a plurality of instruction fields, wherein each instruction field encodes control information for a corresponding resource of the processing apparatus, and wherein bit changes between an instruction field related to a no-operation instruction, and a corresponding instruction field of an adjacent multiple-instruction word are minimised; storing input data in a register file (RF0, RF1); processing data retrieved from the register file based on control information derived from the set of multiple-instruction words; disabling the write back of result data to the register file during execution of a no-operation instruction using a first dedicated no-operation code (ws00, ws10, wp00, wp10)
    Type: Grant
    Filed: May 9, 2005
    Date of Patent: December 1, 2015
    Assignee: Intel Corporation
    Inventor: Jeroen Anton Johan Leijten
  • Patent number: 9201653
    Abstract: A source computer system with one instruction set architecture (ISA) configured to run on a target hardware system that has its own ISA. During execution from binary translation, synchronous exceptions may be either transparent (requiring processing action wholly within the target computer system) or non-transparent (requiring processing that alters a visible state of the source system, and asynchronous exceptions may also be either transparent or non-transparent, in which case an action that alters a visible state of the computer system needs to be applied. The system also includes subsystems, and related methods of operation, for detecting the occurrence of all of these types of exceptions, to handle them, and to do so with precise reentry into the interrupted instruction stream. The binary translation and exception-handling subsystems are included as components of a virtual machine monitor which is installed between the target hardware system and the source system.
    Type: Grant
    Filed: October 22, 2012
    Date of Patent: December 1, 2015
    Assignee: VMware, Inc.
    Inventor: Edouard Bugnion
  • Patent number: 9164737
    Abstract: Described is a technology by which metadata augments a programming language such as JavaScript. Software components such as application programming interfaces are associated with metadata. When a software component is selected for use, such as when putting together a computer program in a graphical programming environment, its corresponding metadata is accessed. The metadata may be used to validate the usage of the software component, such as to validate a constraint associated with a value, provide a default value, validate a value's type, and/or determine whether a value is required. Validation may also determine whether data output by one software component is of a type that is appropriate for input by another software component. In addition to validation via type metadata, the metadata may provide descriptive information about the selected software component, such as to assist the programmer and/or provide further information to the programming environment.
    Type: Grant
    Filed: May 16, 2008
    Date of Patent: October 20, 2015
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Adam D. Nathan, Andrew R. Sterland, Timothy S. Rice, Michael J. Leonard, John I. Montgomery
  • Patent number: 9135000
    Abstract: Content management includes populating a library with modular objects and metadata associated with the modular objects. In response to a query, the library can be searched based in part on the metadata. The query can relate to implementation of an industrial process. One or more modular objects in the library can be identified as satisfying the query. A result of the query can be output and the output can include the identified modular objects and the respective metadata associated with the identified modular objects. The metadata can be anything known about the object that might not be accessible at runtime control.
    Type: Grant
    Filed: November 6, 2012
    Date of Patent: September 15, 2015
    Assignee: ROCKWELL AUTOMATION TECHNOLOGIES, INC.
    Inventors: Norman Weatherhead, Andrew R. Stump, Haithem Mansouri, Axel Rodriguez, Joachim Thomsen
  • Patent number: 9135144
    Abstract: A method for identifying a current context during execution of application program code. The method comprises the steps of retrieving static context information for the application program code, identifying at least one active section of the application program code loaded in physical memory; and identifying a current context based at least partly on the at least one identified active section and retrieved static context information.
    Type: Grant
    Filed: October 22, 2009
    Date of Patent: September 15, 2015
    Assignee: Freescale Semiconductor, Inc.
    Inventors: Mihai Matei, Mihail Nistor
  • Patent number: 9137507
    Abstract: Consumer electronic devices, such as e.g. high-definition movie players for removable storage media such as optical discs, may provide possibilities for advanced interactivity for the user, implemented as software applications. A question arising generally with such software applications is what the life cycle of such an application is, and who may control it. The invention provides a method for executing software applications within a playback device for audio-video data, wherein data from a first removable storage medium are read for a software application to be executed within said playback device, and the data comprise an indication defining a termination condition for the application. Based on said termination code and depending on how the medium holding the application is ejected, the application is terminated or may survive.
    Type: Grant
    Filed: April 12, 2013
    Date of Patent: September 15, 2015
    Assignee: THOMSON LICENSING
    Inventors: Dirk Gandolph, Carsten Herpel, Jobst Hoerentrup, Uwe Jannsen, Ralf Ostermann, Hartmut Peters, Andrej Schewzow, Marco Winter
  • Patent number: 9122676
    Abstract: Techniques for license reconciliation with multiple license types and restrictions includes grouping a collection of multiple software installation instances, a collection of multiple hardware devices and a collection of multiple software licenses into multiple clusters, generating a reconciliation matrix for each cluster, wherein each row in the reconciliation matrix represents a software installation instance or a hardware device, each column in the reconciliation matrix represents a license type and/or an individual license, and each cell in the reconciliation matrix represents a license requirement and applicability of each software installation instance or hardware device, solving each reconciliation matrix, and generating a license reconciliation plan based on the solved reconciliation matrices.
    Type: Grant
    Filed: October 12, 2012
    Date of Patent: September 1, 2015
    Assignee: International Business Machines Corporation
    Inventors: Han Chen, Hui Lei, Liangzhao Zeng, Zhe Zhang
  • Patent number: 9110758
    Abstract: The embodiments of present invention relates to methods and systems for a cross-platform framework for embedded systems. One embodiment provides a framework for a network attached storage or other storage devices. The framework provides a standardized structure for modules of software, such as plugins, to implement various features on the embedded system. In addition, the framework supports interoperability between software modules written in either native code, such as C, C++, and interpreted code, such as JAVA™.
    Type: Grant
    Filed: June 24, 2013
    Date of Patent: August 18, 2015
    Assignee: Western Digital Technologies, Inc.
    Inventor: Dick Bridges
  • Patent number: 9038038
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for just in time compilation. In one aspect, a method includes receiving an application on a mobile device, the mobile device including a processor for executing native code and an interpreter for interpreting intermediate code, wherein an application includes at least one machine instruction; receiving data characterizing prior actions of the application on the mobile device; determining a portion of intermediate code to be compiled into native code based at least in part on the data, wherein the portion includes some but not all of the application; sending the portion of intermediate code over a network to a compilation server; receiving native code corresponding to the portion of intermediate code from the compilation server; and executing the native code on the processor.
    Type: Grant
    Filed: April 29, 2011
    Date of Patent: May 19, 2015
    Assignee: Google Inc.
    Inventors: Benchiao Jai, Chia-Chi Yeh
  • Patent number: 9038044
    Abstract: Example embodiments described herein may comprise a transfer of firmware execution within a non-volatile memory device to one or more replacement instructions at least in part in response to a match between a code fetch address and an address stored in a trap address register.
    Type: Grant
    Filed: December 5, 2013
    Date of Patent: May 19, 2015
    Assignee: MICRON TECHNOLOGY, INC.
    Inventors: Massimiliano Mollichelli, Andrea Martinelli, Stefan Schippers
  • Patent number: 9038039
    Abstract: An apparatus and method for accelerating Java translation are provided. The apparatus includes a lookup table which stores an lookup table having arrangements of bytecodes and native codes corresponding to the bytecodes, a decoder which generates pointer to the native code corresponding to the feed bytecode in the lookup table, a parameterized bytecode processing unit which detects parameterized bytecode among the feed bytecode, and generating pointer to native code required for constant embedding in the lookup table, a constant embedding unit which embeds constants into the native code with the pointer generated by the parameterized bytecode processing unit, and a native code buffer which stores the native code generated by the decoder or the constant embedding unit.
    Type: Grant
    Filed: May 17, 2012
    Date of Patent: May 19, 2015
    Assignees: SAMSUNG ELECTRONICS CO., LTD., Board of Regents, The University of Texas System
    Inventors: Hyo-jung Song, Ciji Isen, Lizy K. John
  • Publication number: 20150113512
    Abstract: A method for optimizing code includes receiving, by a compiler and from an interpreter, a code section representation including an object allocation, compiling, by the compiler, the code section representation into machine code with a compact allocated object of the object allocation, and triggering a deoptimization returning execution to the interpreter in response to an attempted access of the compact allocated object. The method further includes setting, by the interpreter and within the code section representation, a flag indicating that a new compact allocated object is required at a location of the attempted access, receiving, by the compiler, the code section representation including the flag, compiling, by the compiler and according to the flag, the code section representation into new machine code including the new compact allocated object, and executing the new machine code with the new compact allocated object.
    Type: Application
    Filed: October 23, 2013
    Publication date: April 23, 2015
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Thomas Wuerthinger, Lukas Stadler
  • Patent number: 9009685
    Abstract: An improved method for program building uses predefined source files and predefined build scripts comprising a sequence of build commands; wherein each build command comprises an origin command line interpretable by an operating system and addressed to at least one compiling tool.
    Type: Grant
    Filed: November 15, 2012
    Date of Patent: April 14, 2015
    Assignee: International Busines Machines Corporation
    Inventors: Eric R. Kass, Stefan B. Sell
  • Patent number: 9003313
    Abstract: A system and method for determining whether a user interface is properly injected on an electronic device are provided. Web site data for a web site is accessed, additional code are injected into the accessed web site data and the web site based on the injected additional code is provided for display. An actual image of a user interface corresponding to the displayed web site is obtained. An expected image of the user interface in which the additional code is properly injected into the web site is received. The expected image of the user interface with the actual image of the user interface are compared. In a case where the expected image of the user interface and the actual image of the user interface do not match, an error message is generated and notification of the error message is provided to the electronic device.
    Type: Grant
    Filed: April 30, 2012
    Date of Patent: April 7, 2015
    Assignee: Google Inc.
    Inventor: Michal Cierniak
  • Patent number: 9003362
    Abstract: Systems and methods for processing software application metadata associated with a software application are provided. A representative method includes the step of collecting software application metadata associated with a software application. The software application metadata includes a first set of information related at least one of the following: screens, paths, and layers associated with the software application. The method further includes the step of storing the software application metadata in a data repository.
    Type: Grant
    Filed: September 4, 2012
    Date of Patent: April 7, 2015
    Inventor: Vu Lam
  • Patent number: 8997049
    Abstract: A system, method, and computer program product is disclosed that for debugging errors in software code. According to some approaches, techniques are provided for performing on-the-fly switching from compiled to interpretive debugging for a software program. The test starts with compiled code, and when it needs to stop for debugging, the debugging occurs in interpretive mode. Once debugging has concluded, the execution can switch back to compiled mode. In this way, the debugging activities can achieve the speed and efficiency of using compiled optimized executables, while still being able to allow debugging without performing any recompilations.
    Type: Grant
    Filed: May 21, 2010
    Date of Patent: March 31, 2015
    Assignee: Cadence Design Systems, Inc.
    Inventors: Rodion Melnikov, Meir Ovadia
  • Patent number: 8990767
    Abstract: A method, system, and article of manufacture for solving ordinary differential equations described in a graphical model with nodes as blocks and dependencies as links using the processing of a computer with a plurality of processors. The method includes: generating segments of block with or without duplication for each block with an internal state and for each block without any output by traversing the graphical model from each block with an internal state to each block without any output; merging the segment to reduce duplication; compiling and converting each segment from the merged results in an executable code; and individually allocating the executable code for each segment to a plurality of processors for parallel execution.
    Type: Grant
    Filed: February 7, 2013
    Date of Patent: March 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Kumiko Maeda, Shuichi Shimizu, Takeo Yoshizawa
  • Patent number: 8990786
    Abstract: An apparatus having a transactional memory enabling exclusive control to execute a transaction. The apparatus includes: a first code generating unit configured to interpret a program, and generate first code in which a begin instruction to begin a transaction and an end instruction to commit the transaction are inserted before and after an instruction sequence including multiple instructions to execute designated processing in the program; a second code generating unit configured to generate second code at a predetermined timing by using the multiple instructions according to the designated processing; and a code write unit configured to overwrite the instruction sequence of the first code with the second code or to write the second code to a part of the first code in the transaction.
    Type: Grant
    Filed: November 30, 2011
    Date of Patent: March 24, 2015
    Assignee: International Business Machines Corporation
    Inventor: Takuya Nakaike
  • Patent number: 8984497
    Abstract: A system, method and computer program product to provide a technique for achieving high speed and stable dispatch of a code in a programming language based on erasure, the code being converted from a code written in a programming language based on reification. The system, method and computer program product perform a function of adding a synthetic class having the same name as a suffix for name mangling of a normal method in a first programming language based on reification, adding a dummy parameter of the type of the synthetic class to a constructor definition, and adding an appropriate value (normally, null) that matches the type of the dummy parameter to a constructor invocation to convert the code in the first programming language to a code in a second programming language based on erasure.
    Type: Grant
    Filed: December 18, 2012
    Date of Patent: March 17, 2015
    Assignee: International Business Machines Corporation
    Inventor: Mikio Takeuchi
  • Publication number: 20150058943
    Abstract: Provided is an information processing device including a program execution unit that loads, interprets, and executes a computer program code created by a first procedural language. The program execution unit opens a communication channel in response to a communication connection request from an external unit, and returns to each communication channel a result for a processing request sent from an external unit on the opened communication channel.
    Type: Application
    Filed: March 14, 2013
    Publication date: February 26, 2015
    Applicant: Sony Corporation
    Inventor: Tadashi Morita
  • 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: 8959492
    Abstract: A system and a method are disclosed for communicating between two programming languages on a client device. Commands in a high-level language are encoded as character string containing a series of numbers separated by delimiters, with each component of the command encoded as a different number. The encoded character strings are passed to compiled code that runs natively on the client device, and the native code decodes the character strings into corresponding native commands and executes the native commands. This communication protocol allows applications written in high-level code to perform functions that are typically set aside for native code, such as communicating with web servers and modifying files saved in memory. High-level code may also be transferred to client devices without being subjected to the restrictions that some operating systems place on the transfer for application binaries, which allows application developers to automatically send application updates to users.
    Type: Grant
    Filed: December 13, 2011
    Date of Patent: February 17, 2015
    Assignee: NgMoco, LLC
    Inventors: Stephen Cain Detwiler, James Edward Marr, Payton Russell White
  • 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: 8949821
    Abstract: A personalization method of one application capable of being executed on a Java card contains the successive steps of: generating a package containing mandatory components corresponding to the application, and a custom component corresponding to information required to personalize the application; loading the package onto a Java card; installing the application from the loaded package, the application being personalized according to the information as soon as the application is in the Installed state, i.e. at the end of the completion of the step of installing.
    Type: Grant
    Filed: November 30, 2007
    Date of Patent: February 3, 2015
    Assignee: Cassis International Pte. Ltd
    Inventors: Kian Teck Soh, Arun Ganeswaran
  • Patent number: 8935658
    Abstract: A computer system and method for software delivery that include articles of manufacture having two or more installed, functional software applications organized in a protoset, the protoset configured to enable creation of one or more subsets (also called reduced metasets) from the two or more installed, functional software applications, each of the one or more subsets configured to be operable with a predefined computer system independent of the protoset; and a protoset module configured to operate on the protoset to enable creation of the one or more subsets of the two or more installed, functional software applications, the module responsive to one or more requests for the creation of the one or more reduced metasets.
    Type: Grant
    Filed: February 21, 2014
    Date of Patent: January 13, 2015
    Inventor: Alan Joshua Shapiro
  • Patent number: 8935665
    Abstract: A computer implemented method, apparatus, and computer usable program code for managing a software partition in logical partitioned data processing system. A virtual root process is created for the software partition, wherein the virtual root process functions as a root process for the software partition. The set of child processes is re-parented to the virtual root process in response to termination of a process having a set of child processes.
    Type: Grant
    Filed: April 19, 2012
    Date of Patent: January 13, 2015
    Assignee: International Business Machines Corporation
    Inventors: Dean Joseph Burdick, David Jones Craft, Eric Philip Fried, Vinit Jain, Lance Warren Russell, Marc Joel Stephenson
  • Publication number: 20150012912
    Abstract: A programming language is extended to have embedded interpretive types (EIT) that define objects and variables to be resolved at translation time. A variable or data element having a type that is one of the EITs is referred to as an embedded interpretive variable (EIV). A control construct containing an EIV is interpreted (i.e. executed) at translation time.
    Type: Application
    Filed: June 20, 2014
    Publication date: January 8, 2015
    Inventor: David R. Cheriton
  • Patent number: 8930915
    Abstract: Provided is a method for mitigating the effects of an application which crashes as the result of supplemental code (e.g., plug-in), particularly a plug-in from a source other than the source of the operating system of the device or the source of the application that crashes. The method includes executing the application. As the application is running, it may be monitored to determine if normal execution of instructions ceases. When that occurs, the system will make a determination if code from a supplemental code module was the cause of the crash, and will make an evaluation if that supplemental code module is from a source other than the source(s) of the operating system and application in question. In some implementations, remedial steps may be provided, such as providing information on subsequent executions of the application.
    Type: Grant
    Filed: May 3, 2013
    Date of Patent: January 6, 2015
    Assignee: Apple Inc.
    Inventor: Christopher A. Wolf
  • Patent number: 8930920
    Abstract: A method for a compiler includes receiving, by the compiler and from an interpreter, a representation of a code section having a control path that changes the representation. The representation has profiling data, and the profiling data has a threshold. The method further includes performing, by the compiler and based on the threshold, a partial evaluation of the interpreter executing the representation, compiling, by the compiler, a machine code of the representation, with the control path replaced by a deoptimization point during the compilation of the machine code, triggering the deoptimization point during execution of the machine code, and returning execution to the interpreter based on the triggering.
    Type: Grant
    Filed: December 31, 2012
    Date of Patent: January 6, 2015
    Assignee: Oracle International Corporation
    Inventors: Thomas Wuerthinger, Douglas Norman Simon, Christian Wimmer, Lukas Stadler, Gilles Marie Duboscq
  • Publication number: 20140380285
    Abstract: A dynamically evolving cognitive architecture system based on a natural language intent interpreter is described. A system forms an intent based on a user input, and creates a plan based on the intent. The plan includes a first action object that transforms a first concept object associated with the intent into a second concept object and also includes a second action object that transforms the second concept object into a third concept object associated with a goal of the intent. The first action object and the second action object are selected from multiple action objects. The system executes the plan, and outputs a value associated with the third concept object.
    Type: Application
    Filed: August 18, 2014
    Publication date: December 25, 2014
    Inventors: Mark Gabel, Christopher Brigham, Adam Cheyer
  • Publication number: 20140380286
    Abstract: A dynamically evolving cognitive architecture system based on training by third-party developers is described. A system forms an intent based on a user input, and creates a plan based on the intent. The plan includes a first action object that transforms a first concept object associated with the intent into a second concept object and also includes a second action object that transforms the second concept object into a third concept object associated with a goal of the intent. The first action object and the second action object are selected from multiple action objects. The system executes the plan, and outputs a value associated with the third concept object.
    Type: Application
    Filed: August 18, 2014
    Publication date: December 25, 2014
    Inventors: Mark GABEL, Christopher Brigham, Adam Cheyer
  • Publication number: 20140359585
    Abstract: To compile a source program comprising first rule(s) not supported by a target environment and to enable the first rule(s) to be executed on the target environment, the method comprises generating a directed graph representative of the source program, generating a first data structure corresponding to a flat representation of the directed graph, first data structure comprising at least a first identifier associated with the at least a first rule, and generating a second data structure comprising first instructions adapted for interpreting the first data structure by using the at least a first identifier, the instructions being coded into a code supported by the target environment.
    Type: Application
    Filed: December 19, 2012
    Publication date: December 4, 2014
    Inventors: Jean-Eudes Marvie, Cyprien Buron, Patrice Hirtzlin, Pascal Gautron
  • Patent number: 8893098
    Abstract: The disclosed embodiments provide a system that facilitates the development and execution of a software program. During runtime of the software program, the system delays type inference on a generic type parameter of an implementation of an overloaded function, wherein the generic type parameter is associated with a type interval containing an unbounded lower limit and one or more self-typed constraints. Upon detecting a type query for a dynamic type of the generic type parameter, the system compares a queried type from the type query with a set of inference choices for the generic type parameter. If the queried type matches an inference choice from the set of inference choices, the system uses the inference choice to perform type inference on the generic type parameter.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: November 18, 2014
    Assignee: Oracle International Corporation
    Inventor: David R. Chase
  • Patent number: 8893097
    Abstract: A tool configured to build a cross-browser toolbar is provided. The tool includes a processor; and a memory coupled to the processor and configured to store at least instructions for execution of a wizard program by the processor, the wizard program causes to: receive an input identifying at least user interface elements and event handlers respective of the user interface elements, the input further identifies at least two different types of a web browser on which the toolbar can be executed; generate respective of the received input a toolbar render object, a script file, and at least one toolbar library for each type of web browser; and compile the toolbar render object, the script file, and the least one toolbar library into an installer file.
    Type: Grant
    Filed: November 30, 2012
    Date of Patent: November 18, 2014
    Assignee: Visicom Media Inc.
    Inventor: Miguel Enrique Cepero Gonzalez
  • Patent number: RE45278
    Abstract: A Central Processing Unit (CPU) hotpatch circuit compares the run-time instruction stream against an internal cache. The internal cache stores embedded memory addresses with associated control flags, executable instruction codes, and tag information. In the event that a comparison against the current program counter succeeds, then execution is altered as required per the control flags. If no comparison match is made, then execution of the instruction that was accessed by the program counter is executed.
    Type: Grant
    Filed: October 28, 2010
    Date of Patent: December 2, 2014
    Assignee: STMicroelectronics, Inc.
    Inventor: Christian D. Kasper