Patents Examined by Tuan Anh Vu
  • Patent number: 8307352
    Abstract: A computer implemented method, data processing system, and computer usable program are provided by the aspects of the present invention. Aspects of the present invention identify required classes of a software program in the import statements in the source code. Next, the aspects of the present invention identify an element in a classpath environment variable that contain only the required classes and generate a new classpath environment variable with the identified element. Aspects of the present invention then store the new classpath environment variable in a classpath file that is specific to the software program for subsequent invocation.
    Type: Grant
    Filed: May 27, 2008
    Date of Patent: November 6, 2012
    Assignee: International Business Machines Corporation
    Inventors: Jeffry Richard Mausolf, Kimberly Ann Stephens
  • Patent number: 8302073
    Abstract: Moving dependencies along with source code is provided. A set of dependencies are identified for the source code in response to a user moving the source code from an origin project to a destination project. A determination is made whether a number of dependencies from the set of dependencies are present in the destination project. The number of dependencies are added to the destination project in response to the number of dependencies being absent in the destination project.
    Type: Grant
    Filed: June 15, 2006
    Date of Patent: October 30, 2012
    Assignee: International Business Machines Corporation
    Inventors: Ramon Caceres, Sebastien Demathieu
  • Patent number: 8286156
    Abstract: This invention relates generally to methods and computer readable media for upgrading firmware stored in a non-volatile memory, in phases, and restoring firmware in-situ to compensate for failed firmware upgrades. In various embodiments, methods and computer readable media can upgrade and restore the firmware as the non-volatile memory remains functioning. In one embodiment, a method includes designating a first copy of firmware for accessing, and designating a second copy of the firmware for upgrading. The method continues by accessing one or more firmware instructions from the first copy. It also can include upgrading at least a portion of the second copy with at least a portion of new firmware. Upgrading the second copy can be coincident or substantially coincident to accessing the one or more firmware instructions in the first copy.
    Type: Grant
    Filed: November 7, 2006
    Date of Patent: October 9, 2012
    Assignee: SanDisk Technologies Inc.
    Inventors: Lee Merrill Gavens, Charles Michael Schroter, Shing Wong
  • Patent number: 8286159
    Abstract: An apparatus and method for obtaining a storage medium with a deeply customizable set of installed content. Soft assets (e.g., programs, songs, videos, etc.) that form the content are selected from among a much larger set of preinstalled soft assets previously stored on storage media, such as disk drives. In some embodiments, based on a user's selections, the non-selected assets are permanently erased from a storage medium, while the remaining assets are available as installed (wherein substantially no further processing is required to install them). In some embodiments, a new device uses the storage medium to provide its user with a fully functional device without the need to separately install the soft assets from a plurality of sources (e.g., from program-distribution CDROMS and the like). Some embodiments include the storage medium having the soft assets installed, and including a program that elicits selections from a user and erases non-selected assets.
    Type: Grant
    Filed: June 30, 2006
    Date of Patent: October 9, 2012
    Inventor: Alan Joshua Shapiro
  • Patent number: 8281297
    Abstract: A method of producing a reconfigurable circuit device for running a computer program of moderate complexity such as multimedia processing. Code for the application is compiled into Control Flow Graphs representing distinct parts of the application to be run. From those Control Flow Graphs are extracted basic blocks. The basic blocks are converted to Data Flow Graphs by a compiler utility. From two or more Data Flow Graphs, a largest common subgraph is determined. The largest common subgraph is ASAP scheduled and substituted back into the Data Flow Graphs which also have been scheduled. The separate Data Flow Graphs containing the scheduled largest common subgraph are converted to data paths that are then combined to form code for operating the application. The largest common subgraph is effected in hardware that is shared among the parts of the application from which the Data Flow Graphs were developed.
    Type: Grant
    Filed: February 5, 2004
    Date of Patent: October 2, 2012
    Assignee: Arizona Board of Regents
    Inventors: Aravind R. Dasu, Ali Akoglu, Arvind Sudarsanam, Sethuraman Panchanathan
  • Patent number: 8276126
    Abstract: Techniques for isolating software regressions are provided. In one approach, QTrace is used to generate DTrace scripts to gather timing information of one or more portions of source code during a test of particular version of a program. Based on results of one or more tests of multiple versions of a program, a regression is identified with respect to a particular portion of source code. It is determined that the particular portion of source code was changed during an intermediate version of the program (i.e., between two tests). The intermediate version and/or the particular portion of source code are identified as being a potential source of the regression.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: September 25, 2012
    Assignee: Oracle America, Inc.
    Inventors: Damien Farnham, Darrin P. Johnson, Sean McGrath, Bart Smaalders
  • Patent number: 8276135
    Abstract: The present invention is a method, system, software and data structure for profiling programs, other code, and adaptive computing integrated circuit architectures, using a plurality of data parameters such as data type, input and output data size, data source and destination locations, data pipeline length, locality of reference, distance of data movement, speed of data movement, data access frequency, number of data load/stores, memory usage, and data persistence. The profiler of the invention accepts a data set as input, and profiles a plurality of functions by measuring a plurality of data parameters for each function, during operation of the plurality of functions with the input data set, to form a plurality of measured data parameters. From the plurality of measured data parameters, the profiler generates a plurality of data parameter comparative results corresponding to the plurality of functions and the input data set.
    Type: Grant
    Filed: November 7, 2002
    Date of Patent: September 25, 2012
    Assignee: QST Holdings LLC
    Inventor: Paul L. Master
  • Patent number: 8271973
    Abstract: A system and method are disclosed for enabling the system administrator to identify servers in which the installation of drivers failed without having to examine the installation log of each server by directing the server to send an e-mail to the system administrator in the event of an installation failure. The need for examination of installation logs is eliminated as e-mail messages provide proactive, immediate and specific failure notifications to the system administrator.
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: September 18, 2012
    Assignee: Emulex Design & Manufacturing Corporation
    Inventor: David Michael Barrett
  • Patent number: 8255892
    Abstract: Disclosed is a method for updating program code stored in a memory, which memory comprises a plurality of memory sectors. The method comprises transforming an updated input code into an updated program code version to be stored in a memory, which memory has stored thereon a current program code version occupying a first set of the memory sectors of the memory, wherein the updated program code version occupies a second set of memory sectors when stored in the memory. The transforming step further comprises receiving a representation of the current program code version; and performing at least one optimization step adapted to decrease the number of memory sectors of the second set of memory sectors occupied by the updated code version that are different from the corresponding memory sectors of the first set of memory sectors occupied by the current program code version.
    Type: Grant
    Filed: January 7, 2005
    Date of Patent: August 28, 2012
    Assignee: Telefonaktiebolaget L M Ericsson (Publ)
    Inventor: Johan Eker
  • Patent number: 8255888
    Abstract: Methods and apparatus, including computer program products, for developing an application. The development includes the use of a data model (e.g., a metamodel represented using UML) from which an API is derived. The API can include features derived from customizable extensions within the data model.
    Type: Grant
    Filed: September 30, 2003
    Date of Patent: August 28, 2012
    Assignee: SAP AG
    Inventors: Stefan Jesse, Johannes Lauterbach
  • Patent number: 8250565
    Abstract: Aspects of the present invention may be seen in a system and method for downloading update packages into an electronic device communicatively coupled to a carrier network. The system may facilitate the update of firmware/software in the electronic device. Different protocols may be utilized for discovery and download of update packages. Also, different protocols may be utilized for provisioning and for subsequent downloading of update packages.
    Type: Grant
    Filed: June 28, 2004
    Date of Patent: August 21, 2012
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Sunil Marolia, Bindu Rama Rao
  • Patent number: 8245209
    Abstract: Dangling pointers and memory leak locations within software are detected. As the software allocates and deallocates memory, lists of pointers referencing the memory, and pointer status, are maintained. As the software writes new addresses within pointers and reads addresses referenced by the pointers, the pointer lists are maintained to determine whether the pointers are dangling and to detect memory leak locations. A balanced binary tree having a number of nodes can be maintained. The nodes represent heap or stack records. Each heap record corresponds to heap memory that has been allocated and has a list of pointers referencing the heap memory. Each stack record corresponds to a stack within which a stack frame is allocated each time a function is entered. The stack record has frame records corresponding to the stack frames. Each frame record has a list of pointers referencing the corresponding stack frame.
    Type: Grant
    Filed: May 29, 2007
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventor: Satish Chandra Gupta
  • Patent number: 8245189
    Abstract: A method for managing a configuration of heterogeneous software artifacts uses a common central configuration representation. An artifact of an unknown type, from an initial software solution, is submitted to a solution configuration tool. The solution configuration tool sends a request to a solution architect for locations of configuration files within the artifact. For each artifact whose configuration file locations have been requested from the solution architect, the solution configuration tool determines if each corresponding configuration file is a property file or an Extensible Markup Language (XML) file. If the corresponding configuration file is an XML file, then the solution architect provides a first and second xPath for locating the names and values of the configuration parameters in the XML configuration file. The configuration file and configuration parameter locator information is then stored in a configuration locator file.
    Type: Grant
    Filed: June 21, 2007
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventors: Karunakar Bojjireddy, Carroll E. Fulkerson, Jr., Amber Roy Chowdhury
  • Patent number: 8245213
    Abstract: Changes in performance in a Java program are deduced from information related to garbage collection events of the program. Assumptions are made about the system, the application and garbage collection, and changes in performance that will result from modifying the program are deduced.
    Type: Grant
    Filed: June 12, 2008
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventor: Wilfred C. Jamison
  • Patent number: 8239834
    Abstract: A program development support system includes a reader, a designator, and a comparator. The reader is configured to read first and second programs executing operations which are expected to be identical to each other. The designator is configured to designate a variant pair of a first variant included in the first program and a second variant included in the second program. The first and second variants are expected to be identical to each other. The comparator is configured to compare values between the first and second variants when the first and second programs are executed.
    Type: Grant
    Filed: May 1, 2006
    Date of Patent: August 7, 2012
    Assignee: Ricoh Company, Ltd.
    Inventor: Yasutaka Tsukamoto
  • Patent number: 8234630
    Abstract: The present invention provides a graphical model in a computing environment that enables a non-graphical entity to be a caller entity that executes a sequence of commands to call to a graphical or non-graphical entity that is a callee. The present invention also enables a graphical entity to be a caller to call a non-graphical entity as a callee. The present invention further allows graphical entities to have a variable number of input ports and output ports and provides the ability to use function overloading that is similar to function overloading provided in textual programming languages, such as C and C++. Further, the present invention allows the use of hyperlink between navigate between the caller and callee entities.
    Type: Grant
    Filed: May 3, 2006
    Date of Patent: July 31, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Vijay Raghavan, Pieter J. Mosterman, Yao Ren
  • Patent number: 8225309
    Abstract: A system and method is disclosed for the uniform installation of one or more of a plurality of heterogeneous operating systems (operating systems) on a predetermined information handling system. A common preinstallation environment (CPE) is implemented, comprising a host preinstallation environment (HPE) and one or more native preinstallation environments (NPEs). If an NPE is not required for installation, an HPE comprising a common, bootable kernel generates a bootable operating system image that is installed on the target system. Otherwise, the HPE creates a deployment partition, where it implements the NPE and generates a metafile describing the hardware drivers supported by the NPE. The HPE then inventories the hardware components comprising the target system and compares the results to the metafile. If all required drivers are accessible, the target system boots to the NPE, which begins native installation of the chosen operating system.
    Type: Grant
    Filed: October 16, 2006
    Date of Patent: July 17, 2012
    Assignee: Dell Products L.P.
    Inventors: Weijia Zhang, Kevin W. Deike, Manoj Gujarathi, Matthew Paul, Charles T. Perusse, Jr.
  • Patent number: 8214811
    Abstract: Mechanisms for instantiating an interface or abstract class in application code are provided. An object-oriented programming language is extended such that interfaces and abstract classes can be instantiated in application code without a concrete class specified. Metadata is defined which maps each interface or abstract class instantiation in the application code to a concrete class to be used either by the compiler at build time, or the virtual machine at runtime. Once the appropriate concrete class is determined from the metadata, the class is instantiated with a conventional class loader. The metadata may be provided, for example, as a separate file, such as a markup language file, defined with a virtual machine switch, as annotations in the application code, or the like.
    Type: Grant
    Filed: October 23, 2006
    Date of Patent: July 3, 2012
    Assignee: International Business Machines Corporation
    Inventors: Roland Barcia, Kulvir S. Bhogal, Geoffrey M. Hambrick, Robert R. Peterson
  • Patent number: 8214816
    Abstract: A compiler implemented software cache in which non-aliased explicitly fetched data are excluded are provided. With the mechanisms of the illustrative embodiments, a compiler uses a forward data flow analysis to prove that there is no alias between the cached data and explicitly fetched data. Explicitly fetched data that has no alias in the cached data are excluded from the software cache. Explicitly fetched data that has aliases in the cached data are allowed to be stored in the software cache. In this way, there is no runtime overhead to maintain the correctness of the two copies of data. Moreover, the number of lines of the software cache that must be protected from eviction is decreased. This leads to a decrease in the amount of computation cycles required by the cache miss handler when evicting cache lines during cache miss handling.
    Type: Grant
    Filed: May 28, 2008
    Date of Patent: July 3, 2012
    Assignee: International Business Machines Corporation
    Inventors: Tong Chen, John Kevin Patrick O'Brien, Kathryn O'Brien, Byoungro So, Zehra N. Sura, Tao Zhang
  • Patent number: 8209679
    Abstract: A computer implemented method and system for processing a client request for an application program. The application program may require one or more software applications as prerequisites. In response to a client request for the application program, the system automatically determines prerequisite application programs associated with the requested application program. The prerequisite applications include a first set of direct prerequisite application programs and a second set of indirect prerequisite application programs. The method includes checking whether the second set contains a duplicate prerequisite application program that corresponds to an original prerequisite application program existing in the first set, and removing the original prerequisite application program from the first set automatically if the second set contains the duplicate prerequisite application program. Further, the method includes saving non-duplicated prerequisite programs of the first set.
    Type: Grant
    Filed: January 12, 2006
    Date of Patent: June 26, 2012
    Assignee: Oracle International Corporation
    Inventor: Jie Long