Translation Of Code Patents (Class 717/136)
-
Patent number: 7814468Abstract: A method for loop reformulation is provided such that a single exit ill-formed loop (SEIFL) can be reformulated into a reformulated code block that contains a transformed well-formed loop (TWFL). A SEIFL loop is a loop that can exit from the loop body of the loop. After the loop reformulation, the TWFL of the reformulated code block can only exit from the end of the loop. The reformulated code block will replace the SEIFL in the compiler's internal representation (IR) such that a more efficient executable machine code can be generated by optimizing the reformulated compiler's IR.Type: GrantFiled: April 20, 2005Date of Patent: October 12, 2010Assignee: Oracle America, Inc.Inventors: Yonghong Song, Xiangyun Kong
-
Patent number: 7813912Abstract: A method of profiling a hardware system can include compiling a high level language program into an assembly language representation of the hardware system and translating instructions of the assembly language representation of the hardware system into a plurality of executable, software models. The models can be implemented using a high level modeling language for use with cycle accurate emulation. The method also can include instrumenting at least one of the plurality of models with code that, when executed, provides operating state information relating to the model as output and indicating expected behavior of the circuit by executing the models in an emulation environment.Type: GrantFiled: February 14, 2007Date of Patent: October 12, 2010Assignee: Xilinx, Inc.Inventor: Prasanna Sundararajan
-
Publication number: 20100257514Abstract: Executable computer code sections can be stored in the same section of secondary memory (e.g., instruction cache) during execution time in order to reduce the observable changes to the state of the secondary memory, thereby enhancing the security of computing systems that use secondary memory in addition the primary (main) memory to support execution of computer code. In addition, size of code sections can also be effectively adjusted so that code sections that are mapped to the same section of the secondary memory appear to have the same size, thereby further reducing the observable changes to the state of the secondary memory. As a result, the security of computing system can be further enhanced. It should be noted that code sections can be effectively relocated to cause them to map to the same section of secondary memory. It will be appreciated that mapping code sections considered to be critical to security can be especially useful to improving security.Type: ApplicationFiled: April 3, 2009Publication date: October 7, 2010Applicant: SAMSUNG ELECTRONICS CO., LTD.Inventors: Onur Aciicmez, Xinwen Zhang, Jean-Pierre Seifert
-
Patent number: 7810086Abstract: A compiler can perform aggressive code motion optimization by respecting value dependence of safety values inserted into the intermediate representation of a computer program. In one embodiment, the present invention includes converting a computer program into an intermediate representation, the intermediate representation containing at least one safety check ensuring the safety of at least one dangerous instruction. In one embodiment, the invention further includes defining a safety value in the intermediate representation as the safety check and including the safety value as a safety argument of the dangerous instruction. In one embodiment, it is determined that the safety check is redundant. In response, in one embodiment, the invention includes updating the safety argument of the dangerous instruction, and eliminating the safety check from the intermediate representation during the safety check elimination optimization. Other embodiments are described and claimed.Type: GrantFiled: June 30, 2005Date of Patent: October 5, 2010Assignee: Intel CorporationInventors: Brian R. Murphy, Vijay S. Menon, Tatiana Shpeisman, Ali-Reza Adl-Tabataba, Leaf Petersen
-
Publication number: 20100251225Abstract: A recording medium storing a computer readable resource-bound program for instructing the computer to execute processing, the resource-bound program including receiving an execution start instruction, initiating the executable program when the execution start instruction is an execution instruction for the executable program including a resource used for generating an executable program, and extracting and outputting the resource when the execution start instruction is an output instruction of the resource.Type: ApplicationFiled: March 25, 2010Publication date: September 30, 2010Applicant: FUJITSU LIMITEDInventor: Hiroyoshi NAKAYAMA
-
Publication number: 20100251223Abstract: A Veil program analyzes the source code and/or data of an existing sequential target program without user interaction and determines how best to distribute the target program and data among the processing elements of a multi-processing element computing system. The Veil program analyzes source code loops, data sizes and types to prepare a set of distribution attempts or strategies, whereby each strategy is run under a run-time evaluation system and evaluated to determine the optimal decomposition and distribution across the available processing elements.Type: ApplicationFiled: June 14, 2010Publication date: September 30, 2010Applicant: MANAGEMENT SERVICES GROUP, INC. d/b/a Global Technical SystemsInventors: Robert Stephen Gordy, Terry Spitzer
-
Patent number: 7805417Abstract: A data storage system and method for operating the data storage system. The data storage system includes an active data store that contains stored data, a rules engine, and a unified container layer. The rules engine receives a first portion of the stored data from the active data store and apply at least one rule to modify the received first portion of the stored data, resulting in a generation of modified data by the rules engine. The unified container layer: receives and validates the modified data generated by the rules engine, transmits the validated modified data to the active data store, validates external data received from an external source that is external to the data storage system, and transmits the validated external data to the active data store.Type: GrantFiled: December 5, 2005Date of Patent: September 28, 2010Assignee: International Business Machines CorporationInventors: Gary Paul Noble, Peter John Stretton
-
Patent number: 7805710Abstract: Subject program code is translated to target code in basic block units at run-time in a process wherein translation of basic blocks is interleaved with execution of those translations. A shared code cache mechanism is added to persistently store subject code translations, such that a translator may reuse translations that were generated and/or optimized by earlier translator instances.Type: GrantFiled: March 30, 2004Date of Patent: September 28, 2010Assignee: International Business Machines CorporationInventor: Geraint North
-
Patent number: 7802231Abstract: An embodiment of the present invention is a technique for translating a business rule. An operation for a rule to authorize a provision of information is created. A current container is established. A propositional expression in the rule describing the provision of the information is processed. If the current container is null, a context for the propositional expression is recorded as null, else an object type in the current container is recorded as a resulting context from the propositional expression.Type: GrantFiled: April 30, 2004Date of Patent: September 21, 2010Assignee: Microsoft CorporationInventors: Donald Edward Baisley, Ravi Anthony Joseph Dirckze, Jonathan Virgil Ziebell, Russel Elliot Cole
-
Patent number: 7802238Abstract: 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: GrantFiled: June 24, 2002Date of Patent: September 21, 2010Assignee: Invensys Systems, Inc.Inventor: Greg C. Clinton
-
Publication number: 20100235647Abstract: A system and method for secure processing is provided, wherein a monitor application is injected into a secure application binary within the security perimeter of a secure processor. The components of the monitor application are injected into different portions of the application binary utilizing a seed value. In this manner, the positioning of the monitor application in the application binary is altered each time the application binary is booted. After the monitor application is inserted into the application binary, the secure process is passed to the host processor for execution. During execution of the secure process, a system and method is provided for the monitor application to communicate, to the secure processor, attempts to tamper with or attack the secure process.Type: ApplicationFiled: March 12, 2010Publication date: September 16, 2010Applicant: Broadcom CorporationInventor: Mark L. Buer
-
Patent number: 7797688Abstract: A method, system, and computer readable medium for integrating applications in multiple languages comprises receiving properties related to an application in an original language, importing source files related to the application, receiving classes related to the source files, mapping data types related to the classes, receiving properties related to an application in a target language, and generating integration classes related to the data types.Type: GrantFiled: March 22, 2005Date of Patent: September 14, 2010Inventor: Saikumar V. Dubagunta
-
Patent number: 7797151Abstract: A translation tool that facilitates translation of a software product into multiple target human languages without requiring recompilation of any binary deliverables. The translation tool is installed by an end user who wishes to translate the software product into the target human language. The end user does not need any programming knowledge. The translator tool extracts all the strings from various sources in the software product, and displays them on a UI to a translator or exports them to a spreadsheet file. The translator translates all the strings via the UI or by modifying the spreadsheet file and saves the translations. The translator tool uses an MSI utility to package the translated deliverables into an installer. The resulting set of install files are now in the target language and can be deployed without having to recompile any of the binary files (EXEs, DLLs) or other content not requiring translation.Type: GrantFiled: February 2, 2007Date of Patent: September 14, 2010Inventors: Darshana Apte, Theresa Wall, Phil Rector, Joseph David Barkley, Arvind Wadhawan
-
Publication number: 20100229160Abstract: A method, computer system, and computer readable article of manufacture for converting a first program code in a multi-threaded program into a second program code which causes less lock contention. A processing unit determines whether the first program code includes either a first class having a method call to a third class that operates while taking synchronization by locking, or a second class inheriting a parent class that operates while taking synchronization by locking. If the first class, then it is converted into a class with a method call to a concurrent operation executable class that is functionally equivalent and a shorter lock holding section. If the second class, then it is converted into a class with a method call to a concurrent operation executable class that is functionally equivalent to that of the parent class, and a shorter lock holding section.Type: ApplicationFiled: March 2, 2010Publication date: September 9, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Kazuaki Ishizaki
-
Patent number: 7793210Abstract: A method and apparatus is provided for enabling a spreadsheet program with formula support on small devices (like PDAs) while minimizing the amount of memory space used by the program and the accompanying compiled code during transfer of files from the desktop to the small devices. The user can download a spreadsheet file from the desktop to the small device via a conduit. A conduit is any 2-way communication device which connects a desktop to a small device and allows the transfer of data. Conduit software can convert the data to be transferred into a format understandable by both the desktop and PDA programs. The conduit software can also evaluate and parse the formulas and functions needed by the current file before the transfer and generate compiled code for the functions needed by the current file before transfer.Type: GrantFiled: January 30, 2001Date of Patent: September 7, 2010Assignee: Oracle America, Inc.Inventors: Paul J. Rank, John C. Pampuch
-
Patent number: 7792666Abstract: Emulation systems and method involving invalidating blocks of translated code in emulation of a target system on a host system in are disclosed. One or more blocks of target system code are translated by the host system to produce one or more corresponding blocks of translated code. The host system uses one or more native target system instructions as hints to invalidate or potentially invalidate one or more blocks of translated code. Blocks containing such hints cause the host system to mark some or all of the one or more blocks of translated code as potentially invalid. The potentially invalid blocks may be re-translated immediately. Alternatively, the potentially invalid blocks may be checked to see if the code in these blocks has been modified. If the code has been modified, corresponding blocks of target code may be re-translated.Type: GrantFiled: April 4, 2007Date of Patent: September 7, 2010Assignee: Sony Computer Entertainment Inc.Inventors: Stewart Sargaison, Victor Suba
-
Patent number: 7793272Abstract: In program code conversion, particularly dynamic binary translation, subject code 17 is translated into target code 21 through a translator 19 for execution on a target processor 13. Selected portions of subject code, such as library functions SFuncA 172, are replaced by instead executing a portion of native code such as a native function NFuncA 282. The native function is native to the target processor 13. The method further includes executing a subject code portion such as a subject function SFuncB 173 in place of a native code portion such library function NFuncB 283. This reverse binding technique substitutes subject code for selected portions of the native code, particularly native library functions in order to keep control within the translator 19. This helps to maintain an accurate subject state in the translator 19, amongst other advantages.Type: GrantFiled: November 14, 2005Date of Patent: September 7, 2010Assignee: International Business Machines CorporationInventors: Jonathan J. Andrews, Geraint North
-
Patent number: 7793349Abstract: Disclosed as a system and method for providing enhanced security to processes running on a data processing system. The disclosed system and method selectively revokes execute privileges from memory pages being used for stacks of susceptible processes running on the data processing system. By selectively resetting execute privileges on a per page and per process basis, the system and method maintains system performance and provides enhanced security to processes running on the data processing system.Type: GrantFiled: January 24, 2008Date of Patent: September 7, 2010Assignee: International Business Machines CorporationInventor: Roger Kenneth Abrams
-
Patent number: 7793259Abstract: A method and system for tracking and processing user interaction information from multiple computing devices. Individual computing devices collect user interaction information corresponding to user interaction with discrete units of a set of data, such as software programming code. The individual information is collected and processed to generate a cumulative set of user interaction information that is transmitted back to the client computing devices. The client computing devices can then provide various visual interfaces corresponding to the processed user interaction data.Type: GrantFiled: January 20, 2006Date of Patent: September 7, 2010Assignee: Microsoft CorporationInventors: George G Robertson, Mary P Czerwinski, Robert A DeLine
-
Patent number: 7788648Abstract: A system and a method for localization of a base language computer software product into a target language computer software product. Input resource files were copied into a source directory, and synchronized with a reference directory and a synchronization directory; the resource strings to be translated in the resource files in the synchronization directory are flagged, and translated; the changes are tracked in the reference directory.Type: GrantFiled: February 28, 2005Date of Patent: August 31, 2010Assignee: International Business Machines CorporationInventors: John Bossom, Eric McCully, Dekun Cao
-
Patent number: 7783467Abstract: A digital system design method uses a higher programming language. In order to realize a digital system, an algorithm is verified based on a program written by the higher programming language and a program is programmed considering the higher programming language-hardware characteristics before the program is written in the lower programming language, and thus conversion into the lower programming language may be easily performed.Type: GrantFiled: December 11, 2006Date of Patent: August 24, 2010Assignee: Electronics and Telecommunications Research InstituteInventors: Jung-Bo Son, Hee-Jung Yu, Eun-Young Choi, Chan-Ho Yoon, Il-Gu Lee, Deuk-Su Lyu, Tae-hyun Jeon, Seung-Wook Min, Kwhang-Hyun Ryu, Kyoung-Ju Noh, Yun-Joo Kim, Kyoung-Hee Song, Sok-Kyu Lee, Seung-Chan Bang, Seung-Ku Hwang
-
Patent number: 7783637Abstract: A method stores and uses labels in a business solution software program having multiple languages. Instead of having a single resource file for each language, the information related to the labels is stored in a database. Each label is assigned its own unique identifier in a label ID structure, that also contains information related to how the label is used in the system. The text for the label is stored in a separate label text structure. The label text structure contains the text of the label in all of the available languages. When a new label is written the developer can search the current labels to find a label that matches the intended use. If a match is found for the desired text the label is duplicated to the new label. If no match is found a new label must be generated.Type: GrantFiled: September 30, 2003Date of Patent: August 24, 2010Assignee: Microsoft CorporationInventors: René Bitsch, Jakob Steen Hansen
-
Patent number: 7784036Abstract: Methods and systems for transforming a complex representation of computer code into a simplified representation of computer code are described. Parse nodes in a parse graph are traversed. Selected information contained within the parse nodes is hidden to create condensed parse nodes. The hiding prevents further processing of the selected information. Selected complex patterns in the parse graph are simplified to create simplified parse graph patterns. Branches on an AND/OR command tree are created from the parse nodes, the condensed parse nodes, and the simplified parse graph patterns.Type: GrantFiled: June 8, 2005Date of Patent: August 24, 2010Assignee: Cisco Technology, Inc.Inventors: Jung Tjong, Prakash Bettadapur
-
Patent number: 7784041Abstract: A method is disclosed for reducing dynamic pauses during dynamic compilation. Applications running on a system detect the rendering of dynamic output to a user. The dynamic output represents a change in visual or audio data while any application is running. When an application detects such output it notifies the system, which monitors the frequency of the dynamic output. If the frequency of the dynamic output exceeds a threshold, the system informs a compiler on the system to suspend compilation. Compilation normally occurs when an interpreter on the system is instructed to pass processing control to the compiler. One way this occurs is if a method currently being processed by the interpreter has been marked for compilation. Thus, in order to suspend compilation, the compiler ceases to mark methods for compilation so that the interpreter will not be instructed to pass processing control to the compiler.Type: GrantFiled: March 30, 2006Date of Patent: August 24, 2010Assignee: Oracle America, Inc.Inventors: Ioi K. Lam, Oleg A. Pliss
-
Publication number: 20100211936Abstract: A computer system having stored in memory a set of executable software tools that include both producer tools and consumer tools, wherein one or more of the tools may be both a producer tool and a consumer tool, a model repository, and a set of software engines that include hybrid models each bridging semantics of a corresponding producer tool or a corresponding consumer tool that is importing or exporting to or from a neutral model representation of the information, wherein instantiations of the neutral models reside in the model repository.Type: ApplicationFiled: February 16, 2009Publication date: August 19, 2010Inventors: Jeffrey A. Schmitz, Timothy J. Wilmering
-
Publication number: 20100211937Abstract: Techniques for representing a program are provided. The techniques include creating one or more sub-variables for each of one or more variables in the program, and maintaining a single size of each of the one or more variables throughout a life-span of each of the one or more variables. Additionally, techniques for performing register allocation are also provided. The techniques include representing bit-width information of each of one or more variables in a powers-of-two representation, wherein the one or more variables comprise one or more variables in a program, coalescing the one or more variables, packing the one or more coalesced variables, and using the one or more packed variables to perform register allocation.Type: ApplicationFiled: February 19, 2009Publication date: August 19, 2010Applicant: International Business Machines CorporationInventors: Rajkishore Barik, Krishna Nandivada Venkata
-
Patent number: 7779397Abstract: A computer-implemented system for accessing data stored in a computer-readable format comprises a data source indicator that identifies least one datum of a data source to be typed. The system also includes a type definition component that defines a strongly typed view of the at least one datum. Methods of using the system are also provided.Type: GrantFiled: August 29, 2005Date of Patent: August 17, 2010Assignee: Microsoft CorporationInventors: Henricus Johannes Maria Meijer, Amanda Silver, Paul A. Vick, Brian C. Beckman
-
Patent number: 7779394Abstract: Systems and methods are disclosed for protecting a computer program from unauthorized analysis and modification. Obfuscation transformations can be applied to the computer program's local structure, control graph, and/or data structure to render the program more difficult to understand and/or modify. Tamper-resistance mechanisms can be incorporated into the computer program to detect attempts to tamper with the program's operation. Once an attempt to tamper with the computer program is detected, the computer program reports it to an external agent, ceases normal operation, and/or reverses any modifications made by the attempted tampering. The computer program can also be watermarked to facilitate identification of its owner. The obfuscation, tamper-resistance, and watermarking transformations can be applied to the computer program's source code, object code, or executable image.Type: GrantFiled: May 11, 2005Date of Patent: August 17, 2010Assignee: Intertrust Technologies CorporationInventors: James J. Homing, W. Olin Sibert, Robert E. Tarjan, Umesh Maheshwari, William G. Home, Andrew K. Wright, Lesley R. Matheson, Susan Owicki
-
Patent number: 7779382Abstract: Validity of one or more assertions for any concurrent execution of a plurality of software instructions with at most k?1 context switches can be determined. Validity checking can account for execution of the software instructions in an unbounded stack depth scenario. A finite data domain representation can be used. The software instructions can be represented by a pushdown system. Validity checking can account for thread creation during execution of the plurality of software instructions.Type: GrantFiled: December 10, 2004Date of Patent: August 17, 2010Assignee: Microsoft CorporationInventors: Niels Jakob Rehof, Shaz Qadeer
-
Patent number: 7774763Abstract: An improved multi-tasking executable program has executable code which includes a main section defined by a main portion of source code, and a set of task sections defined by a set of task portions of the source code. Each task section has (i) a “jump_to_address” section defined by expansion of a “jump_to_address” macro of the source code, and (ii) multiple entry points defined by multiple expansions of a “breakout” macro of the source code. When the executable code is executed by a processor of the subsystem, the main section is configured to invoke each task section in a cyclical manner, and the “jump_to_address” section of each task section is configured to jump execution to one of the multiple entry points of that task section.Type: GrantFiled: June 22, 2005Date of Patent: August 10, 2010Assignee: EMC CorporationInventor: Michael N. Robillard
-
Patent number: 7774195Abstract: A localization platform is used to localize data to one or more distinct markets. A matching component receives data to be localized and accesses different localization components and returns localized data corresponding to the input data. A data gathering component receives localized content from an input source that is external to the localization platform along with metadata that identifies the particular input source that provided the localized content. The data gathering component then only allows the particular input source that provided the localized content to modify that localized content.Type: GrantFiled: April 29, 2005Date of Patent: August 10, 2010Assignee: Microsoft CorporationInventors: Bernhard Kohlmeier, Lori A. Brownell, Wei Wu, Shenghua (Ed) Ye, Jordi Mola Marti, Jan Anders Nelson, Mohammed El-Gammal, Julie D. Bennett
-
Patent number: 7774746Abstract: Generating code is disclosed. A specification of one or more translation patterns is received. The one or more translation patterns are used to generate at least a portion of code associated with a translator. Using the one or more translation patterns to generate at least a portion of code associated with the translator results in the translator being configured to create a target object model. Creating the target object model includes populating one or more elements of the target object model in a processing order at least in part associated with an order of elements in the one or more translation patterns.Type: GrantFiled: April 19, 2006Date of Patent: August 10, 2010Assignee: Apple, Inc.Inventors: Philip Andrew Mansfield, Michael Robert Levy
-
Patent number: 7774700Abstract: A method and apparatus is provided for partial evaluation of XML queries for program analysis. An executable version of a first body of instructions that conforms to an XML computer language, such as XSLT, is generated. The executable version may include trace instructions for collecting information about executing the executable version against representative data, such as an XML schema document. This execution causes the generation of an execution graph, which may be optimized by the collected information. Based on the execution graph, a second body of instructions is generated that conforms to a different computer language, such as XQuery. Subsequently, the second body of instructions may be applied against XML documents that conform to the same schema as the representative data. By generating the second body of instructions before source XML documents are received, several optimizations may be made that greatly decrease the time for querying and/or transforming XML documents.Type: GrantFiled: June 20, 2006Date of Patent: August 10, 2010Assignee: Oracle International CorporationInventor: Anguel Novoselsky
-
Patent number: 7770147Abstract: A method for generating hardware description language source files is provided. The method includes extracting an input/output (I/O) list and building a port list declaration file from the I/O list. The method also includes building a default instantiation file according to renaming rules and interpreting coding constructs to determine both variable types and sizes. The method further includes generating a sensitivity list.Type: GrantFiled: September 22, 2005Date of Patent: August 3, 2010Assignee: Adaptec, Inc.Inventors: Marc Spitzer, John Packer
-
Publication number: 20100192137Abstract: A computer readable storage medium is provided having executable instructions stored thereon for executing a method of operating a computing system, in which an inner virtual machine translates first instructions, which are supported by the inner virtual machine, into second instructions, which are supported by an outer virtual machine. The method includes encoding, in the inner virtual machine, third instructions into the second instructions into which the first instructions are translated, the third instructions including hints for facilitating an execution of the second instructions, and, in an event the hints are supported by the outer virtual machine, initiating the execution of the second instructions while utilizing the hints by the outer virtual machine to achieve an increased efficiency of the execution of the second instructions.Type: ApplicationFiled: January 23, 2009Publication date: July 29, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Derek B. Inglis, Marcel Mitran, Ali I. Sheikh, Kevin A. Stoodley
-
Patent number: 7765246Abstract: The concept of portioning is expanded with a variety of techniques. In particular, one technique involves partitioning an object at multiple levels, where at least one of the levels uses list-based partitioning. Further, a partitioning technique is provided which involves storing a data item in a default partition when the item does not map to any one of the list-based partitions for which a key value group has been defined. Techniques are also provided for efficiently splitting a partition.Type: GrantFiled: October 12, 2007Date of Patent: July 27, 2010Assignee: Oracle International CorporationInventors: Subhransu Basu, Ananth Raghavan, Shrikanth Shankar, Vikram Shukla
-
Patent number: 7765579Abstract: To address security that can arise in information systems, the present invention uses novel methods and/or systems to enhance security in information systems, using a new way to deploy selected security policies. Instead of trying to modify a whole binary file all at once to add in code to implement additional security policies, the current invention modifies the code in memory in a piecemeal, as-needed fashion.Type: GrantFiled: September 6, 2005Date of Patent: July 27, 2010Assignee: Greencastle Technology, Inc.Inventor: David Robert Wallace
-
Patent number: 7761849Abstract: Recovery of localization data is provided between versions of a software product. A first resource is identified that is associated with a first version of the software product. A second resource is identified that is associated with a second version of the software product. A first resource identifier associated the first resource is different from a second resource identifier associated with the second resource. The first resource is mapped to the second resource when the second resource is found to be a shifted version of the first resource. The localization data corresponding to the first resource from the first version is migrated to the second version and the localization data is associated with the second resource from the second version when the second resource is a shifted version of the first resource.Type: GrantFiled: August 25, 2005Date of Patent: July 20, 2010Assignee: Microsoft CorporationInventors: Norbert van Woerkom, Terry Farrell, Patrick Ryan, Gavin McKeown
-
Patent number: 7761844Abstract: A template-driven system for generating platform-specific artifacts, such as program code, from platform-independent service models is described. The system comprises a template storage with platform-specific templates, each template including platform-specific model transformation information; a repository with a plurality of at least essentially platform-independent service model elements and one or more service models modeled from the model elements; and a generator adapted to generate platform-specific artifacts by applying the transformation information included in the templates to the service models.Type: GrantFiled: April 21, 2006Date of Patent: July 20, 2010Assignee: UBS AGInventors: Aniello Bove, Hansbeat Loacker
-
Patent number: 7760387Abstract: In an image forming device, a hardware performs operations to image data. An image memory handler performs allocation of a memory to software execution entities which execute the operations, and performs execution control of the software execution entities. A processing part manages as queues operation specifications to respective functions of the hardware demanded from the software execution entities, and performs execution control of the operation specifications independently of the image memory handler.Type: GrantFiled: September 26, 2005Date of Patent: July 20, 2010Assignee: Ricoh Company, Ltd.Inventor: Shigeya Senda
-
Patent number: 7757221Abstract: A method and apparatus for dynamic binary translator to support precise exceptions with minimal optimization constraints. In one embodiment, the method includes the translation of a source binary application generated for a source instruction set architecture (ISA) into a sequential, intermediate representation (IR) of the source binary application. In one embodiment, the sequential IR is modified to incorporate exception recovery information for each of the exception instructions identified from the source binary application to enable a dynamic binary translator (DBT) to represent exception recovery values as regular values used by IR instructions. In one embodiment, the sequential IR may be optimized with a constraint on movement of an exception instruction downward past an irreversible instruction to form a non-sequential IR. In one embodiment, the non-sequential IR is optimized to form a translated binary application for a target ISA. Other embodiments are described and claimed.Type: GrantFiled: September 30, 2005Date of Patent: July 13, 2010Assignee: Intel CorporationInventors: Bixia Zheng, Cheng C. Wang, Ho-seop Kim, Mauricio Breternitz, Jr., Youfeng Wu
-
Patent number: 7757220Abstract: A means for exporting a Task-Method-Knowledge (TMK) hierarchy is disclosed using XML as an intermediate file format. Using a computer interface, a user selects the TMK hierarchy, or portion of a TMK hierarchy, to export. The elements of the selected are written to a XML document using an XML schema specifically designed for the task. The order of element export assures that elements and relationships between elements are complete. The exported hierarchy as an XML document is transported to another XML hierarchy and imported. The user selects a receiving TMK project on the receiving system and resolves any naming conflicts.Type: GrantFiled: October 21, 2004Date of Patent: July 13, 2010Assignee: Discovery Machine, Inc.Inventors: Todd Griffith, Robert Ross, Sean Melody
-
Publication number: 20100175054Abstract: A system and method for transforming a human-readable Unified Mark-Up Language (UML) model having a plurality of packages for design purposes into a machine-readable Web Ontology Language (OWL) representation having a plurality of OWL namespaces or a plurality of OWL documents for controlling network elements in a telecommunications network. A processor translates the human-readable UML model into one or more machine-readable OWL ontologies. In one embodiment, the processor produces one ontology (one file) with several namespaces. Thus, the translated ontology corresponds to the UML model, and each UML package in the UML model corresponds to a namespace. In another embodiment, the processor produces several ontologies (several files) corresponding to the UML packages in the UML model, wherein each ontology has just one namespace for its elements. The UML model in this embodiment corresponds to a base ontology importing all created ontologies.Type: ApplicationFiled: January 4, 2010Publication date: July 8, 2010Inventors: Katarina Matusikova, Karl Quinn
-
Patent number: 7752613Abstract: A method and apparatus for disambiguating in a dynamic binary translator is described. The method comprises selecting a code segment for load-store memory disambiguation based at least in part on a measure of likelihood of frequency of execution of the code segment; heuristically identifying one or more ambiguous memory dependencies in the code segment for disambiguation by runtime checks; based at least in part on inspecting instructions in the code segment, and using a pointer analysis of the code segment to identify all other ambiguous memory dependencies that can be removed by the runtime checks.Type: GrantFiled: December 5, 2006Date of Patent: July 6, 2010Assignee: Intel CorporationInventors: Bolei Guo, Youfeng Wu
-
Patent number: 7752608Abstract: Systems, methods and apparatus are provided through which in some embodiments, domain knowledge is translated into a knowledge-based system. In some embodiments, a formal specification is derived from rules of a knowledge-based system, the formal specification is analyzed, and flaws in the formal specification are used to identify and correct errors in the domain knowledge, from which a knowledge-based system is translated.Type: GrantFiled: August 12, 2005Date of Patent: July 6, 2010Assignee: The United States of America as represented by the Administrator of the National Aeronautics and Space AdministrationInventors: Michael G. Hinchey, James L. Rash, John D. Erickson, Denis Gracinin, Christopher A. Rouff
-
Publication number: 20100169868Abstract: This document describes a unified type checker and property checker for a low level program's heap and its types. The type checker can use the full power of the property checker to express and verify subtle, program specific type and memory safety invariants well beyond what the native low level program system can check. Meanwhile, the property checker can rely on the type checker to provide structure and disambiguation for the program's heap, enabling more concise and more powerful type-based specifications. This approach makes use of a fully automated Satisfiability Modulo Theories (SMT) solver and a decision procedure for checking type safety, which means that the programmer's only duty is to provide high-level type and property annotations as part of the original program's source.Type: ApplicationFiled: December 31, 2008Publication date: July 1, 2010Applicant: Microsoft CorporationInventors: Jeremy P. Condit, Shaz Qadeer, Shuvendu K. Lahiri
-
Patent number: 7747991Abstract: Noting that there is a case where a type of a pointer “this” in a member function can be specified, the present invention provides a program converting method in which a virtual function call can be converted into a direct function call, and by which improvement of execution performance as well as reduction of a code size of a program can be achieved. The program converting method is a method for converting a program described in an object-oriented language, including: analyzing, in the program, a type of an instance by which a method is called; extracting, from a definition of the method, a virtual method call which is called by the instance; and converting, based on the type of the instance analyzed by the analyzing, the virtual method call extracted by the extracting, into a direct method call.Type: GrantFiled: November 14, 2005Date of Patent: June 29, 2010Assignee: Panasonic CorporationInventor: Hirohisa Tanaka
-
Publication number: 20100161289Abstract: A framework may be provided for facilitating adoption of mathematical and logical solvers. A model, representing a problem, may be defined. The model may be defined: via a series of statements in a type safe common-language-specification compliant modeling language; via an intermediate format; or via a series of calls to a standardized application program interface. The framework may translate the defined model to an intermediate format, which many solvers may understand. The framework may provide a number of solver-related services including, but not limited to, services for creating a model, analyzing a model, selecting a well-suited solver based on analysis of a model, decomposing a model into multiple sub-models and providing the multiple sub-models to multiple solvers as multiple parallel threads, data binding, simulation, and post optimality analysis.Type: ApplicationFiled: December 18, 2008Publication date: June 24, 2010Applicant: MICROSOFT CORPORATIONInventors: Alexander Sasha Stojanovic, Min Wei
-
Patent number: 7739672Abstract: Power consumption can be suppressed while maintaining an appropriate execution speed. The information processor has an interpreter for interpreting a source program or intermediate language program and a run-time translator for translating the program into a machine language program native to the computer. The information processor comprises a power-saving request monitor for monitoring whether or not there is a power-saving request from an input interface or a predetermined power-saving request in a given memory, and a power-saving translation controller. The power-saving request makes a request for suppression of the power consumed by the processor. The power-saving translation controller makes a decision as to whether the run-time translator executes run-time translation of the program according to whether there is the power-saving request. Based on the result of the decision, the translation controller instructs the run-time translator to execute the run-time translation.Type: GrantFiled: October 6, 2005Date of Patent: June 15, 2010Assignee: Hitachi Software Engineering, Co., Ltd.Inventors: Akira Ioku, Tatsuo Isobe, Yoshiaki Morimoto, Shinichiro Kawasaki
-
Patent number: 7738448Abstract: A signaling method reduces bandwidth requirements and signaling delays normally associated with sending text-based signaling messages over a wireless links. An application at a transmitting endpoint generates and sends a binary-encoded signaling message, along with a binary interpreter that enables the receiving endpoint or SIP server to construct a text-based message from the binary encoded message. The binary-encoded signaling message may include references to a saved state, or to a dictionary to enable compression of the message. The signaling method can be used with any text-based signaling protocol, such as the Session Initiation Protocol, the Session Description Protocol, and the Real Time Streaming Protocol.Type: GrantFiled: December 29, 2005Date of Patent: June 15, 2010Assignee: Telefonaktiebolaget LM Ericsson (publ)Inventor: Martin Hans Renschler