Patents Examined by Michael J. Yigdall
  • Patent number: 7810088
    Abstract: A wireless communication device capable of downloading a software update file from a wireless network. The wireless communication device comprises a non-volatile memory that is re-programmed by sectors. The non-volatile memory stores: i) a target file to be updated, ii) the downloaded software update file, and iii) a journal comprising a plurality of entries, each of the entries containing status information associated with a re-programmed sector of the non-volatile memory. The wireless communication device also comprises a random access memory and a main processor that replaces target code in the target file with replacement code from the downloaded software update file. The main processor creates a first block of replacement code in the random access memory and re-programs a first target sector of the non-volatile memory by storing the first block of replacement code into the first target sector.
    Type: Grant
    Filed: June 20, 2003
    Date of Patent: October 5, 2010
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sudhindra P. Herle, Guoxin Fan
  • Patent number: 7810077
    Abstract: In accordance with one embodiment of the present invention, there is provided a technique for reifying generic types while maintaining migration compatibility. According to this technique, the actual type parameters that should be associated with a raw type, but which are not expressed in a binary file, are dynamically inferred at run time. The actual type parameters are inferred based on the run time usage of an object that is an instance of the raw type.
    Type: Grant
    Filed: April 18, 2005
    Date of Patent: October 5, 2010
    Assignee: Oracle America Inc.
    Inventor: Gilad Bracha
  • Patent number: 7805717
    Abstract: A system and method for instrumenting program instructions. A processing system includes a compiler and a profiler. The compiler is configured to notify the profiler of a compilation event corresponding to first program instructions. In response to detecting the event, the profiler is configured to intercept compilation of the first program instructions, determine whether an instrumented version of the first program instructions is currently available, instruct the compiler to compile the instrumented version of the first program instructions if available, and retrieve and instrument the first program instructions if not available. The profiler may maintain an instrumentation cache for storing instrumented versions of program instructions. The instrumentation cache may further include metadata which identifies portions of program code which have been instrumented and their location. The profiler may generally instrument program instructions once during the resident life of a corresponding application.
    Type: Grant
    Filed: October 17, 2005
    Date of Patent: September 28, 2010
    Assignee: Symantec Operating Corporation
    Inventors: Michael P. Spertus, Christopher D. Metcalf, Gadi Wolfman
  • Patent number: 7797687
    Abstract: Separation of parameterized unit tests (PUTs) from specific test cases supports many benefits including automated test case generation. Symbolic execution assigns symbolic input variables to parameters of a parameterized unit test. Path constraints of an implementation under test (IUT) are identified during symbolic execution. A constraint solver automatically generates test cases by determining the test inputs that satisfy one of more paths, each described by constraints, through the IUT. PUTs are used to populate behavioral summaries. Behavioral summaries are used later in future symbolic executions to emulate summarized methods. Behavioral summaries comprise behavioral purity axioms. Behavioral purity axioms require that an intensional heap before execution of a PUT be equal to the intensional heap after execution. An intensional heap is provided to represent state changes performed by summarized methods. The extensional heap is used to explicitly update memory locations, e.g.
    Type: Grant
    Filed: August 4, 2005
    Date of Patent: September 14, 2010
    Assignee: Microsoft Corporation
    Inventors: Nikolai Tillmann, Wolfgang Grieskamp, Wolfram Schulte
  • Patent number: 7793276
    Abstract: In some embodiments, a method and apparatus for automatically parallelizing a sequential network application through pipeline transformation are described. In one embodiment, the method includes the configuration of a network processor into a D-stage processor pipeline. Once configured, a sequential network application program is transformed into D-pipeline stages. Once transformed, the D-pipeline stages are executed in parallel within the D-stage processor pipeline. In one embodiment, transformation of a sequential application program is performed by modeling the sequential network program as a flow network model and selecting from the flow network model into a plurality of preliminary pipeline stages. Other embodiments are described and claimed.
    Type: Grant
    Filed: November 14, 2003
    Date of Patent: September 7, 2010
    Assignee: Intel Corporation
    Inventors: Jinquan Dai, Luddy Harrison, Bo Huang, Cotton Seed, Long Li
  • Patent number: 7788651
    Abstract: A computer-implemented system for representing data comprises a position indicator that indicates a position of a datum within a group, a name indicator that optionally names the datum, and a value of the datum. A type to be assigned to the datum is derived from at least one of a name of the datum and the position of the datum within the group. Methods of using the system are also provided.
    Type: Grant
    Filed: September 2, 2005
    Date of Patent: August 31, 2010
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, Paul A. Vick, Amanda Silver
  • Patent number: 7788656
    Abstract: Disclosed is as system for reducing memory and computational requirements of graphics operations. The system provides techniques for combining otherwise individual operations to apply filters to images. The combined filter emerging from the combination spares the processor time and the creation of an entire intermediary image. The system further provides for application of these techniques in many contexts including where the operations are fragment programs in for a programmable GPU.
    Type: Grant
    Filed: December 15, 2005
    Date of Patent: August 31, 2010
    Assignee: Apple Inc.
    Inventor: John Harper
  • 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: 7784033
    Abstract: Applications can interact with a database using a JDBC subsystem. The JDBC subsystem includes a connection pool with multiple connections, and parses database requests to produce statements to be sent to a database management system (DBMS). A previously parsed statement can be stored in a prepared statement cache. A profiling component can be used to maintain profile information concerning the connection pool and the prepared statement cache.
    Type: Grant
    Filed: January 25, 2006
    Date of Patent: August 24, 2010
    Assignee: Bea Systems, Inc.
    Inventor: Rahul Srivastava
  • Patent number: 7779407
    Abstract: A computer hardware life-extension apparatus and method is disclosed to circumvent hardware-dependent software installation locks, imposed by selected software packages, which may artificially enforce compliance with a minimum set of hardware requirements before allowing installation. Various techniques may be used to circumvent the artificial hardware locks, thereby effectively extending the useful life, and delaying the forced obsolescence, of selected computer hardware. An apparatus and method in accordance with the invention may be used to extend the life of a wide variety of computer hardware, including but not limited to processors, main memory, secondary storage devices, and the like.
    Type: Grant
    Filed: May 29, 2002
    Date of Patent: August 17, 2010
    Inventor: Phillip M. Adams
  • Patent number: 7774754
    Abstract: A development-oriented split-source directory structure, that can be used with an application server and which solves a number of the problems associated with traditional Enterprise Archive (EAR) files. In particular, the split-source directory structure presents a clean separation between human-readable source files stored in a source control system and generated java class files. The two directories (source and output) appear like a single application. In addition, the split-source directory structure supports an abstraction layer and mappings that allow a physical file location to be mapped to a virtual location. In this manner, the system provides flexibility in how the build structure can be laid out for a particular application development.
    Type: Grant
    Filed: June 27, 2006
    Date of Patent: August 10, 2010
    Assignee: BEA Systems, Inc.
    Inventors: Konstantin Komissarchik, Robert Woollen, Theodore Bashor
  • Patent number: 7774747
    Abstract: A method of creating an application comprising providing a set of predetermined rules for processing data; creating at least one node, each created node being capable of receiving data and further being capable of processing that data within the node according to the set of predetermined rules and making an output; creating a specification that defines how the or each node interacts with other nodes and defines resources useable by the nodes; and providing a run time environment that interconnects the or each node according to the specification such that data input to the application is processed by at least one of the nodes and, if further processing is required, forwarded to other nodes for that further processing.
    Type: Grant
    Filed: October 17, 2003
    Date of Patent: August 10, 2010
    Assignee: Hyfinity Limited
    Inventors: Abdul Kayam, Stephen J. R. Bailey
  • Patent number: 7774759
    Abstract: Methods and apparatus are disclosed to detect a macroscopic transaction boundary in a program workload. An example method includes identifying a transactional entropy value associated with macroscopic transactions of the workload; developing a trace of a program; identifying a sequence of program states from the trace; determining program state entropy values associated with the program states identified in the sequence; and identifying a program state in the sequence of program states and associated with a program state entropy value that is substantially equal to the transactional entropy value as a macroscopic transaction boundary.
    Type: Grant
    Filed: April 28, 2004
    Date of Patent: August 10, 2010
    Assignee: Intel Corporation
    Inventor: Mingqiu Sun
  • Patent number: 7761858
    Abstract: A software development tool for programming natural language software applications is described. The software development tool includes a programming language and a compiler. The programming language has a set of programming constructs for facilitating natural language programming. The compiler is adapted to take a software program containing instances of the set of programming constructs and to generate a software application.
    Type: Grant
    Filed: April 23, 2004
    Date of Patent: July 20, 2010
    Assignee: Microsoft Corporation
    Inventors: Su Chin Chang, Ravi C. Shahani, Domenic J. Cipollone, Michael V. Calcagno, Mari J. B. Olsen, David J. Parkinson
  • Patent number: 7761842
    Abstract: In certain embodiments, a method for generating a graphical user interface (GUI) element comprises storing code for each of one or more types of GUI elements and receiving a request to generate a particular type of GUI element, the request comprising one or more parameters. The method further comprises accessing the code for the requested particular type of GUI element and automatically generating a GUI element package based on the code for the requested particular type of GUI element and the one or more parameters of the request.
    Type: Grant
    Filed: July 9, 2004
    Date of Patent: July 20, 2010
    Assignee: Computer Associates Think, Inc.
    Inventor: Arthur Udler
  • Patent number: 7761854
    Abstract: A system/method for profiling a sequence of values from a range to determine a frequency of occurrence of a subrange includes, for a current block, determining whether cells of the current block include a count cell or a pointer cell. If the cell includes a pointer cell, follow an address that the pointer makes reference to and designate a new block as the current block and repeat the determining step for the new block. If the cell includes a count cell, increment the count cell and compare the incremented count cell to a threshold. If the count exceeds the threshold, convert the count cell to a pointer cell, which points to a newly allocated block. The newly allocated block is made the current block, and the steps are repeated until count cells do not exceed the threshold or a limit resolution is achieved.
    Type: Grant
    Filed: December 22, 2005
    Date of Patent: July 20, 2010
    Assignee: International Business Machines Corporation
    Inventor: Michel Henri Theodore Hack
  • Patent number: 7752617
    Abstract: An apparatus, system, and method are provided for updating a code image. The apparatus, system, and method include a loader for loading a new code image into a temporary memory location separate from the memory location occupied by the old code image. A conversion module of the new code image executes and selectively reconciles incompatibilities between the old code image and the new code image. In one aspect, once incompatibilities are reconciled, a copy module copies the new code image into the memory space occupied by the old code image.
    Type: Grant
    Filed: November 20, 2003
    Date of Patent: July 6, 2010
    Assignee: International Business Machines Corporation
    Inventors: Stephen La Roux Blinick, Brian Jeffrey Corcoran, Matthew Joseph Kalos, Ricardo Sedillos Padilla
  • Patent number: 7747992
    Abstract: Methods and apparatus to create software basic block layouts are disclosed. In one example, a method identifies branch data associated with a plurality of machine accessible instructions and identifies a plurality of basic blocks associated with the branch data. The method generates a partial layout from the plurality of basic blocks and generates a substantial layout from the partial layout based on a cost metric.
    Type: Grant
    Filed: August 23, 2004
    Date of Patent: June 29, 2010
    Assignee: Intel Corporation
    Inventors: Ramesh Peri, Zino Benaissa, Srinivas Doddapaneni
  • Patent number: 7735062
    Abstract: A computer design model processing system and methods are described that can create visual models of computer systems, store versions of design models in a centralized repository, automatically generate and deploy computer software systems in response to the stored computer design models, define dependencies between computer design models, and automate and assist the development of multiple, possibly dependent, computer design models by multiple developers.
    Type: Grant
    Filed: May 18, 2005
    Date of Patent: June 8, 2010
    Assignee: OutSystems—Software em Rede, S.A.
    Inventors: Miguel António Cunha de Seabra e Melo, Lúcio Emanuel Represas Ferrão, Rodrigo Leal de Faria de Sousa Coutinho, Carlos Manuel Gregório Alves
  • Patent number: 7730465
    Abstract: The present invention provides a system and/or method that facilitates programming within Common Language Runtime (CLR) for a C++ programmer by employing a mixed type. An inheritance component creates the mixed type from received code such that the mixed class type is allocated into memory into a pure native part and a pure managed part. Furthermore, construction, destruction and function calls for mixed types are provided facilitating programming within Common Language Runtime (CLR).
    Type: Grant
    Filed: October 22, 2004
    Date of Patent: June 1, 2010
    Assignee: Microsoft Corporation
    Inventors: Herbert P Sutter, Jeffrey J Peil, Brandon R Bray, Mark L Hall, Jonathan E Caves