Patent application number | Description | Published |
20080270988 | METHOD AND SYSTEM FOR DEBUGGING A PROGRAM IN A MULTI-THREAD ENVIRONMENT - A method and system for debugging a program in multithread environment which interrupts the running of a debuggee program begins by replacing the instruction at the position at which a breakpoint for debugging is desired to be set with a breakpoint instruction. When the breakpoint instruction is replaced back with the instruction at the position at which the breakpoint for debugging is set, an instruction is set in front of the breakpoint for debugging as a fence breakpoint; and when the instruction at the position at which the breakpoint for debugging is set, is replaced again with the breakpoint instruction. On completion, the fence breakpoint is replaced with the original instruction of the debuggee program at that position. | 10-30-2008 |
20090089622 | Providing Customizable, Process-Specific Just-In-Time Debugging in an Operating System - A method and a system for providing customizable, process-specific Just-In-Time debugging in operating system is provide in this invention. The method comprises the following steps: obtaining process-specific JIT debugging information, in response to the occurrence of an trap event in operating system; invoking the debugger corresponding to the process according to the obtained process-specific JIT debugging information. This method and system supports per-process JIT debugging configuration. | 04-02-2009 |
20090178028 | METHOD AND SYSTEM FOR INVOKING JUST-IN-TIME DEBUGGER - A method and system for invoking Just-In-Time debugger is described, which can provide more efficient JIT debugging for complex code mixed applications. A method for invoking a Just-In-Time (JIT) debugger according to one embodiment includes checking a code type of a code address where a JIT debugging request is triggered from a process of a code-mixed application in response to the JIT debugging request from the process; acquiring corresponding JIT debugging information for different code types of the code-mixed application; and invoking a JIT debugger corresponding to the code type in response to the checked code type of the code address in the process and the acquired corresponding JIT debugging information. | 07-09-2009 |
20100083266 | METHOD AND APPARATUS FOR ACCESSING A SHARED DATA STRUCTURE IN PARALLEL BY MULTIPLE THREADS - A method of accessing a shared data structure in parallel by multiple threads in a parallel application program is disclosed, in which a lock of the shared data structure is granted to one thread of the multiple threads, an operation of the thread which acquires the lock is performed on the shared data structure, then an operation of each thread of the multiple threads which does not acquire the lock is buffered, and finally the buffered operations are performed on the shared data structure when another thread of the multiple threads subsequently acquires the lock. By using this method, the operations of other threads which do not acquire the lock of the shared data structure can be buffered automatically when the shared data structure is locked by one thread, and all the buffered operations can be performed when another thread acquires the lock. Therefore when the shared data structure is modified, the occurences of an element shift in the shared data structure can be greatly reduced and the access performance of the multiple threads can be improved. A corresponding apparatus and program product are also disclosed. | 04-01-2010 |
20100114999 | Method and System to Space-Efficiently Track Memory Access of Object-Oriented Language in Presence of Garbage Collection - The present invention provides a method and system for processing memory access events. The method comprises: executing an extended program including instrumented memory tracking code for tracking memory access events of a plurality of objects; allocating a unique identifier for each of the plurality of tracked objects; creating a weak reference for each of the plurality of tracked objects, wherein a mapping relationship is established between the identifier of the weak reference and that of the corresponding tracked object; recording and storing the memory access events of the plurality of tracked objects; in response to receiving a notification of memory garbage collection which includes an identifier of a weak reference of a collected object, determining the identifier of the collected object based on the mapping relationship between the identifier of the weak reference and that of the corresponding tracked object, and searching the stored memory access events for the memory access events of the collected object; and deleting the memory access events of the collected object. The storage overhead may be reduced according to the above method of the present invention. | 05-06-2010 |
20100333110 | DEADLOCK DETECTION METHOD AND SYSTEM FOR PARALLEL PROGRAMS - A deadlock detection method and computer system for parallel programs. A determination is made that a lock of the parallel programs is no longer used in a running procedure of the parallel programs. A node corresponding to the lock that is no longer used, and edges relating to the lock that is no longer used, are deleted from a lock graph corresponding to the running procedure of the parallel programs in order to acquire an updated lock graph. The lock graph is constructed according to a lock operation of the parallel programs. Deadlock detection is then performed on the updated lock graph. | 12-30-2010 |
20110078684 | Method and System for Facilitating Memory Analysis - A method and system for facilitating runtime memory analysis. The method includes: assigning a unique ID for each task in a running program; recording memory access events occurring during the running program, including the IDs of the task performing the memory accesses; issuing a task termination notification in response to a task terminating, the task termination notification including the ID of the terminating task; and releasing all the memory access events having the ID of the terminating task in the memory, in response to the task termination notification. This method and system can ensure that the memory access events stored in the memory will not increase unlimitedly, so that the memory overhead is reduced remarkably and dynamic memory analysis can be faster and more efficient. | 03-31-2011 |
20110107151 | Method and System of Deadlock Detection in a Parallel Program - A method and system of deadlock detection in a parallel program, the method comprising: recording lock events during the operation of the parallel program and a first order relation among the lock events; converting information relevant to the operation of the parallel program into gate lock events and recording the gate lock events; establishing a second order relation among the gate lock events and lock events associated with the gate lock events and adding the second order relation to the first order relation; constructing a lock graph corresponding to the operation procedure of the parallel program based on the added first order relation; and performing deadlock detection on the constructed lock graph. The deadlock detection method of the invention can improve the accuracy of deadlock detection without depending on the deadlock detection algorithm per se, and can be applied with facility to various development environments and reduce development costs. | 05-05-2011 |
20110107307 | Collecting Program Runtime Information - System(s), method(s), and computer program product(s) for collecting program runtime information are provided. In one aspect, this comprises: an instrumentation module for inserting, by program instrumentation, monitoring code into the constructor of an exception class in a program to run; and a monitoring module implemented by said monitoring code, the monitoring module for collecting program runtime information during the running process of the program. In another aspect, this comprises: obtaining verification point variables from assertions for a program to be tested; inserting monitoring code into positions in the program that access the obtained verification point variables; and as the program runs, collecting runtime information of the program by the inserted monitoring code. | 05-05-2011 |
20110131491 | DYNAMIC HELP INFORMATION - Dynamic help information is provided by receiving unit, configured to receive at least one operation of a user and to obtain the user's operation history, where the operation history includes at least one operation; a determining unit, configured to determine the corresponding help information according to the user's operation history; and an information obtaining unit, configured to obtain said corresponding help information. Assistance in providing help information is also provided, comprising: an operation capturing unit, configured to capture and send at least one operation of a user; and an information displaying unit, configured to receive and display the help information corresponding to the user's operation history, where the operation history includes at least one operation. With the apparatuses and method of this invention, the pertinent help information can be dynamically provided for users according to user's operation history. | 06-02-2011 |
20110214106 | INDICATING THE EFFECT OF PROGRAM MODIFICATIONS ON PROGRAM PERFORMANCE IN AN INTEGRATED DEVELOPMENT ENVIRONMENT - A method, computer program product and apparatus for indicating program modifications affecting program performance in an Integrated Development Environment (IDE). The modifications that a developer makes to a program is detected and the code location where these modifications occur is determined. The previous profiling data of the program is acquired. The effect of the modifications on the program performance according to the previous profiling data and the code location where the modifications occur is evaluated. The evaluation results may then be provided to the developer. As a result of the above process, the developer can be aware of the performance problem while he/she is editing the source code so as to make corrections without waiting after the profiling phase, thus greatly shortening the development period. | 09-01-2011 |
20110296442 | GENERATING A WEB SERVICE - Web services are automatically generated from corresponding Web applications under service-oriented architecture. A Web service is generated based on a Web application, comprising: obtaining user input information of the Web application, obtaining call stack information that is generated by the Web application at runtime based on the user input information, performing parameter matching between the user input information and the call stack information, selecting a method from the call stack information as an application programming interface based on a result of the parameter matching and the call stack information, and generating the Web service using the application programming interface. | 12-01-2011 |
20120096317 | METHOD AND SYSTEM FOR DETECTING PROGRAM DEADLOCK - A method and/or system for detecting deadlock, comprising: obtaining lock information related to locking operation in a program; generating a first lock graph based on the obtained lock information, wherein each node in the first lock graph comprises a set of locks comprising at least one lock and a set of program locations comprising at least one lock location; extracting a strongly connected sub graph in the first lock graph; unfolding the strongly connected sub graph in the first lock graph to generate a second lock graph, wherein each node in the second lock graph comprises a single lock; and extracting a strongly connected sub graph in the second lock graph, the strongly connected sub graph in the second lock graph indicating a deadlock in the program. | 04-19-2012 |
20120167054 | Collecting Program Runtime Information - System(s), method(s), and computer program product(s) for collecting program runtime information are provided. In one aspect, this comprises: an instrumentation module for inserting, by program instrumentation, monitoring code into the constructor of an exception class in a program to run; and a monitoring module implemented by said monitoring code, the monitoring module for collecting program runtime information during the running process of the program. In another aspect, this comprises: obtaining verification point variables from assertions for a program to be tested; inserting monitoring code into positions in the program that access the obtained verification point variables; and as the program runs, collecting runtime information of the program by the inserted monitoring code. | 06-28-2012 |
20120198460 | Deadlock Detection Method and System for Parallel Programs - A deadlock detection method and computer system for parallel programs. A determination is made that a lock of the parallel programs is no longer used in a running procedure of the parallel programs. A node corresponding to the lock that is no longer used, and edges relating to the lock that is no longer used, are deleted from a lock graph corresponding to the running procedure of the parallel programs in order to acquire an updated lock graph. The lock graph is constructed according to a lock operation of the parallel programs. Deadlock detection is then performed on the updated lock graph. | 08-02-2012 |
20130275982 | METHOD AND SYSTEM FOR DETECTING PROGRAM DEADLOCK - The present invention relates to a technology for deadlock detection in a program, and more particularly relates to a technology for detecting deadlock in a program through lock graph analysis. The present invention provides a method for detecting deadlock, comprising: obtaining lock information related to locking operation in a program; generating a first lock graph based on the obtained lock information, wherein each node in the first lock graph comprises a set of locks comprising at least one lock and a set of program locations comprising at least one lock location; extracting a strongly connected sub graph in the first lock graph; unfolding the strongly connected sub graph in the first lock graph to generate a second lock graph, wherein each node in the second lock graph comprises a single lock; and extracting a strongly connected sub graph in the second lock graph, the strongly connected sub graph in the second lock graph indicating a deadlock in the program. | 10-17-2013 |