Translation Of Code Patents (Class 717/136)
  • Patent number: 7814468
    Abstract: 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: Grant
    Filed: April 20, 2005
    Date of Patent: October 12, 2010
    Assignee: Oracle America, Inc.
    Inventors: Yonghong Song, Xiangyun Kong
  • Patent number: 7813912
    Abstract: 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: Grant
    Filed: February 14, 2007
    Date of Patent: October 12, 2010
    Assignee: Xilinx, Inc.
    Inventor: Prasanna Sundararajan
  • Publication number: 20100257514
    Abstract: 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: Application
    Filed: April 3, 2009
    Publication date: October 7, 2010
    Applicant: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Onur Aciicmez, Xinwen Zhang, Jean-Pierre Seifert
  • Patent number: 7810086
    Abstract: 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: Grant
    Filed: June 30, 2005
    Date of Patent: October 5, 2010
    Assignee: Intel Corporation
    Inventors: Brian R. Murphy, Vijay S. Menon, Tatiana Shpeisman, Ali-Reza Adl-Tabataba, Leaf Petersen
  • Publication number: 20100251225
    Abstract: 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: Application
    Filed: March 25, 2010
    Publication date: September 30, 2010
    Applicant: FUJITSU LIMITED
    Inventor: Hiroyoshi NAKAYAMA
  • Publication number: 20100251223
    Abstract: 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: Application
    Filed: June 14, 2010
    Publication date: September 30, 2010
    Applicant: MANAGEMENT SERVICES GROUP, INC. d/b/a Global Technical Systems
    Inventors: Robert Stephen Gordy, Terry Spitzer
  • Patent number: 7805417
    Abstract: 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: Grant
    Filed: December 5, 2005
    Date of Patent: September 28, 2010
    Assignee: International Business Machines Corporation
    Inventors: Gary Paul Noble, Peter John Stretton
  • Patent number: 7805710
    Abstract: 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: Grant
    Filed: March 30, 2004
    Date of Patent: September 28, 2010
    Assignee: International Business Machines Corporation
    Inventor: Geraint North
  • Patent number: 7802231
    Abstract: 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: Grant
    Filed: April 30, 2004
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Donald Edward Baisley, Ravi Anthony Joseph Dirckze, Jonathan Virgil Ziebell, Russel Elliot Cole
  • Patent number: 7802238
    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: June 24, 2002
    Date of Patent: September 21, 2010
    Assignee: Invensys Systems, Inc.
    Inventor: Greg C. Clinton
  • Publication number: 20100235647
    Abstract: 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: Application
    Filed: March 12, 2010
    Publication date: September 16, 2010
    Applicant: Broadcom Corporation
    Inventor: Mark L. Buer
  • Patent number: 7797688
    Abstract: 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: Grant
    Filed: March 22, 2005
    Date of Patent: September 14, 2010
    Inventor: Saikumar V. Dubagunta
  • Patent number: 7797151
    Abstract: 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: Grant
    Filed: February 2, 2007
    Date of Patent: September 14, 2010
    Inventors: Darshana Apte, Theresa Wall, Phil Rector, Joseph David Barkley, Arvind Wadhawan
  • Publication number: 20100229160
    Abstract: 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: Application
    Filed: March 2, 2010
    Publication date: September 9, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Kazuaki Ishizaki
  • Patent number: 7793210
    Abstract: 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: Grant
    Filed: January 30, 2001
    Date of Patent: September 7, 2010
    Assignee: Oracle America, Inc.
    Inventors: Paul J. Rank, John C. Pampuch
  • Patent number: 7792666
    Abstract: 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: Grant
    Filed: April 4, 2007
    Date of Patent: September 7, 2010
    Assignee: Sony Computer Entertainment Inc.
    Inventors: Stewart Sargaison, Victor Suba
  • Patent number: 7793272
    Abstract: 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: Grant
    Filed: November 14, 2005
    Date of Patent: September 7, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jonathan J. Andrews, Geraint North
  • Patent number: 7793349
    Abstract: 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: Grant
    Filed: January 24, 2008
    Date of Patent: September 7, 2010
    Assignee: International Business Machines Corporation
    Inventor: Roger Kenneth Abrams
  • Patent number: 7793259
    Abstract: 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: Grant
    Filed: January 20, 2006
    Date of Patent: September 7, 2010
    Assignee: Microsoft Corporation
    Inventors: George G Robertson, Mary P Czerwinski, Robert A DeLine
  • Patent number: 7788648
    Abstract: 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: Grant
    Filed: February 28, 2005
    Date of Patent: August 31, 2010
    Assignee: International Business Machines Corporation
    Inventors: John Bossom, Eric McCully, Dekun Cao
  • Patent number: 7783467
    Abstract: 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: Grant
    Filed: December 11, 2006
    Date of Patent: August 24, 2010
    Assignee: Electronics and Telecommunications Research Institute
    Inventors: 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: 7783637
    Abstract: 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: Grant
    Filed: September 30, 2003
    Date of Patent: August 24, 2010
    Assignee: Microsoft Corporation
    Inventors: René Bitsch, Jakob Steen Hansen
  • Patent number: 7784036
    Abstract: 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: Grant
    Filed: June 8, 2005
    Date of Patent: August 24, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: Jung Tjong, Prakash Bettadapur
  • Patent number: 7784041
    Abstract: 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: Grant
    Filed: March 30, 2006
    Date of Patent: August 24, 2010
    Assignee: Oracle America, Inc.
    Inventors: Ioi K. Lam, Oleg A. Pliss
  • Publication number: 20100211936
    Abstract: 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: Application
    Filed: February 16, 2009
    Publication date: August 19, 2010
    Inventors: Jeffrey A. Schmitz, Timothy J. Wilmering
  • Publication number: 20100211937
    Abstract: 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: Application
    Filed: February 19, 2009
    Publication date: August 19, 2010
    Applicant: International Business Machines Corporation
    Inventors: Rajkishore Barik, Krishna Nandivada Venkata
  • Patent number: 7779397
    Abstract: 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: Grant
    Filed: August 29, 2005
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Amanda Silver, Paul A. Vick, Brian C. Beckman
  • Patent number: 7779394
    Abstract: 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: Grant
    Filed: May 11, 2005
    Date of Patent: August 17, 2010
    Assignee: Intertrust Technologies Corporation
    Inventors: James J. Homing, W. Olin Sibert, Robert E. Tarjan, Umesh Maheshwari, William G. Home, Andrew K. Wright, Lesley R. Matheson, Susan Owicki
  • Patent number: 7779382
    Abstract: 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: Grant
    Filed: December 10, 2004
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: Niels Jakob Rehof, Shaz Qadeer
  • Patent number: 7774763
    Abstract: 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: Grant
    Filed: June 22, 2005
    Date of Patent: August 10, 2010
    Assignee: EMC Corporation
    Inventor: Michael N. Robillard
  • Patent number: 7774195
    Abstract: 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: Grant
    Filed: April 29, 2005
    Date of Patent: August 10, 2010
    Assignee: Microsoft Corporation
    Inventors: Bernhard Kohlmeier, Lori A. Brownell, Wei Wu, Shenghua (Ed) Ye, Jordi Mola Marti, Jan Anders Nelson, Mohammed El-Gammal, Julie D. Bennett
  • Patent number: 7774746
    Abstract: 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: Grant
    Filed: April 19, 2006
    Date of Patent: August 10, 2010
    Assignee: Apple, Inc.
    Inventors: Philip Andrew Mansfield, Michael Robert Levy
  • Patent number: 7774700
    Abstract: 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: Grant
    Filed: June 20, 2006
    Date of Patent: August 10, 2010
    Assignee: Oracle International Corporation
    Inventor: Anguel Novoselsky
  • Patent number: 7770147
    Abstract: 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: Grant
    Filed: September 22, 2005
    Date of Patent: August 3, 2010
    Assignee: Adaptec, Inc.
    Inventors: Marc Spitzer, John Packer
  • Publication number: 20100192137
    Abstract: 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: Application
    Filed: January 23, 2009
    Publication date: July 29, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Derek B. Inglis, Marcel Mitran, Ali I. Sheikh, Kevin A. Stoodley
  • Patent number: 7765246
    Abstract: 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: Grant
    Filed: October 12, 2007
    Date of Patent: July 27, 2010
    Assignee: Oracle International Corporation
    Inventors: Subhransu Basu, Ananth Raghavan, Shrikanth Shankar, Vikram Shukla
  • Patent number: 7765579
    Abstract: 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: Grant
    Filed: September 6, 2005
    Date of Patent: July 27, 2010
    Assignee: Greencastle Technology, Inc.
    Inventor: David Robert Wallace
  • Patent number: 7761849
    Abstract: 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: Grant
    Filed: August 25, 2005
    Date of Patent: July 20, 2010
    Assignee: Microsoft Corporation
    Inventors: Norbert van Woerkom, Terry Farrell, Patrick Ryan, Gavin McKeown
  • Patent number: 7761844
    Abstract: 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: Grant
    Filed: April 21, 2006
    Date of Patent: July 20, 2010
    Assignee: UBS AG
    Inventors: Aniello Bove, Hansbeat Loacker
  • Patent number: 7760387
    Abstract: 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: Grant
    Filed: September 26, 2005
    Date of Patent: July 20, 2010
    Assignee: Ricoh Company, Ltd.
    Inventor: Shigeya Senda
  • Patent number: 7757221
    Abstract: 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: Grant
    Filed: September 30, 2005
    Date of Patent: July 13, 2010
    Assignee: Intel Corporation
    Inventors: Bixia Zheng, Cheng C. Wang, Ho-seop Kim, Mauricio Breternitz, Jr., Youfeng Wu
  • Patent number: 7757220
    Abstract: 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: Grant
    Filed: October 21, 2004
    Date of Patent: July 13, 2010
    Assignee: Discovery Machine, Inc.
    Inventors: Todd Griffith, Robert Ross, Sean Melody
  • Publication number: 20100175054
    Abstract: 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: Application
    Filed: January 4, 2010
    Publication date: July 8, 2010
    Inventors: Katarina Matusikova, Karl Quinn
  • Patent number: 7752613
    Abstract: 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: Grant
    Filed: December 5, 2006
    Date of Patent: July 6, 2010
    Assignee: Intel Corporation
    Inventors: Bolei Guo, Youfeng Wu
  • Patent number: 7752608
    Abstract: 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: Grant
    Filed: August 12, 2005
    Date of Patent: July 6, 2010
    Assignee: The United States of America as represented by the Administrator of the National Aeronautics and Space Administration
    Inventors: Michael G. Hinchey, James L. Rash, John D. Erickson, Denis Gracinin, Christopher A. Rouff
  • Publication number: 20100169868
    Abstract: 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: Application
    Filed: December 31, 2008
    Publication date: July 1, 2010
    Applicant: Microsoft Corporation
    Inventors: Jeremy P. Condit, Shaz Qadeer, Shuvendu K. Lahiri
  • Patent number: 7747991
    Abstract: 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: Grant
    Filed: November 14, 2005
    Date of Patent: June 29, 2010
    Assignee: Panasonic Corporation
    Inventor: Hirohisa Tanaka
  • Publication number: 20100161289
    Abstract: 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: Application
    Filed: December 18, 2008
    Publication date: June 24, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Alexander Sasha Stojanovic, Min Wei
  • Patent number: 7739672
    Abstract: 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: Grant
    Filed: October 6, 2005
    Date of Patent: June 15, 2010
    Assignee: Hitachi Software Engineering, Co., Ltd.
    Inventors: Akira Ioku, Tatsuo Isobe, Yoshiaki Morimoto, Shinichiro Kawasaki
  • Patent number: 7738448
    Abstract: 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: Grant
    Filed: December 29, 2005
    Date of Patent: June 15, 2010
    Assignee: Telefonaktiebolaget LM Ericsson (publ)
    Inventor: Martin Hans Renschler