Patents Examined by Stephen Berman
-
Patent number: 9170919Abstract: An apparatus for detecting a source code error location in a mixed-mode program is disclosed. The apparatus may include a compiler, a mapping table generator, a simulator, a comparison data generator and an error location detector. The apparatus extracts low-level data while simulating a verification program and while simulating a reference program. The low-level data is mapped to mapping tables for a verification program and a reference program, and by comparing the tables it is determined if there is an error in the mixed-mode program and if so, where.Type: GrantFiled: September 6, 2013Date of Patent: October 27, 2015Assignee: Samsung Electronics Co., Ltd.Inventors: Hee-Jun Shim, Min-Wook Ahn, Jin-Sae Jung, Yen-Jo Han
-
Patent number: 9164876Abstract: Aspects include controlling asynchronous call return in a program. At least one asynchronous call is detected in the program. Execution of the program is stopped at a breakpoint in response to detecting that the breakpoint is set in the program. At least one callback corresponding to the at least one asynchronous call is obtained. The at least one callback is inserted into one or more specified positions of the program respectively according to a user selection. Execution of the program continues from the breakpoint in response to the insertion of the at least one callback into the program.Type: GrantFiled: February 19, 2013Date of Patent: October 20, 2015Assignee: International Business Machines CorporationInventors: Gu Yi He, Tao Kang, Hua Hong Wang, Qiang Wang, Chao Zheng, Si Qi Zhong, Xian Jun Zhu
-
Patent number: 9164872Abstract: Coding issues that create runtime memory leaks, for example in programs coded in a platform-independent programming language such as Java™, can be isolated at the program code line level. An allocation trace that retains, in active memory, a unique object identifier for each of a plurality of objects instantiated during program execution and an address in the active memory where each object is stored can be created. Memory leak candidates can be identified by directly examining contents of the active memory to identify one or more data structures that are increasing in size over time. The allocation trace can be combined with the identified memory leak candidates to generate information about at least one identified leaking object.Type: GrantFiled: May 22, 2013Date of Patent: October 20, 2015Assignee: SAP SEInventor: Martin Moser
-
Patent number: 9164735Abstract: In accordance with disclosed embodiments, there are provided methods, systems, and apparatuses enabling polymorphic objects across devices in a heterogeneous platform. According to the disclosed embodiments, such means include, for example, receiving, at a device aware compiler, source code for a computer program as input; compiling the source code for the computer program, in which the compiling includes at least: generating two distinct sets of executable binary instructions for a method of an object; in which a first of the two distinct sets of executable binary instructions for the method of the object provides first binary instructions for the method executable by a first computing device and not executable by a second computing device; and in which a second of the two distinct sets of executable binary instructions for the method of the object provides second binary instructions for the method executable by the second computing device and not executable by the first computing device.Type: GrantFiled: September 27, 2012Date of Patent: October 20, 2015Assignee: Intel CorporationInventors: William Allen Hux, Nicolas Galoppo Von Borries
-
Patent number: 9158550Abstract: An image of system software is installed by loading an executable image of the system software using a boot loader, where the executable image includes a kernel and a plurality of files used by the kernel. The kernel of the system software is executed to generate the image of the system software that includes a copy of the kernel. Generating the image of the system software involves the steps of generating a plurality of pointers that each point to a different one of the files, retrieving the files using the pointers, and storing a copy of the kernel and the files in a storage device from which the system software is to be booted as the image of the system software.Type: GrantFiled: June 16, 2011Date of Patent: October 13, 2015Assignee: VMware, Inc.Inventors: Daniel Kerry Hiltgen, Olivier Alain Cremel, Christopher Patrick Devine
-
Patent number: 9141378Abstract: A computer system includes a transceiver and a processor that is cooperatively operable with the transceiver. The processor gathers, over the transceiver, (i) issue tracking information stored in an issue tracking storage system, the issue tracking information having a history of issues filed against a plurality of artifacts, and (ii) source code management information stored in a source code management storage system, the source code management information having a history of code changes committed against another plurality of artifacts. The processor checks a combined history of the issue tracking information and the source code management information for a history of issues filed against an artifact and a history of commits and corresponding source code changes committed against the artifact. The processor provides an interpretation of the current state of the artifact based on the combined history of the issue tracking information and source code management information about the artifact.Type: GrantFiled: September 15, 2011Date of Patent: September 22, 2015Assignee: Sonatype, Inc.Inventors: Brian Edward Fox, Joel Orlina
-
Patent number: 9141408Abstract: A computer system, method, or computer-readable medium corrects a broken portion of an application. A fingerprint indicates classes that comprise the application. The classes indicated in the fingerprint are looked up to determine whether any is broken. For a broken class, a fixed class is substituted when the broken class is loaded at class load time for the application; a fixed class method is substituted into the broken class, when the broken class is loaded at class load time; fixed byte code is substituted for broken byte code corresponding to the broken class, when the broken class is loaded at class load time; the broken class is unloaded and the fixed class is loaded instead, when the application is running; or the broken class is replaced inside the static application with the fixed class; all without replacing classes which are not broken.Type: GrantFiled: July 20, 2012Date of Patent: September 22, 2015Assignee: Sonatype, Inc.Inventors: Wayne Jackson, Brian Edward Fox, Mike Hansen, Stuart McCulloch, Jason Van Zyl
-
Patent number: 9141353Abstract: Locale objects are dynamically built from locale source files when requested at run-time. When a locale object is dynamically built, it is stored in global memory so it may be read by multiple applications. Dynamically building locale objects when requested allows software to operate with a relatively small number of locale objects instead of with hundreds or thousands of locale objects, as is known in the art. The result is significant savings in system-wide resources while still allowing for access to a large number of possible locales.Type: GrantFiled: February 6, 2013Date of Patent: September 22, 2015Assignee: International Business Machines CorporationInventors: Leander Bromley, Jr., Christopher J. Brown, Thuy P. Christenson, Patrick L. Glenski, Kershaw S. Mehta
-
Patent number: 9141352Abstract: Locale objects are dynamically built from locale source files when requested at run-time. When a locale object is dynamically built, it is stored in global memory so it may be read by multiple applications. Dynamically building locale objects when requested allows software to operate with a relatively small number of locale objects instead of with hundreds or thousands of locale objects, as is known in the art. The result is significant savings in system-wide resources while still allowing for access to a large number of possible locales.Type: GrantFiled: September 26, 2012Date of Patent: September 22, 2015Assignee: International Business Machines CorporationInventors: Leander Bromley, Jr., Christopher J. Brown, Thuy Phuong Christenson, Patrick L. Glenski, Kershaw S. Mehta
-
Patent number: 9141519Abstract: Consistent with the present disclosure, a block of software code or “software code block” that is executed while particular tests are carried out is assigned a software code block identifier, which is associated with test identifiers, which, in turn, identify the tests that were performed. The software code block identifiers and corresponding test identifiers are then stored in a database. When a portion of the software code block is later modified, either by a change to one or more lines of the code or by deleting or adding code, the corresponding software code block identifier is determined or selected, and then used to access the corresponding test identifiers from the database. The test identifiers are then used to generate a report, for example, that lists each test to be performed in order to determine whether the modified software code block operates properly.Type: GrantFiled: October 5, 2010Date of Patent: September 22, 2015Assignee: Infinera CorporationInventors: Sriram Subramanian, Rajasekar Venkatesan, Manjunath Bandi, Varatharajan Irusappan, Anand Pritam
-
Patent number: 9135445Abstract: A method for installing an offered web application or browser extension in a web browser includes receiving a user action on a website located at a first internet domain. Information about the offered web application or browser extension not currently installed in the web browser is displayed in response to the user action. The displayed information is provided by a digital marketplace located at a second internet domain distinct from the first internet domain. A correspondence of the displayed information to the offered web application or browser extension is ensured through functionality provided by the web browser. An indication to install the offered web application or browser extension is received from a user, and the web application or browser extension is installed in response to the received indication.Type: GrantFiled: March 19, 2012Date of Patent: September 15, 2015Assignee: Google Inc.Inventors: Erik Kay, Mihai Parparita, Aaron Boodman, Rahul Roy-Chowdhury
-
Patent number: 9128801Abstract: A software artifact is scored for a user. Metadata associated with an artifact about project activity of how active an artifact project is to which the artifact belongs, a security risk indicated in the metadata of the artifact, or a license indicated in the metadata of the artifact, is collected from a software repository. A weighting of the artifact alone is determined from the metadata associated with the artifact that indicates desirability of the project activity, the security risk, or the license. The metadata associated with the artifact is compared to appropriateness with a metadata of a user project to which the user belongs as indicated by a profile of the user, so as to provide a score considering the determined weighting of the artifact and a appropriateness of the artifact for the user with respect to an intended use of the artifact by the user.Type: GrantFiled: August 8, 2013Date of Patent: September 8, 2015Assignee: Sonatype, Inc.Inventors: Brian Edward Fox, Joel Orlina
-
Patent number: 9110769Abstract: Techniques for detecting, analyzing, and/or reporting code clone are described herein. In one or more implementations, clone-code detection is performed on one or more source code bases to find true and near clones of a subject code snippet that a user (e.g., a software developer) expressly or implicitly selected. In one or more other implementations, code clone is analyzed to estimate the code-improvement-potential (such as bug-potential and code-refactoring-potential) properties of clones. One or more other implementations present the results of code clone analysis with indications (e.g., rankings) of the estimated properties of the respective the clones.Type: GrantFiled: April 1, 2010Date of Patent: August 18, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Dongmei Zhang, Yingnong Dang, Yingjun Qiu, Song Ge
-
Patent number: 9092564Abstract: Embodiments provide call stacks for asynchronous programming. A set of all asynchronous call stacks is found by first identifying all threads and all outstanding tasks that have not yet been completed. Optionally, all outstanding continuation-delegates or lambdas that are in the windows queue waiting to be scheduled and/or all outstanding delegates or lambdas in a language-specific queue are also identified. Next, for each thread, identify whether it was invoked by a continuation-callback and, if so, find the corresponding task/promise. Next, given a task/promise, identify the logical parent task/promise. Optionally, given a delegate or lambda, identify its logical parent task/promise. The sequence of logical tasks/promises constitutes an asynchronous call stack in a program. Further information may optionally be retrieved to make the asynchronous call stack more useful. Finally, given a task/promise, identify the corresponding line number and location in source code.Type: GrantFiled: February 15, 2013Date of Patent: July 28, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Lucian Wischik, Eric Feiveson
-
Patent number: 9087236Abstract: An example embodiment disclosed is a system for automated model extraction of documents containing flow diagrams. An extractor is configured to extract from the flow diagrams flow graphs. The extractor further extracts nodes and edges, and relational, geometric and textual features for the extracted nodes and edges. A classifier is configured to recognize process semantics based on the extracted nodes and edges, and the relational, geometric and textual features of the extracted nodes and edges. A process modeling language code is generated based on the recognized process semantics. Rules to recognize patterns in process diagrams may be determined using supervised learning and/or unsupervised learning. During supervised learning, an expert labels example flow diagrams so that a classifier can derive the classification rules. During unsupervised learning flow diagrams are clustered based on relational, geometric and textual features of nodes and edges.Type: GrantFiled: September 13, 2010Date of Patent: July 21, 2015Assignee: International Business Machines CorporationInventors: Pankaj Dhoolia, Juhnyoung Lee, Debdoot Mukherjee, Aubrey J. Rembert
-
Patent number: 9081637Abstract: A component-based software product manager system and method are provided. Various software products for electronic appliances include common components that are shared there between and variable components that are not commonly shared there between and instead are exclusive to individual products. The component-based software product manager system and method combine and associate components with one another while managing a large-scale software asset in units of the components. The system and method described herein improve the cooperation and the reusability of software products.Type: GrantFiled: April 2, 2010Date of Patent: July 14, 2015Assignee: Samsung Electronics Co., Ltd.Inventors: Kyoung-Ho Son, Ja-Gun Kwon
-
Patent number: 9053234Abstract: A tool for analyzing software is enhanced to provide multiple views of a stack trace, with each view having a different level of detail. Different views may be lightly simplified, moderately simplified, or heavily simplified. The display of a complete stack trace includes entries for all stack frames in the stack trace. The display of a simplified stack trace includes entries for fewer than all stack frames in the stack trace, thereby “hiding” or “collapsing” entries for some of the stack frames, relative to the complete stack trace display. After a user specifies a level of complexity with which to show a stack trace, the enhanced analysis tool GUI updates the stack trace display according to the specified level. A complexity level is associated with a set of heuristics that is used to create a view of a stack trace at that complexity level.Type: GrantFiled: April 18, 2011Date of Patent: June 9, 2015Assignee: Apple Inc.Inventors: Maxwell O. Drukman, Andreas W. Wendker, Stephen R. Lewallen, David V. Payne
-
Patent number: 9043753Abstract: A method for recommending at least one artifact to an artifact user is described. The method includes obtaining user characteristic information reflecting preferences, particular to the artifact user, as to a desired artifact. The method also includes obtaining first metadata about each of one or more candidate artifacts, and scoring, as one or more scored artifacts, each of the one or more candidate artifacts by evaluating one or more criteria, not particular to the artifact user, applied to the first metadata. The method further includes scaling, as one or more scaled artifacts, a score of each of the one or more scored artifacts, by evaluating the suitability of each of the one or more scored artifacts in view of the user characteristic information. The method lastly includes recommending to the artifact user at least one artifact from among the one or more scaled artifacts based on its scaled score.Type: GrantFiled: November 12, 2013Date of Patent: May 26, 2015Assignee: Sonatype, Inc.Inventors: Brian Edward Fox, Joel Orlina
-
Patent number: 9021419Abstract: A system and method can support design pattern automation. A design environment, such as a design pattern automation platform, enables the definition of design patterns including the model entities and their relationships. The design pattern automation platform leverages the definitions and user input, and uses an intelligent method to automate the implementation of arbitrarily complex software design artifacts that realize the design patterns. The design pattern automation platform allows a user to specify a design pattern model that describes a design pattern. A user interface (UI) framework can consume the design pattern model and can render a set of UI pages that allow for user interaction with the design pattern. Furthermore, a pattern processor can combine the meta-model with user inputs from the UI framework and produce a set of entities or resources for the design pattern.Type: GrantFiled: February 15, 2013Date of Patent: April 28, 2015Assignee: Oracle International CorporationInventors: Mircea Pana, Mark Pomerant, Curtis DesRosiers
-
Patent number: 9021442Abstract: A test automation system can include a web controller configured to provide access to at least one container displayed by an application and a web user interface (UI) configured to be controlled using the web controller. The system can include an application controller object configured to implement an application controller interface and expose methods for performing operations on application controls of the application and an application query object. The application query object can include at least one filter with at least one condition, the at least one condition defining an attribute or property of a UI element to check for. The application query object can be configured to return at least one UI control when the UI control includes at least one UI element that includes features that match criteria defined by the at least one filter and the at least one condition.Type: GrantFiled: February 13, 2013Date of Patent: April 28, 2015Assignee: SAP SEInventor: Claude Rossi