Patents Examined by Chameli C. Das
  • Patent number: 7024664
    Abstract: A method of assembling executable instructions includes mapping a first file scope symbol table for a first source code file being assembled, the first file scope symbol table including a reference for each symbol declaration within each corresponding section of code, determining nested sections of code included in the first source code file, mapping a nested scope symbol table for each determined nested section of code, with each nested scope symbol table including a reference for each symbol declaration within each corresponding section of code and assembling a portion of an executable instruction that corresponds to a symbol reference included in a coded instruction, the portion of the executable instruction based on a symbol mapped by one of the symbol tables.
    Type: Grant
    Filed: April 22, 2002
    Date of Patent: April 4, 2006
    Assignee: Intel Corporation
    Inventor: Carl J. Beckmann
  • Patent number: 7017143
    Abstract: This invention provides a method and system for developing a software application program with user interfaces that make resource files external to the other compiled executable files such that the information from the resource file may be obtained at runtime as needed without the need for compilation. The external resource file may be edited at runtime to allow designers to modify the application's interface without having to depend on developers implement changes in the interface. This is achieved by providing resources in a markup language and routines that locate and parse the markup language text on the fly as an application executes. Compartmentalization of the effort in developing and porting an application is facilitated for protection of source code and better management of designers and developers working on different aspects of a software application due to the externalization of the resource files needed primarily by the designers.
    Type: Grant
    Filed: December 1, 1999
    Date of Patent: March 21, 2006
    Assignee: Microsoft Corporation
    Inventors: Felix G. T. I. Andrew, John D. Colleran, Ian M. Ellison-Taylor, Mark S. Carroll
  • Patent number: 7013456
    Abstract: A method and a computer for performance of the method. While executing a program on a computer, profileable events occurring in the instruction pipeline are detected. The instruction pipeline is directed to record profile information describing the profileable events essentially concurrently with the occurrence of the profileable events. The detecting and recording occur under control of hardware of the computer without software intervention.
    Type: Grant
    Filed: June 16, 1999
    Date of Patent: March 14, 2006
    Assignee: ATI International SRL
    Inventors: Korbin S. Van Dyke, Paul H. Hohensee, David L. Reese, John S. Yates, Jr., T. R. Ramesh, Shalesh Thusoo, Gurjeet Singh Saund, Stephen C. Purcell, Niteen Aravind Patkar
  • Patent number: 7010779
    Abstract: A system including spreadsheet sheets, makes calculations and data transformations, which is available through a programming interface, and conforms to the grammar and syntax of a target software development language is presented. The system includes an Object Model with Data Structures representing entities involved in spreadsheets. The system includes a Parser and Code Generator that extracts data from a body of spreadsheet data, instantiates instances of Data Structures of the Object Model to represent the spreadsheet data, parses the data and formulas contained in the cells of the spreadsheets, iterates through the instantiated instances of the Data Structures, and generates source code that performs the calculations and data transformations embodied in the spreadsheet data. The system includes a Calculation Engine with software base classes that implement the common structural and data access features of spreadsheet data, and further implement the operations of common spreadsheet functions and operators.
    Type: Grant
    Filed: August 15, 2002
    Date of Patent: March 7, 2006
    Assignee: Knowledge Dynamics, Inc.
    Inventors: Michael H. Rubin, Michael Robert Smialek
  • Patent number: 7003762
    Abstract: A computer-implemented system and method for handling run-time exceptions. Source code is provided as input to a compiler. The source code includes an exception branching statement and an exception catching statement. The compiler generates machine code from the source code. During execution of the machine code, an exception occurs and execution branches to the exception catching statement in accordance with the exception branching statement.
    Type: Grant
    Filed: August 1, 2002
    Date of Patent: February 21, 2006
    Assignee: SAS Institute Inc.
    Inventor: Steven E. Krueger
  • Patent number: 7000221
    Abstract: A script evaluator analyzes script code and identifies possible problems with respect to given browsers and given browser versions. When configuring the parameters of analysis of the script evaluator, the user may select versions of known browsers for which support is desired. The script evaluator may point out functions in the script code that are not supported by certain versions of selected browsers. The evaluator may also suggest alternative functions that may be supported by all desired browser versions. Help information may be provided to assist the user. The script evaluator may receive browser support and help information from a library. The library may be collected from the browser software vendors or may be supplied with the script evaluator. The script evaluator may also include an editor or may be part of an existing developer tool.
    Type: Grant
    Filed: July 31, 2002
    Date of Patent: February 14, 2006
    Assignee: International Business Machines Corporation
    Inventors: Kulvir Singh Bhogal, Hung The Dinh, Teng S. Hu, Mandeep Singh Sidhu
  • Patent number: 6996817
    Abstract: A method and system for versioning of applications is provided. A version of an application may be updated or rolled back transparently to the client. A list of resources in a current version of an application is created and compared to the list of resources in a new version. When a resource is not included in the current version but is included in the new version, a notation is made to include the resource in the new version. When an extra resource is in the current version but not in the new version, a notation is made to purge the resource so that it is not included in the new version. These notations may be created in a purge list used by the client to request the resources needed to change versions. No interaction is needed by the client to change versions.
    Type: Grant
    Filed: December 11, 2002
    Date of Patent: February 7, 2006
    Assignee: Valve Corporation
    Inventors: Derrick Jason Birum, Christopher Richard Newcombe, Paul David Jones, Richard Donald Ellis, Mikel Howard Thompson
  • Patent number: 6996807
    Abstract: A software monitoring and auditing system which determines the inventory of software products on a computer includes data reducer software which processes detailed software usage data gathered by a monitoring component of the software to create a condensed usage database. The reducer software contemporaneously converts the data records in a manner which reduces the amount of data records by at least a factor of 100, consuming less computer memory and allowing users of the software monitoring and auditing system to review usage data on a desktop PC or the like.
    Type: Grant
    Filed: November 27, 2000
    Date of Patent: February 7, 2006
    Assignee: Isogon Corporation
    Inventors: David Vardi, Per Hellberg, Robert Barritz, Gerald Cohen
  • Patent number: 6993759
    Abstract: Methods and systems consistent with the present invention provide an improved software development tool that includes a version control system that permits multiple programmers to work simultaneously on a single software project by maintaining a central repository containing a master copy of a software project and by managing versions of the software project that the programmers make through the development process. The improved software development tool enables a programmer to interact with the version control system by interacting with a diagram or diagram element that corresponds to a project, package, diagram, or class, thus facilitating the use of the version control system.
    Type: Grant
    Filed: April 20, 2001
    Date of Patent: January 31, 2006
    Assignee: Borland Software Corporation
    Inventors: Alexander Aptus, Dietrich Charisius, Peter Coad
  • Patent number: 6990662
    Abstract: A method for offloading execution load from a resource-constrained device to allow the device to run a resource intensive software program. A program is accessed using a first device and determines whether execution of the program will exceed resources of the first device. If the execution will exceed the resources of the first device, a load split is determined to split the program into a first portion and a second portion. The second portion of the program is offloaded to a second device, while the first portion of the program is retained on the first device. The first portion and second portion communicate via a network connection. Full program functionality is provided using the first device, wherein the functionality is provided by the first portion and second portion executing respectively on the first device and the second device.
    Type: Grant
    Filed: October 31, 2001
    Date of Patent: January 24, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Alan Messer, Ira Greenberg, Dejan Miljicic, Philippe Bernadat, Guangrui Fu
  • Patent number: 6986125
    Abstract: A functional testing and evaluation technique is provided employing an abstraction matrix that describes a complex software component to be tested. The abstraction matrix includes at least one test case scenario and mapped expected results therefore. Test cases are derived from the at least one test case scenario and used to test the software component, thereby generating test results. The test results are automatically evaluated using the abstraction matrix. The evaluating includes comparing a test case to the at least one test case scenario of the abstraction matrix and if a match is found, comparing the test result for that test case with the mapped expected result therefore in the abstraction matrix.
    Type: Grant
    Filed: October 23, 2001
    Date of Patent: January 10, 2006
    Assignee: International Business Machines Corporation
    Inventors: Joseph T. Apuzzo, John P. Marino, Curtis L. Hoskins, Timothy L. Race, Hemant R. Suri
  • Patent number: 6983449
    Abstract: A method for distributing software is provided. The method includes configuring a first software system of a software suite, such as by installing it on a processor. A first set of configuration data associated with the first software system is then stored. A second software system of the software suite is then configured, and a second set of configuration data associated with the second software system is then stored. Conflict resolution rules are then applied to the first set of configuration data and the second set of configuration data. The first set of configuration data and the second set of configuration data are then compared to determine whether any conflicts exist, and the first set of configuration data and the second set of configuration data are assembled for installation on one or more processors if no conflicts exist.
    Type: Grant
    Filed: March 15, 2002
    Date of Patent: January 3, 2006
    Assignee: Electronic Data Systems Corporation
    Inventor: Patrick Newman
  • Patent number: 6983458
    Abstract: The present invention provides a code optimizing method for a program language processing system which can delete an unnecessary duplicate multiphase type definition and can avoid an unnecessary multiphase type from being instantiated. In this language processing system, all preprocessed source programs to be used as a source for generating an object program are scanned, a duplicate data type definition is deleted from the source programs with reference to a data type definition table, arranged for one object program, for registering a data type definition for data or a function in the source programs, instantiation of a data type definition which has been instantiated as needed is suppressed to optimize the source programs, and the optimized source programs are output in units of translation. Since a code size is reduced by the optimization, a code execution speed increases, and a compile time and a link time can be shortened.
    Type: Grant
    Filed: June 29, 2000
    Date of Patent: January 3, 2006
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Kazushi Honda
  • Patent number: 6981245
    Abstract: Remote incremental program verification may be achieved by receiving content verified by at least one content provider, installing the content on a resource-constrained device, issuing the resource-constrained device to an end user, and allowing post-issuance installation of verified content on the resource-constrained device by a trusted post-issuance installer. The at least one content provider includes an applet provider, a device manufacturer, a device issuer, and a trusted post-issuance installer. The content includes at least one program unit, where each program unit comprises an Application Programming Interface (API) definition file and an implementation. Each API definition file defines items in its associated program unit that are made accessible to one or more other program units, and each implementation includes executable code corresponding to the API definition file. The executable code includes type-specific instructions and data.
    Type: Grant
    Filed: September 14, 2000
    Date of Patent: December 27, 2005
    Assignee: Sun Microsystems, Inc.
    Inventor: Judith E. Schwabe
  • Patent number: 6973643
    Abstract: Provided is a method, system, and program for handling errors in a service program including service functions capable of being called from application programs. A call is received for one service function from a service function call within one application program. A series of test operations are performed when executing the service function call. Each test operation returns an identifier if the test operation failed where each identifier is associated with one error state. If one test operation failed, then the identifier for the failed test operation is transferred to an error handling agent, wherein the error handling agent accesses error information associated with the identifier and generates error information describing a specific cause of the error that caused the test operation to fail and then returns to the application program with a generic return code.
    Type: Grant
    Filed: August 17, 2001
    Date of Patent: December 6, 2005
    Assignee: International Business Machines Corporation
    Inventors: Kevin Scott Goldsmith, Robert Guy Vining
  • Patent number: 6973638
    Abstract: A process modeling tool for graphically representing a process which includes transactions and events, and for generating computer code representing the process. A graphical tool creates a graphical representation of the transactions and events with graphical symbols, where one or more of such transactions and events may be of an asynchronous nature. A code generator generates computer code in response to information contained in the graphical representation. The computer code is executable on a computer system to cause the computer system to perform one or more operations which emulate the process shown in the graphical representation.
    Type: Grant
    Filed: November 28, 2000
    Date of Patent: December 6, 2005
    Assignee: International Business Machines Corporation
    Inventors: Dipayan Gangopadhyay, Prashant Gupta, Haleh Mahbod, Anant Vasant Prabhudesai, Srinivasan Suresh, William Wei Man Wong
  • Patent number: 6973644
    Abstract: A method and system is provided that allows a well-behaved program to execute more quickly than dynamically typed programming languages did in the past, thereby allowing a the dynamically typed language to be competitive with static declarative programming languages. A method includes converting lines of source code representing functions to byte-codes representing functions, selecting a subsequence of the byte-codes based on the byte-codes and the dynamic run-time properties of program variables, generating processor instructions in a compiler for the subsequence, and interpreting the byte-codes not contained in the subsequence.
    Type: Grant
    Filed: April 12, 2002
    Date of Patent: December 6, 2005
    Assignee: The MathWorks, Inc.
    Inventors: Charles G. Nylander, William M. McKeeman, Brett Baker, William Nell
  • Patent number: 6959432
    Abstract: A process and a system are used to verify that an object-oriented software component described in an extended programming language behaves correctly with respect to an abstract data model and specifications of the operations that may be performed on it The process and system also verify for an assembly of components that whenever an operation on a component is invoked, the correct conditions specified for that operation and component exist, and that specified properties hold for a component of the assembly.
    Type: Grant
    Filed: March 5, 2002
    Date of Patent: October 25, 2005
    Assignee: Escher Technologies, Ltd.
    Inventor: David Crocker
  • Patent number: 6959435
    Abstract: A compiler-directed speculative approach to resolve performance-degrading long latency events in an application is described. One or more performance-degrading instructions are identified from multiple instructions to be executed in a program. A set of instructions prefetching the performance-degrading instruction is defined within the program. Finally, at least one speculative bit of each instruction of the identified set of instructions is marked to indicate a predetermined execution of the instruction.
    Type: Grant
    Filed: September 28, 2001
    Date of Patent: October 25, 2005
    Assignee: Intel Corporation
    Inventors: Dz-Ching Ju, Youfeng Wu
  • Patent number: 6954923
    Abstract: An instruction processor to execute two instruction sets. Instructions are stored in different virtual memory pages of a single address space, and are coded for computers of two different instruction sets, and use of two different calling conventions. The instruction processor interprets instructions under, alternately, the first or second instruction set as directed by a first flag stored in table entries corresponding to memory pages for the instructions. The processor recognizes when program execution has transferred from a page of instructions using the first data storage convention to a page of instructions using the second data storage convention, as indicated by a second flag stored in the table entries, and then adjusts a data storage content of the computer from the first storage convention to the second data storage convention. A history record provides a record of a classification of a recently-executed instruction.
    Type: Grant
    Filed: July 7, 1999
    Date of Patent: October 11, 2005
    Assignee: ATI International SRL
    Inventors: John S. Yates, Jr., David L. Reese, Korbin S. Van Dyke