Translation Of Code Patents (Class 717/136)
  • Patent number: 8473911
    Abstract: Generation of documentation from a computer readable symbolic representation is described. In an embodiment, a reified version of an input is obtained as coded objects. The input is readable by a programmed computer for execution, and is in an applied form of a symbolic representation of knowledge for a defined domain of knowledge. The reified version is a coded form of the applied form, wherein the coded objects are in a dynamic language. A content sequence library is accessed by the programmed computer responsive to the coded objects to extract content for a document plan. A reasoning library is then accessed by the programmed computer responsive to the content extracted to provide a sequenced organization of phrase structure for the content extracted. A natural language representation of the input is output from a realization of the sequenced organization of phrase structure.
    Type: Grant
    Filed: July 23, 2010
    Date of Patent: June 25, 2013
    Assignee: Xilinx, Inc.
    Inventor: Michael A. Baxter
  • Patent number: 8464206
    Abstract: A method and system for providing a consistent flow documents and data content across different organizational units of a company or agency where the documents and data come from different enterprise systems and data stores but are related to linked processes that share models for organizing the content in the business context and in a format that enables a user to relate the content to the process step or steps they are performing. The system includes a network service that enables a configuration utility to automatically discover the objects and metadata and provides for a mapping of selected fields of the metadata to regions displayed in the user interface view with provision for filtering the data by mapping selected fields to a user input form. Thereby, a business analyst can create solutions without writing and maintaining complex program logic for each combination of presentation environment, enterprise system and data store.
    Type: Grant
    Filed: October 22, 2008
    Date of Patent: June 11, 2013
    Assignee: Open Text S.A.
    Inventors: Paul Thomas Jenkins, Daniel Wray Barkley, Robert W. Boender, Adam Murray Howatson, Willard Carter Morton, Jr., Cheryl Lynne McKinnon, Florian Müller, Martin Sumner-Smith, Matthew David George Timmermans
  • Patent number: 8464226
    Abstract: A mechanism for providing automatic interoperation between native objects created in a single language computing environment and objects created in external virtual machines and foreign class systems is discussed. Embodiments of the present invention provides a class definition syntax for objects created in the single language computing environment that provides the ability to directly subclass external classes and implement external interfaces. One embodiment of the present invention also permits a foreign object system to instantiate native objects and to create foreign subclasses of native classes. More specifically, one embodiment of the present invention provides bidirectional mapping between metadata associated with objects created with each of a plurality of different types of foreign object systems and metadata created in a form supported by the single language computing environment.
    Type: Grant
    Filed: July 30, 2007
    Date of Patent: June 11, 2013
    Assignee: The MathWorks, Inc.
    Inventor: David A. Foti
  • Patent number: 8464210
    Abstract: The invention is directed to method of generating database encoded software for controlling operation of a data processing device. The method comprises providing a formal language specification representative of source code for the software, translating said formal language specification into data suitable for storing in database structures and in a form suitable for being queried by a database query language and storing said data in database structures of a database. The method includes using a software development tool in a software development and testing environment to manipulate the database encoded software using a database query language such as SQL and XQuery to develop new software features. The query language can also be used to control replication and/or synchronization of the database encoded software with the contents of a data processing device control program database by way of installing said control program on said device or upgrading the control program software of said device.
    Type: Grant
    Filed: December 22, 2005
    Date of Patent: June 11, 2013
    Assignee: Rockstar Consortium US LP
    Inventors: Peter George Tarle, Troy Mark Gonsalves, Maneesha Sahasrabudhe, Grant Weddell
  • Patent number: 8464227
    Abstract: A supervisory process control and manufacturing information application development and execution system is disclosed that supports the execution of application object scripts derived from multiple different scripting languages. In particular, the system includes a script editor interface that enables submission/specification of scripts for application objects. The script editor interface supports multiple distinct user-side script languages (e.g., user-supplied script text). A script translation component that receives the user-side script includes routines for rendering execution-side script (executable by a script engine) from source script rendered by the script editor and written according to any of a set of user-side script languages supported by the script translation component. The translator supports at least a first scripting language and a second scripting language.
    Type: Grant
    Filed: September 20, 2010
    Date of Patent: June 11, 2013
    Assignee: Invensys Systems, Inc.
    Inventor: Greg C. Clinton
  • Patent number: 8458680
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: January 12, 2012
    Date of Patent: June 4, 2013
    Assignee: Google Inc.
    Inventors: William Y. Crutchfield, Brian K. Grant, Matthew N. Papakipos
  • Patent number: 8458672
    Abstract: Computer implemented method, system and computer usable program code for facilitating utilization of data. A computer implemented method for facilitating utilization of data includes receiving data, wherein the received data is in a first representation. The received data is converted from the first representation to a common representation that is mapped to the first representation using an external configuration file. The common representation of the data is output to facilitate utilization of the data.
    Type: Grant
    Filed: July 17, 2007
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: Craig Robert William Forster, Kerry Robert Gunn, Vernon Murdoch, Miguel Pedroza
  • 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: 8452712
    Abstract: A method and apparatus for enforcing software licenses for resource libraries such as an application program interface (API), a toolkit, a framework, a runtime library, a dynamic link library (DLL), an applet (e.g., a Java or ActiveX applet), or any other reusable resource. The resource library can be used by authorized end user software programs. A “per-program” licensing scheme for a resource library can allow a resource library to be licensed only for use with particular software programs.
    Type: Grant
    Filed: September 23, 2011
    Date of Patent: May 28, 2013
    Assignee: Apple Inc.
    Inventors: Blaine Garst, Bertrand Serlet
  • Patent number: 8453126
    Abstract: A system and method for automated conversion of a SAS runtime macro language (RML) program to a target language program such as JAVA. RML macros are identified and converted for inclusion in the RML program. A lexer is applied to generate a stream of tokens, including a token type for ambiguous tokens. A context dependent parsing module, including a token filter to resolve ambiguous tokens, assists the parser in generating an abstract syntax tree (AST), which is modified to express RML specific control flow constructs with target language program elements. The elements of the modified AST are replaced with target language templates from a library, with template parameters filled from the corresponding AST element. A run time library is provided for execution of the target language program.
    Type: Grant
    Filed: July 30, 2009
    Date of Patent: May 28, 2013
    Assignee: Dulles Research LLC
    Inventor: Pavel Ganelin
  • Patent number: 8453109
    Abstract: Embodiments of the invention provide a dictionary, which may be modified by a developer, that provides a mapping of the generation routine to be performed and a pointer or identifier of the generator employed for the specified generation routine. As will be appreciated, embodiments of the invention may employ a dictionary which comprises a plurality of generation routine-code generator identity data pairs. A generator routine may be, for example, associated with the generation of source code associated with a particular object class, fields, methods, method bodies, procedures, comments, subroutines and the like. By modifying a generation routine-code generator identity data pair in a generator dictionary, a developer or user is able to modify the source code (e.g., the structure and/or content of the source) which is ultimately generated by the generator.
    Type: Grant
    Filed: March 5, 2008
    Date of Patent: May 28, 2013
    Assignee: International Business Machines Corporation
    Inventors: Kenneth A. Chupa, Timothy M. Francis, Steven F. Wasleski, L. Scott Rich
  • Patent number: 8448149
    Abstract: A method for converting traditional ladder diagrams for programmable controllers according to model 984, for example, the traditional ladder diagrams being read and executed column by column, into ladder diagrams for IEC 61131-oriented controllers, for example, with the ladder diagrams being read and executed in a data flow-oriented manner. In order to carry out the method, it is determined, in the ladder diagrams that are traditionally read and executed column by column, whether variables are provided on coils as well as on contacts within the network, and it is determined whether the contact is processed according to model 984 in front of the associated coil and according to the IEC model behind the associated coil. If so, an additional variable is generated for each such variable, and the additional variable is fed to the respective contact instead of the original variable.
    Type: Grant
    Filed: February 19, 2008
    Date of Patent: May 21, 2013
    Assignee: Schneider Electric Automation GmbH
    Inventor: Andreas Schmidt
  • Patent number: 8448156
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: February 27, 2012
    Date of Patent: May 21, 2013
    Assignee: Googe Inc.
    Inventors: Christopher G. Demetriou, Matthew N. Papakipos
  • Patent number: 8448150
    Abstract: The present invention is directed to a method and system for translating a high-level language (HLL) code such as C, C++, Fortran, Java or the like into a HDL code such as Verilog or VHDL which requires no modification in the original HLL source code, while supporting a cross call between software and hardware, and even recursive calls in hardware. The system includes: a HLL-to-HLL source translator which reads user programming directive from a translation-targeted high-level language code marked with the user directive, and separates the translation-targeted high-level language code into a hardware code part and a software code part; a main compiler which compiles the software code part; a HLL-to-HDL translator which includes the front-end and middle-end of the main compiler and a HDL backend; a main core which executes the compiled software code part; and a dedicated hardware which executes the HDL code.
    Type: Grant
    Filed: October 30, 2009
    Date of Patent: May 21, 2013
    Assignee: Korea University Industrial & Academic Collaboration Foundation
    Inventors: Seon Wook Kim, Thi Huong Giang Nguyen
  • Publication number: 20130125097
    Abstract: The invention comprises (i) a compilation method for automatically converting a single-threaded software program into an application-specific supercomputer, and (ii) the supercomputer system structure generated as a result of applying this method. The compilation method comprises: (a) Converting an arbitrary code fragment from the application into customized hardware whose execution is functionally equivalent to the software execution of the code fragment; and (b) Generating interfaces on the hardware and software parts of the application, which (i) Perform a software-to-hardware program state transfer at the entries of the code fragment; (ii) Perform a hardware-to-software program state transfer at the exits of the code fragment; and (iii) Maintain memory coherence between the software and hardware memories. If the resulting hardware design is large, it is divided into partitions such that each partition can fit into a single chip. Then, a single union chip is created which can realize any of the partitions.
    Type: Application
    Filed: November 15, 2011
    Publication date: May 16, 2013
    Applicant: Global Supercomputing Corporation
    Inventors: Kemal Ebcioglu, Emre Kultursay, Mahmut Taylan Kandemir
  • Publication number: 20130124969
    Abstract: A WYSIWYG (what you see is what you get) application that is originally incapable of rendering an XML (Extensible Markup Language) file is converted into a WYSIWYG editor capable of rendering the XML file and manipulating the XML file in a WYSIWYG manner. Upon conversion, the WYSIWYG editor is capable of loading, saving, editing and/or outputting the XML file in a WYSIWYG manner as if the XML file were originally supported by the WYSIWYG application.
    Type: Application
    Filed: November 14, 2011
    Publication date: May 16, 2013
    Applicant: Crowell Solutions, Inc.
    Inventors: Richard Earl Schochler, Eric Eugene Lawson, Roumel Ignacio Bobadilla, Donald Thomas Smith
  • Patent number: 8443344
    Abstract: Approaches for generating a hardware definition from a program specified in a high-level language. In one approach, a first set of blocks of instructions in the high-level language program is identified. Each block in the first set is bounded by a respective loop designation in the high-level language. For each block in the first set, an associated respective second set of one or more blocks of the program is identified. Each block in the second set is outside the block in the first set. A hardware definition of the program is generated and stored. For each block in the first set, the hardware definition specifies power-reducing circuitry for one or more blocks in the associated second set. The power-reducing circuitry is controlled based on a status indication from the hardware definition of the block in the first set.
    Type: Grant
    Filed: September 25, 2008
    Date of Patent: May 14, 2013
    Assignee: Xilinx, Inc.
    Inventors: Prasanna Sundararajan, Tim Tuan
  • Patent number: 8443352
    Abstract: The specification of a string within source code written in a programming language is received. The source code is processed for ultimate execution of a computer program encompassing the source code, by at least performing the following. It is determined whether the string specified is a short string or a long string. The string is processed in accordance with a first manner where the string is a short string. The string is processed in accordance with a second manner where the string is a long string.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: May 14, 2013
    Assignee: International Business Machines Corporation
    Inventors: Michiaki Tatsubori, Akihiko Tozawa, Toyotaro Suzumura, Tamiya Onodera, Scott Ross Trent
  • Patent number: 8443349
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: February 9, 2012
    Date of Patent: May 14, 2013
    Assignee: Google Inc.
    Inventors: Matthew N. Papakipos, Brian K. Grant, Morgan S. McGuire, Christopher G. Demetriou
  • Patent number: 8443343
    Abstract: In one embodiment of the invention a method comprising (1) receiving an unstructured binary code region that is single-threaded; (2) determining a slice criterion for the region; (3) determining a call edge, a return edge, and a fallthrough pseudo-edge for the region based on analysis of the region at a binary level; and (4) determining a context-sensitive slice based on the call edge, the return edge, the fallthrough pseudo-edge, and the slice criterion. Embodiments of the invention may include a program analysis technique that can be used to provide context-sensitive slicing of binary programs for slicing hot regions identified at runtime, with few underlying assumptions about the program from which the binary is derived. Also, in an embodiment a slicing method may include determining a context-insensitive slice, when a time limit is met, by determining the context-insensitive slice while treating call edges as a normal control flow edges.
    Type: Grant
    Filed: October 28, 2009
    Date of Patent: May 14, 2013
    Assignee: Intel Corporation
    Inventors: Joseph Blomstedt, Cheng Wang, Youfeng Wu
  • Patent number: 8441488
    Abstract: Exemplary apparatus, method, and system embodiments provide for processing an action script for a graphical image for visual display. An exemplary apparatus comprises: a first memory; first circuitry configured to convert a plurality of descriptive elements of the action script into a plurality of operational codes; and second circuitry configured to execute the plurality of operational codes using corresponding data stored in the first memory to generate pixel data for the graphical image. Exemplary embodiments may further include third circuitry configured to parse the action script into the plurality of descriptive elements and the corresponding data, and fourth circuitry configured to extract data from the action script and to store the extracted data in the first memory as a plurality of control words having the corresponding data in predetermined fields.
    Type: Grant
    Filed: September 5, 2012
    Date of Patent: May 14, 2013
    Assignee: LeoNovus USA Inc.
    Inventors: Bhaskar Kota, Lakshmikanth Surya Naga Satyavolu, Ganapathi Venkata Puppala, Praveen Kumar Bollam, Sairam Sambaraju, Paul L. Master
  • Publication number: 20130117736
    Abstract: Reactive programming is facilitated. Reactive expressions can be generated automatically from non-reactive expressions or in other words standard expressions. Additionally or alternatively, reactive expressions can be optimized in a number of different ways to minimize computational work.
    Type: Application
    Filed: November 8, 2011
    Publication date: May 9, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Bart De Smet, Henricus Johannes Maria Meijer
  • Patent number: 8438549
    Abstract: Programming for a data processor to execute a data processing application is provided using microcode source code. The microcode source code is assembled to produce microcode that includes digital microcode instructions with which to signal the data processor to execute the data processing application.
    Type: Grant
    Filed: September 15, 2009
    Date of Patent: May 7, 2013
    Inventors: James A. McCoy, Steven E. Morrison
  • Patent number: 8438548
    Abstract: In one embodiment, after translating a plurality of target instructions from a target memory location into a plurality of host instructions, a write operation to a target memory portion which includes said target memory location is detected. In response to the detecting, a copy of the target instructions is stored in a host memory. In response to an attempt to execute the host instructions, the copy is compared with a plurality of current target instructions presently stored in the target memory location. Further, in response to a mismatch based on the comparison, the host instructions are disabled.
    Type: Grant
    Filed: February 4, 2011
    Date of Patent: May 7, 2013
    Inventors: John Banning, H. Peter Anvin, Robert Bedicheck, Guillermo J. Rozas, Andrew Shaw, Linus Torvalds, Jason Wilson
  • Patent number: 8434064
    Abstract: Methods of detecting memory errors using write integrity testing are described. In an embodiment, additional analysis is performed when a program is compiled. This analysis identifies a set of objects which can be written by each instruction in the program. Additional code is then inserted into the program so that, at runtime, the program checks before performing a write instruction that the particular object being written is one of the set of objects that it is allowed to write. The inserted code causes an exception to be raised if this check fails and allows the write to proceed if the check is successful. In a further embodiment, code may also be inserted to perform checks before indirect control-flow transfer instructions, to ensure that those instructions cannot transfer control to locations different from those intended.
    Type: Grant
    Filed: March 28, 2008
    Date of Patent: April 30, 2013
    Assignee: Microsoft Corporation
    Inventors: Periklis Akritidis, Manuel Costa, Miguel Castro
  • Patent number: 8432404
    Abstract: Exemplary apparatus, method, and system embodiments provide for accelerated hardware processing of an action script for a graphical image for visual display. An exemplary method comprises: converting a plurality of descriptive elements into a plurality of operational codes which at least partially control at least one processor circuit; and using at least one processor circuit, performing one or more operations corresponding to an operational code to generate pixel data for the graphical image. Another exemplary method for processing a data file which has not been fully compiled to a machine code and comprising interpretable descriptions of the graphical image in a non-pixel-bitmap form, comprises: separating the data file from other data; parsing and converting the data file to a plurality of hardware-level operational codes and corresponding data; and performing a plurality of operations in response to at least some hardware-level operational codes to generate pixel data for the graphical image.
    Type: Grant
    Filed: February 14, 2009
    Date of Patent: April 30, 2013
    Assignee: LeoNovus USA Inc.
    Inventors: Bhaskar Kota, Lakshmikanth Surya Naga Satyavolu, Ganapathi Venkata Puppala, Praveen Kumar Bollam, Sairam Sambaraju, Paul L. Master
  • Patent number: 8434076
    Abstract: A system which combines sequential and iterative source code is provided. The system decides which type of processing would be most suitable for all portions of the source code, regardless of type. The system can adjust that decision based on the specific nature of the constructs within the source code, and can also adjust that decision based on the platform upon which the resulting executable program will run.
    Type: Grant
    Filed: December 12, 2007
    Date of Patent: April 30, 2013
    Assignee: Oracle International Corporation
    Inventors: Anguel Novoselsky, Zhen Hua Liu
  • Patent number: 8434073
    Abstract: An exemplary method for preventing exploitation of byte sequences that violate compiler-generated instruction alignment may comprise: 1) identifying instantiation of a process, 2) identifying an address space associated with the process, 3) identifying, within the address space associated with the process, at least one control-transfer instruction, 4) determining that at least one byte preceding the control-transfer instruction is capable of resulting in an out-of-alignment instruction, and then 5) preventing the control-transfer instruction from being executed. In one example, the system may prevent the control-transfer instruction from being executed by inserting a hook in place of the intended instruction that executes the intended instruction and then returns control flow back to the instantiated process. Corresponding systems and computer-readable media are also disclosed.
    Type: Grant
    Filed: November 3, 2008
    Date of Patent: April 30, 2013
    Assignee: Symantec Corporation
    Inventors: Sourabh Satish, Bruce McCorkendale, William E. Sobel
  • Patent number: 8432403
    Abstract: Exemplary apparatus, method, and system embodiments provide for accelerated hardware processing of an action script for a graphical image for visual display. An exemplary apparatus comprises: a first memory; and a plurality of processors to separate the action script from other data, to convert a plurality of descriptive elements of the action script into a plurality of hardware-level operational or control codes, and to perform one or more operations corresponding to an operational code of the plurality of operational codes using corresponding data to generate pixel data for the graphical image. In an exemplary embodiment, at least one processor further is to parse the action script into the plurality of descriptive elements and the corresponding data, and to extract data from the action script and to store the extracted data in the first memory as a plurality of control words having the corresponding data in predetermined fields.
    Type: Grant
    Filed: February 14, 2009
    Date of Patent: April 30, 2013
    Assignee: LeoNovus USA Inc.
    Inventors: Bhaskar Kota, Lakshmikanth Surya Naga Satyavolu, Ganapathi Venkata Puppala, Praveen Kumar Bollam, Sairam Sambaraju, Paul L. Master
  • Patent number: 8429606
    Abstract: A computing device receives an object at runtime of a compiled application, wherein the object is a component of the application. The computing device generates a transactional proxy for the object, the transactional proxy including transactional logic, a transactional marker and a pointer to the object. The transactional proxy is passed to the application, wherein the application to make calls on the transactional proxy instead of on the object.
    Type: Grant
    Filed: May 29, 2009
    Date of Patent: April 23, 2013
    Assignee: Red Hat, Inc.
    Inventor: Mark Cameron Little
  • Patent number: 8429624
    Abstract: An application programming interface (API) implementation that can interface between an application and a programming library. The implementation includes a Function Router Wrapper that receives a formatted string from the application. The formatted string includes a function name element filled with a function name, an input element filled with function input parameters, and an unfilled output element. The Function Router Wrapper converts the formatted string and passes it to a Function Router, which parses the converted formatted string to access the function name and the function input parameters. The Function Router calls a library function based on the accessed information. When the called library function is completed, the Function Router collects generated function outputs and embeds them into the formatted string output element. The Function Router passes the formatted string back up to the Function Router Wrapper, which converts the formatted string and passes it back up to the application.
    Type: Grant
    Filed: August 17, 2010
    Date of Patent: April 23, 2013
    Assignee: LSI Corporation
    Inventors: Jason Unrein, Louis Henry Odenwald, Jr., Rose George
  • Patent number: 8429625
    Abstract: A method and system for processing generic formatted data, including first data describing a sequence of generic operations without any loops, in view of providing specific formatted data, for a determined platform including Q processor(s) and at least one memory, the platform configured to process, according, directly or indirectly, to specific formatted data, an object made up of elementary information of same type, each elementary information being represented by at least one numerical value.
    Type: Grant
    Filed: December 19, 2006
    Date of Patent: April 23, 2013
    Assignee: DXO Labs
    Inventor: Bruno Liege
  • Patent number: 8429200
    Abstract: Some embodiments of a system and a method to use a separate process in an interactive computer programming environment as a database have been presented. For instance, both server and client may run in an interactive computer programming environment, such as Read-Eval-Print Loop (REPL) environment. The server may receive data manipulating instructions written in a generic programming language and data from the client. The server can execute the instructions to manipulate the data. The server may further act as a database for the client by maintaining persistence of the data.
    Type: Grant
    Filed: February 2, 2010
    Date of Patent: April 23, 2013
    Assignee: Red Hat, Inc.
    Inventors: Vitaly Mayatskikh, Yulia Kopkova
  • Patent number: 8429638
    Abstract: A method, computer program product, and data processing system for substituting a candidate instruction in application code being loaded during load time. Responsive to identifying the candidate instruction, a determination is made whether a hardware facility of the data processing system is present to execute the candidate instruction. If the hardware facility is absent from the data processing system, the candidate instruction is substituted with a second set of instructions.
    Type: Grant
    Filed: February 3, 2012
    Date of Patent: April 23, 2013
    Assignee: International Business Machines Corporation
    Inventor: Mike S. Fulton
  • Patent number: 8429623
    Abstract: A mechanism is disclosed for enabling a set of code intended to be executed on a first platform (intended platform) to be executed on another platform (target platform). In one implementation, this mechanism takes a significantly different approach than that taken by current techniques. Rather than duplicating, augmenting, or changing a platform to accommodate the set of code, this mechanism alters the set of code to accommodate the platform. By altering the set of code, the mechanism causes the set of code to compensate for the difference(s) between the intended platform and the target platform. By compensating for the difference(s) in the two platforms, the set of code, when executed on the target platform, is able to produce the same result or results as it would have produced had it been executed on the intended platform. Thus, the set of code is able to execute properly on the target platform.
    Type: Grant
    Filed: January 16, 2007
    Date of Patent: April 23, 2013
    Assignee: Oracle America Inc.
    Inventors: Kenneth B. Russell, Ira A. Wyant
  • Patent number: 8423976
    Abstract: The present invention relates to a binary translator for directly translating binary instructions written for a legacy processor to executable binary instructions for a native processor. In accordance with an important aspect of the invention the binary translator is configured as a reconfigurable translator, which enables the binary translator to be used with different legacy processors and/or operating systems and native processors. The binary translators also optimize to take advantage of more efficient native processor instructions and allows portions of the legacy binary code to be disabled and/or new native instructions to be added to the application program without modification of the legacy binary code.
    Type: Grant
    Filed: March 13, 2003
    Date of Patent: April 16, 2013
    Assignee: Northrop Grumman Corporation
    Inventors: Eric W. Zwirner, Gregory P. Crocker, Joshua C. Kennel, Timothy R. Hoerig, William J. Cannon
  • Patent number: 8423978
    Abstract: A method, apparatus, and computer instructions for a configurable JavaServer pages processing framework to process JavaServer pages (JSP). A JSP document or page is translated into a document object model (DOM) object that encapsulates elements of the JSP. The syntax of the JSP is validated by a JSP translator with built-in classes and errors are returned if necessary. A JSP visitor configuration file, which defines user configured classes and sequence of execution, is used by the JSP translator to invoke methods of user-defined classes in the order specified by the user to process or visit elements of the DOM object. Result of user-defined class processing may be passed from one class to another within the set.
    Type: Grant
    Filed: June 22, 2011
    Date of Patent: April 16, 2013
    Assignee: International Business Machines Corporation
    Inventors: Richard A. Backhouse, Scott D. Johnson
  • Patent number: 8423977
    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: April 16, 2013
    Assignee: National Instruments Corporation
    Inventors: Stephen R. Mercer, Akash B. Bhakta, Matthew E. Novacek
  • Patent number: 8418152
    Abstract: An approach to profiling software programs that uses a small pinned buffer and a large unpinned histogram buffer is presented. When a process that is being profiled receives a time slice, the process' program counter is written to the small pinned buffer by a kernel routine. The small pinned buffer is configured to be large enough to store several program counters. When the small pinned buffer is full, or almost full, an internal profiling signal is sent by the kernel routine. When the process is resumed, any outstanding signals are processed before resuming the process. The profiling signal is handled by reading the program counters from the small pinned buffer, calculating a slot in the histogram buffer that corresponds to each of the program counters, incrementing the value in the corresponding histogram slots, and clearing the small pinned buffer so that it can be reused.
    Type: Grant
    Filed: March 15, 2008
    Date of Patent: April 9, 2013
    Assignee: International Business Machines Corporation
    Inventors: Dean Joseph Burdick, Suresh Eswara Warrier
  • Patent number: 8418135
    Abstract: Some embodiments of a method and an apparatus to abstract away rule languages from a rule engine have been presented. In one embodiment, rules written in a first rule language are parsed into descriptor classes, which are used to model concepts that can be expressed in a rule engine. An intermediate structure is generated from the parsed rules. The intermediate structure is input to a core of the rule engine, which is operable to execute the rules.
    Type: Grant
    Filed: May 31, 2007
    Date of Patent: April 9, 2013
    Assignee: Red Hat, Inc.
    Inventors: Mark Proctor, Edson Tirelli, Robert K. McWhirter
  • Patent number: 8418125
    Abstract: In one embodiment of the invention, a method for profile mapped model transformation for model driven architecture (MDA) development of service provisioning applications can be provided. The method can include mapping elements of a platform independent domain specific model to a platform specific domain specific model for a target platform with stereotypes in a uniform modeling language (UML) profile defined for the target platform. The method further can include transforming a platform independent domain specific model into a platform specific domain specific model for a target platform by applying the stereotypes of the UML profile defined for the target platform. Finally, the method can include generating shell source code for the transformed platform specific domain specific model.
    Type: Grant
    Filed: May 3, 2007
    Date of Patent: April 9, 2013
    Assignee: International Business Machines Corporation
    Inventors: Jennifer L. Hawkins, Igor Ivkovic, Konstantinos Kontogiannis, Ross McKegney, Walfrey Ng, Tack Tong
  • Patent number: 8418151
    Abstract: A process for providing a simulated date and/or time to a time-sensitive application is disclosed herein. Such a process may include detecting the invocation of a time handler method configured to retrieve system time. Upon detecting the invocation, the contents of a call stack may be captured and analyzed to determine which requestor method initiated the invocation. The process may then determine whether the requestor method should receive a real or simulated system time. A real system time may be returned to the requestor method in the event it should receive the real system time. A simulated system time may be returned to the requestor method in the event it should receive the simulated system time. A corresponding apparatus and computer program product are also disclosed and claimed herein.
    Type: Grant
    Filed: March 27, 2012
    Date of Patent: April 9, 2013
    Assignee: International Business Machines Corporation
    Inventors: Trent A. Gray-Donald, Marc Warner Price
  • Publication number: 20130086598
    Abstract: Object code is generated from an internal representation that includes a plurality of source operands. The generating includes performing for each source operand in the internal representation determining whether a last use has occurred for the source operand. The determining includes accessing a data flow graph to determine whether all uses of a live range have been emitted. If it is determined that a last use has occurred for the source operand, an architected resource associated with the source operand is marked for last-use indication. A last-use indication is then generated for the architected resource. Instructions and the last-use indications are emitted into the object code.
    Type: Application
    Filed: October 3, 2011
    Publication date: April 4, 2013
    Applicant: International Business Machines Corporation
    Inventors: Michael K. Gschwind, Valentina Salapura
  • Patent number: 8413123
    Abstract: According to an embodiment, a compiling device compiling a source program written so as to use a frame memory includes a processing delay amount calculator configured to calculate respective processing delay amounts between a plurality of process tasks in the source program on the basis of processing states of pieces of data processed by the process tasks. The compiling device also includes a line memory amount calculator configured to calculate respective line memory sizes required for each of the process tasks on the basis of an access range of a frame memory from which the process task reads data and an instruction code converter configured to convert the plurality of process tasks to instruction codes executable in a pipeline on the basis of the processing delay amounts and the line memory sizes.
    Type: Grant
    Filed: September 7, 2010
    Date of Patent: April 2, 2013
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Yasuki Tanabe, Takashi Miyamori, Shunichi Ishiwata, Katsuyuki Kimura, Keiri Nakanishi, Masato Sumiyoshi, Ryuji Hada
  • Patent number: 8402434
    Abstract: There is disclosed a method and system for generating documentation for a GUI usage scenario. There is also disclosed a method and system for assembling a GUI script from a plurality of pre-scripted parts. In an embodiment, shadow objects are created to listen to and report activities of each GUI object of interest during a GUI usage session. The shadow objects may listen to shadowed GUI object activities during playback of the GUI script, or during a live GUI usage session. GUI object activities reported by the shadow objects are identified and converted into narrative language statements, using a pre-determined conversion list, to create human-readable documentation.
    Type: Grant
    Filed: October 21, 2008
    Date of Patent: March 19, 2013
    Assignee: International Business Machines Corporation
    Inventor: Alan John McLean
  • Patent number: 8402447
    Abstract: Various technologies and techniques are disclosed for transforming a sequential loop into a parallel loop for use with a transactional memory system. Open ended and/or closed ended sequential loops can be transformed to parallel loops. For example, a section of code containing an original sequential loop is analyzed to determine a fixed number of iterations for the original sequential loop. The original sequential loop is transformed into a parallel loop that can generate transactions in an amount up to the fixed number of iterations. As another example, an open ended sequential loop can be transformed into a parallel loop that generates a separate transaction containing a respective work item for each iteration of a speculation pipeline. The parallel loop is then executed using the transactional memory system, with at least some of the separate transactions being executed on different threads.
    Type: Grant
    Filed: July 25, 2011
    Date of Patent: March 19, 2013
    Assignee: Microsoft Corporation
    Inventors: John Joseph Duffy, Jan Gray, Yosseff Levanoni
  • Patent number: 8402450
    Abstract: A high level programming language provides a map transformation that takes a data parallel algorithm and a set of one or more input indexable types as arguments. The map transformation applies the data parallel algorithm to the set of input indexable types to generate an output indexable type, and returns the output indexable type. The map transformation may be used to fuse one or more data parallel algorithms with another data parallel algorithm.
    Type: Grant
    Filed: November 17, 2010
    Date of Patent: March 19, 2013
    Assignee: Microsoft Corporation
    Inventors: Paul F. Ringseth, Yosseff Levanoni, Weirong Zhu
  • Patent number: 8402409
    Abstract: Method and apparatus for generating an implementation of a program language circuit description for a programmable logic device (PLD) is described. In one example, the program language circuit description is analyzed to identify constructs indicative of dynamic function re-assignment. A hardware description of the program language circuit description is generated. The hardware description includes a plurality of implementations responsive to the identified constructs. Physical implementation data is generated from the hardware description. The physical implementation includes a plurality of partial configurations for the PLD based on the respective plurality of implementations in the hardware description.
    Type: Grant
    Filed: March 10, 2006
    Date of Patent: March 19, 2013
    Assignee: Xilinx, Inc.
    Inventors: Jorn W. Janneck, David B. Parlour, Paul R. Schumacher
  • Patent number: 8397222
    Abstract: Methods for constructing an Any-to-Any data machine (consisting of Any-to-Any data components and their environmental requirements) and an Any-to-Any code machine (consisting of Any-to-Any code components and their environmental requirements) and relating them together so that they harmoniously interact and so that the data Any-to-Any machine controls and is also acted upon by the code Any-to-Any machine so as to produce an Any-to-Any system that transforms data in a manner that is useful and which is analogous to the harmonious interaction of the Any-Any binary code and Any-to-Any transistor systems, and which handles data and transforms it in a sufficiently similar manner to the manner in which the human handles and transforms data that the human finds it easy and intuitive to operate, all supported by methods that enable data to be stored in a single logical grid structure that can accept and correctly relate, transmit and receive any data, together examples of methods to derive benefits from these inventi
    Type: Grant
    Filed: December 5, 2008
    Date of Patent: March 12, 2013
    Inventor: Peter D. Warren
  • Patent number: RE44327
    Abstract: An external object model is built into a comprehensive, drag-and-drop, dynamic, distributed object model, to offer its users lower total cost of ownership than do conventional user interface applications and application builders. A Windows® workstation user computer is provided with a quick, simple, easily-managed path to combinations of available applications on a network of systems, in such a way that the user can establish and exploit complex data relationships and software capabilities on the workstation without application installation, significant access effort, or specialized knowledge. Runtime binding prepares and links user forms and reports to application programs as desired, without preparatory steps. The definition and use of query objects to view concurrently multiple database tables offers the unique ability to combine fields from dissimilar database engines into a single view.
    Type: Grant
    Filed: February 12, 2009
    Date of Patent: June 25, 2013
    Assignee: Amstr. Investments 9 K.G., LLC
    Inventor: Alan A Katz