KR20150089620A - Method and apparatus for checking data in debugging memory - Google Patents

Method and apparatus for checking data in debugging memory Download PDF

Info

Publication number
KR20150089620A
KR20150089620A KR1020140010475A KR20140010475A KR20150089620A KR 20150089620 A KR20150089620 A KR 20150089620A KR 1020140010475 A KR1020140010475 A KR 1020140010475A KR 20140010475 A KR20140010475 A KR 20140010475A KR 20150089620 A KR20150089620 A KR 20150089620A
Authority
KR
South Korea
Prior art keywords
debugging
data
memory
copied
point
Prior art date
Application number
KR1020140010475A
Other languages
Korean (ko)
Inventor
김종일
Original Assignee
에스케이플래닛 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020140010475A priority Critical patent/KR20150089620A/en
Publication of KR20150089620A publication Critical patent/KR20150089620A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The present invention relates to a method or an apparatus for checking data in a debugging memory. The apparatus for checking data in a debugging memory comprises: a debugging execution unit setting a debugging point for bug correction when a bug occurs in a development application and a memory point where it is necessary to check the data in a debugging memory having data for a development application stored to analyze data copied at the set memory point and selecting a particular plug-in which checks the copied data according to the analysis results, thereby controlling the processing of the data copied within the selected particular plug-in; an application execution unit executing a compiled code of a development application, copying the data at a memory point set by the control of the debugging execution unit when a debugging point is set by the debugging execution unit to transmit the copied data to the debugging execution unit, and then transmitting the copied data to a particular plug-in when the particular plug-in is executed by the debugging execution unit, thereby enabling a developer to check data stored in a debugging memory in real time to more conveniently determine the presence or absence of abnormality of the data stored in a debugging memory.

Description

디버깅 메모리의 데이터를 확인하기 위한 방법 및 이를 위한 장치{METHOD AND APPARATUS FOR CHECKING DATA IN DEBUGGING MEMORY}METHOD AND APPARATUS FOR CHECKING DATA IN DEBUGGING MEMORY BACKGROUND OF THE INVENTION [0001]

본 발명은 디버깅 메모리의 데이터를 확인하기 위한 방법 및 이를 위한 장치에 관한 것으로서, 특히 어플리케이션(또는 프로그램)의 모든 동작을 위한 코드를 컴파일하여 디버깅 시 별도의 디버깅 코드 없이 실시간으로 디버깅 메모리 상에 존재하는 데이터를 확인하기 위한 방법 및 이를 위한 장치에 관한 것이다. The present invention relates to a method for verifying data in a debugging memory and an apparatus therefor. More particularly, the present invention relates to a method for verifying data in a debugging memory by compiling a code for all operations of an application (or a program) To a method for verifying data and to an apparatus therefor.

이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The contents described in this section merely provide background information on the present embodiment and do not constitute the prior art.

일반적으로 개발자가 프로그램 또는 어플리케이션 등을 개발하면, 개발된 프로그램은 완벽하지 않기 때문에 오류가 발생하므로 개발자는 개발한 프로그램의 오류를 찾아 수정해야 한다. 이러한 개발 프로그램의 오류를 찾아 수정하는 작업을 디버깅(Debugging)이라 하며, 프로그램 속에 존재하는 오류(에러)를 버그라 한다. Generally, when a developer develops a program or an application, an error occurs because the developed program is not perfect. Therefore, the developer must find and correct the error of the developed program. The task of finding and fixing errors in these development programs is called debugging, and errors (errors) in programs are called bugs.

디버깅을 위한 방법으로는 크게 디버거와 같은 보조 프로그램을 이용하는 방법과, 검사용 데이터를 입력하여 오류를 찾아 내는 방법이 있다. 이러한 방법을 이용하여 종래의 기술에서는 프로그램의 모든 동작을 위한 코드를 컴파일하여 실행되는 컴파일 코드의 각 로직(코드)에서 사용되는 변수를 확인함으로써 디버깅을 수행하였다. There are two methods for debugging: a method using an auxiliary program such as a debugger and a method for detecting an error by inputting data for inspection. In this technique, the debugging is performed by checking the variables used in each logic (code) of the compile code executed by compiling the code for all operations of the program.

이러한 종래의 디버깅 방법은 디버깅 시 메모리상에 존재하는 데이터의 이상 유무를 확인하기 위하여 해당 메모리를 파일로 저장하고, 이를 재 처리하기 위한 어플리케이션을 직접 실행하는 등 디버깅을 위하여 원본 코드에 디버깅 코드를 삽입하는 동작이 필요하다. In this conventional debugging method, in order to check whether there is an abnormality in data existing in the memory during debugging, a memory is stored as a file, and an application for reprocessing the application is directly executed. .

따라서 종래의 디버깅 방법에서는 데이터 확인을 위해 디버깅 코드를 삽입하고, 파일 시스템에 데이터를 임시 저장한 후 데이터 확인을 위해서는 별도의 어플리케이션을 개발해야 한다. 이로 인해 종래의 디버깅 방법은 데이터 확인을 위한 과정이 매우 복잡하고, 시간이 많이 소요되므로 어플리케이션 개발이 지연되는 문제점이 있다. Therefore, in the conventional debugging method, it is necessary to insert a debugging code to check the data, temporarily store the data in the file system, and develop a separate application to check the data. Therefore, the conventional debugging method has a problem in that the process for checking the data is very complicated and time-consuming, thereby delaying application development.

한국공개특허 제2011-0036154호, 2011년 04월 07일 공개(명칭: 애플리케이션 스토리지 서버 및 그 운용 방법)Published Korean Patent Application No. 2011-0036154, April 07, 2011 (name: application storage server and its operating method)

본 발명은 종래의 불편함을 해소하기 위하여 제안된 것으로서, 어플리케이션 프로세스에서 실행되는 개발 어플리케이션의 컴파일 코드에서 버그가 발생하면, 별도의 디버깅 코드 없이 실시간으로 디버깅 메모리 상에 존재하는 데이터를 확인하기 위한 방법 및 이를 위한 장치를 제공하고자 한다. The present invention has been proposed in order to solve the inconvenience of the prior art, and it is an object of the present invention to provide a method for checking data existing on a debugging memory in real time without a separate debugging code when a bug occurs in a compiled code of a development application executed in an application process And an apparatus therefor.

또한, 본 발명은 디버깅 프로세스에서 디버깅 메모리에 설정된 메모리 지점에서 복사한 데이터를 분석하고, 분석 결과에 따라 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하여 실행시키고, 실행된 특정 플러그인에서 복사한 데이터를 처리하여 실시간으로 출력하도록 하는 디버깅 메모리의 데이터를 확인하기 위한 방법 및 이를 위한 장치를 제공하고자 한다. In addition, the present invention analyzes data copied from a memory location set in the debugging memory in the debugging process, selects and executes a specific plug-in that can check the copied data according to the analysis result, And outputting the data in real time. The present invention also provides a method and apparatus for checking data in a debugging memory.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 디버깅 장치는, 개발 어플리케이션에서 버그가 발생하면, 버그를 수정하기 위한 디버깅 지점을 설정하고, 상기 개발 어플리케이션에 대한 데이터를 저장하고 있는 디버깅 메모리에서 데이터 확인이 필요한 메모리 지점을 설정하고, 설정된 메모리 지점에서 복사한 데이터를 분석하고, 분석 결과에 따라 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하여 선택된 특정 플러그인에서 상기 복사한 데이터를 처리하도록 제어하는 디버깅 실행부; 및 상기 개발 어플리케이션의 컴파일 코드를 실행하고, 상기 디버깅 실행부에 의해 디버깅 지점이 설정되면, 상기 디버깅 실행부의 제어에 따라 상기 설정된 메모리 지점에서 데이터를 복사하여 복사한 데이터를 상기 디버깅 실행부로 전송하고, 상기 디버깅 실행부에 의해 상기 특정 플러그인이 실행되면, 상기 특정 플러그인으로 상기 복사한 데이터를 전송하는 어플리케이션 실행부를 포함할 수 있다. According to an aspect of the present invention, there is provided a debugging apparatus for setting a debugging point for correcting a bug when a bug occurs in a development application, storing data for the development application, A memory point where data checking is required in the debugging memory, analyzes the copied data at the memory location set in the debugging memory, selects a specific plug-in that can check the copied data according to the analysis result, A debugging execution unit for controlling the debugging execution unit; And a debugging unit for executing the compiled code of the development application. When the debugging execution unit sets the debugging point, the data copying unit copies data copied at the memory location, under control of the debugging execution unit, to the debugging execution unit, And an application execution unit that transmits the copied data to the specific plug-in when the specific plug-in is executed by the debugging execution unit.

본 발명의 바람직한 실시예에 따른 디버깅 장치는, 상기 개발 어플리케이션에 대한 데이터를 상기 어플리케이션 실행부에 할당된 별도의 저장 공간인 상기 디버깅 메모리에 저장하는 저장부를 더 포함할 수 있다. The debugging apparatus according to the preferred embodiment of the present invention may further include a storage unit for storing the data for the developed application in the debugging memory, which is a separate storage space allocated to the application executing unit.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 저장부는, 상기 디버깅을 수행하기 위한 디버깅 툴에 대한 데이터를 상기 디버깅 실행부에 할당된 별도의 저장 공간에 저장하고, 상기 디버깅 실행부에서 상기 어플리케이션 메로리에서 복사해온 데이터를 상기 디버깅 실행부에 할당된 별도의 저장 공간에 저장할 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the storage unit stores data on a debugging tool for performing the debugging in a separate storage space allocated to the debugging execution unit, The data copied from the application memory may be stored in a separate storage space allocated to the debugging execution unit.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 개발 어플리케이션의 디버깅 툴의 실행 화면을 출력하고, 상기 어플리케이션 실행부에서 실행되는 상기 개발 어플리케이션의 컴파일 코드의 실행 데이터를 상기 실행 화면에 출력하는 출력부를 더 포함할 수 있다. The debugging apparatus according to the preferred embodiment of the present invention may further include an output unit that outputs an execution screen of the debugging tool of the development application and outputs execution data of the compiled code of the development application executed by the application execution unit, And the like.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 출력부는, 상기 특정 플러그인과 연동하여 상기 특정 플러그인에서 처리된 데이터를 개발자가 실시간으로 확인할 수 있도록 출력할 수 있다.In the debugging apparatus according to the preferred embodiment of the present invention, the output unit may output the data processed in the specific plug-in in cooperation with the specific plug-in so that the developer can check the data in real time.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 디버깅 실행부는, 상기 개발 어플리케이션의 디버깅을 위한 디버깅 툴의 실행을 제어하고, 현재 실행되는 개발 어플리케이션의 컴파일 코드에서 버그가 발생하면 디버그 이벤트를 발생하는 디버깅 지원 모듈; 및 상기 디버그 이벤트가 발생하면, 현재 실행 중인 컴파일 코드에서 상기 버그를 수정하기 위한 디버깅 지점을 설정하고, 상기 디버깅 메모리에서 데이터 확인이 필요한 메모리 지점을 설정하고, 설정된 메모리 지점에서 복사한 데이터를 분석하고, 분석 결과에 따라 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하여 선택된 특정 플러그인에서 상기 복사한 데이터를 처리하도록 제어하는 디버깅 프로세스를 포함할 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the debugging execution unit controls the execution of the debugging tool for debugging the development application, generates a debug event when a bug occurs in the compiled code of the currently executed development application Debugging support module; And setting a debugging point for correcting the bug in the currently executed compile code when the debug event occurs, setting a memory point at which data checking is required in the debugging memory, analyzing the copied data at the set memory point, And a debugging process for controlling the selected plug-in to process the copied data by selecting a specific plug-in that can confirm the copied data according to the analysis result.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 디버깅 프로세스는, 상기 컴파일 코드에 대한 디버그 심볼에 포함된 소스코드 상의 위치에서 메모리 주소를 검출하여 디버깅 지점 명령을 설정하고, 설정된 디버깅 지점 명령을 상기 어플리케이션 실행부로 전송할 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the debugging process may include detecting a memory address at a location on a source code included in a debug symbol for the compiled code, setting a debugging point command, To the application executing section.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 디버깅 프로세스는, 상기 설정된 디버깅 지점에서 개발자에 의해 선택된 시작점과 데이터 사이즈를 이용하여 상기 메모리 지점을 설정할 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the debugging process may set the memory point using a start point and a data size selected by a developer at the set debugging point.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 디버깅 프로세스는, 상기 복사한 데이터의 헤더를 분석하여 상기 복사한 데이터가 일반 데이터인 경우, 분석된 헤더 정보에 상응하는 등록된 플러그인을 선택하여 실행시킬 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the debugging process analyzes a header of the copied data, and when the copied data is general data, a registered plug-in corresponding to the analyzed header information is selected Can be executed.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 디버깅 프로세서는, 상기 복사한 데이터의 헤더를 분석하여 상기 복사한 데이터가 일반 데이터가 아닌 경우, 개발자에 의해 임의로 선택된 플러그인을 실행시킬 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the debugging processor may analyze the header of the copied data, and may execute a plug-in selected arbitrarily by the developer when the copied data is not general data.

본 발명의 바람직한 실시예에 따른 디버깅 장치에 있어서, 상기 어플리케이션 실행부는, 상기 개발 어플리케이션의 컴파일 코드를 실행하고, 상기 디버깅 실행부에 의해 디버깅 지점이 설정되면, 상기 디버깅 실행부의 제어에 따라 상기 설정된 메모리 지점에서 데이터를 복사하여 상기 디버깅 실행부로 전송하는 어플리케이션 프로세스; 및 상기 디버깅 실행부의 제어에 따라 실행되어 상기 어플리케이션 실행부의 상기 메모리 지점에서 복사한 데이터를 읽어와서 상기 복사한 데이터를 실시간으로 확인할 수 있도록 처리하는 하나 이상의 플러그인을 포함할 수 있다. In the debugging apparatus according to the preferred embodiment of the present invention, the application execution unit executes the compiled code of the development application, and when a debugging point is set by the debugging execution unit, An application process of copying data from a point to the debugging execution unit; And one or more plug-ins executed in accordance with the control of the debugging execution unit to read data copied from the memory point of the application execution unit and process the copied data in real time.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법은, 개발 어플리케이션의 컴파일 코드를 실행하는 단계; 상기 실행되는 컴파일 코드에서 버그가 발생하면, 상기 컴파일 코드에서 디버깅 지점을 설정하는 단계; 상기 개발 어플리케이션에 대한 데이터를 저장하고 있는 디버깅 메모리에서 데이터 확인이 필요한 메모리 지점을 설정하는 단계; 설정된 메모리 지점에서 복사한 데이터를 수신하는 단계; 상기 복사한 데이터를 분석하여 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하는 단계; 선택된 특정 플러그인을 실행시키는 단계; 및 실행된 특정 플러그인에서 상기 복사한 데이터를 처리하도록 제어하는 단계를 포함할 수 있다. According to another aspect of the present invention, there is provided a method for checking data in a debugging memory in a debugging apparatus, the method comprising: executing a compiled code of a development application; Setting a debugging point in the compiled code when a bug occurs in the executed compiled code; Setting a memory location that requires data verification in a debugging memory storing data for the development application; Receiving data copied from a set memory location; Analyzing the copied data and selecting a specific plug-in that can confirm the copied data; Executing the selected specific plug-in; And controlling the copied data to be processed in the specific plug-in executed.

본 발명의 바람직한 실시예에 따른 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법에 있어서, 상기 복사한 데이터를 분석하여 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하는 단계는, 상기 복사한 데이터의 헤더를 분석하는 단계; 분석 결과에 따라 상기 복사한 데이터가 일반 데이터인지를 확인하는 단계; 및 상기 복사한 데이터가 일반 데이터인 경우, 분석된 헤더 정보에 상응하는 등록된 플러그인을 선택하는 단계를 포함할 수 있다. The method of verifying data in a debugging memory in a debugging apparatus according to a preferred embodiment of the present invention may further include the step of selecting a specific plug-in for analyzing the copied data and checking the copied data, Analyzing a header of the data; Checking whether the copied data is general data according to the analysis result; And if the copied data is general data, selecting a registered plug-in corresponding to the analyzed header information.

본 발명의 바람직한 실시예에 따른 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법에 있어서, 상기 복사한 데이터를 분석하여 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하는 단계는, 상기 복사한 데이터가 일반 데이터가 아닌 경우, 개발자에 의해 플러그인을 선택받는 단계;를 더 포함할 수 있다. The method of verifying data in a debugging memory in a debugging apparatus according to a preferred embodiment of the present invention may further include the step of selecting a specific plug-in for analyzing the copied data and checking the copied data, And selecting the plug-in by the developer if the data is not general data.

본 발명의 바람직한 실시예에 따른 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법에 있어서, 상기 컴파일 코드에서 디버깅 지점을 설정하는 단계는, 상기 실행되는 컴파일 코드에서 버그가 발생하면, 실시간 지원 모듈에서 디버그 이벤트를 발생하는 단계; 디버깅 프로세스에서 디버그 이벤트에 따라 상기 컴파일 코드에 대한 디버그 심볼을 이용하여 소스코드 상의 메모리 주소를 검출하는 단계; 검출된 메모리 주소를 이용하여 디버깅 지점의 명령을 설정하는 단계; 및 설정된 디버깅 지점 명령을 상기 개발 어플리케이션을 실행하기 위한 어플리케이션 프로세스로 전송하는 단계를 포함할 수 있다. In the method for checking data in a debugging memory in a debugging apparatus according to a preferred embodiment of the present invention, the step of setting a debugging point in the compiling code may include: when a bug occurs in the executed compiling code, Generating a debug event; Detecting a memory address on the source code using a debug symbol for the compiled code according to a debug event in a debugging process; Setting an instruction of a debugging point using the detected memory address; And transmitting the set debugging point command to an application process for executing the development application.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 컴퓨터에서 판독 가능한 기록 매체는 디버깅을 위한 방법을 실행하기 위한 프로그램이 기록되어 있다.According to an aspect of the present invention, there is provided a computer-readable recording medium having recorded thereon a program for executing a method for debugging.

본 발명은 개발 어플리케이션(또는 프로그램)에서 버그 이벤트가 발생함에 따라 확인이 필요한 메모리 지점에서 복사한 데이터의 분석을 통해 선택된 플러그인을 이용하여 복사한 데이터를 출력함으로써, 개발자가 디버깅 메모리에 저장된 데이터를 실시간으로 확인할 수 있다.According to the present invention, a bug event is generated in a development application (or a program), and the copied data is analyzed by using the selected plug-in through analysis of data copied from a memory point requiring confirmation, thereby outputting the data stored in the debugging memory .

이로 인해 본 발명은 디버깅 메모리에 저장된 데이터의 이상 유무를 보다 간편하게 확인할 수 있으며, 어플리케이션 개발에 소요되는 시간을 줄일 수 있고, 보다 정확하게 어플리케이션을 개발할 수 있는 효과가 있다. Accordingly, the present invention can more easily confirm the abnormality of data stored in the debugging memory, reduce the time required for application development, and develop applications more accurately.

도 1은 본 발명의 실시예에 따른 디버깅을 위한 디버깅 장치의 구성을 도시한 도면이다.
도 2는 본 발명의 실시예에 따른 디버깅을 위한 디버깅 장치의 세부 구성을 도시한 도면이다.
도 3은 본 발명의 실시예에 따른 디버깅 장치에서의 디버깅 프로세스 메모리의 데이터를 확인하기 위한 방법을 도시한 도면이다.
1 is a block diagram of a debugging apparatus for debugging according to an embodiment of the present invention.
2 is a detailed block diagram of a debugging apparatus for debugging according to an embodiment of the present invention.
3 is a diagram illustrating a method for verifying data in a debugging process memory in a debugging apparatus according to an embodiment of the present invention.

이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, detailed description of well-known functions or constructions that may obscure the subject matter of the present invention will be omitted. It should be noted that the same constituent elements are denoted by the same reference numerals as possible throughout the drawings.

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.The terms and words used in the present specification and claims should not be construed to be limited to ordinary or dictionary meanings and the inventor is not limited to the concept of terminology for describing his or her invention in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention, and not all of the technical ideas of the present invention are described. Therefore, It is to be understood that equivalents and modifications are possible.

우선, 본 발명의 실시예에 따른 디버깅을 위한 디버깅 장치에 대해 첨부된 도면을 참조하여 구체적으로 설명하기로 한다. First, a debugging apparatus for debugging according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 디버깅을 위한 디버깅 장치의 구성을 도시한 도면이다.1 is a block diagram of a debugging apparatus for debugging according to an embodiment of the present invention.

도 1을 참조하면, 디버깅 장치(100)는 다양한 어플리케이션 및 프로그램 등을 실행할 수 있는 운영체제를 포함하는 컴퓨팅 장치를 말하는 것이며, 태블릿 PC(Tablet PC), 랩톱(Laptop), 개인용 컴퓨터(PC: Personal Computer), 스마트폰(Smart Phone), 개인휴대용 정보단말기(PDA: Personal Digital Assistant), 스마트 TV 및 이동통신 단말기(Mobile Communication Terminal) 등 중 어느 하나일 수 있다. 특히, 본 발명의 실시예에 따른 디버깅 장치(100)는 개발자가 개발한 어플리케이션 또는 프로그램을 업로드 하면, 개발 어플리케이션 또는 프로그램의 모든 동작을 위한 코드를 코딩 즉, 컴파일하여 컴파일된 코드를 실행하여 테스트를 수행할 수 있다. 이때, 디버깅 장치(100)는 테스트되는 컴파일 코드에서 잘못된 부분을 찾아 수정하기 위한 디버깅을 수행할 수 있다. 이러한 디버깅 시 디버깅 장치(100)는 컴파일 코드에서 오류가 발생 즉, 디버그 이벤트가 발생하면, 디버깅 도구를 통해 디비깅을 수행할 수 있다. 이때, 디버깅 장치(100)는 개발 환경 하에서 디버깅이 필요한 시점을 설정하고, 디버깅 시점에서 확인이 필요한 메모리 영역을 시작점과 데이터 사이즈를 이용하여 선택할 수 있다. 이에 따라 디버깅 장치(100)는 선택된 메모리 지점에 저장된 데이터를 읽어(read)와 데이터의 헤더를 분석하고, 분석된 헤더 내용에 따라 플러그인(Plugin)을 선택하고, 선택된 플러그인을 실행시킨 후 실행된 플러그인 메모리로 복사된 데이터를 처리할 수 있다. 여기서, 디버깅 대상은 어플리케이션 또는 프로그램 등이 될 수 있으며, 이하, 본 발명의 실시예에서는 어플리케이션을 예를 들어 설명하기로 한다. 1, the debugging apparatus 100 refers to a computing device including an operating system capable of executing various applications and programs, and includes a tablet PC, a laptop, a personal computer (PC) ), A smart phone, a personal digital assistant (PDA), a smart TV, and a mobile communication terminal. In particular, when the debugging apparatus 100 according to the embodiment of the present invention uploads an application or a program developed by the developer, the debugger 100 codes the code for all the operations of the development application or the program, Can be performed. At this time, the debugging apparatus 100 can perform debugging for finding and correcting an erroneous portion in the test code. When the debugging apparatus 100 generates an error in the compiled code, that is, when a debug event occurs, the debugging apparatus 100 can perform debugging through the debugging tool. At this time, the debugging apparatus 100 can set a time required for debugging under a development environment, and can select a memory area that needs confirmation at the time of debugging, using a start point and a data size. Accordingly, the debugging apparatus 100 reads the data stored in the selected memory location, analyzes the header of the data, selects the plugin according to the analyzed header contents, executes the selected plugin, The data copied to memory can be processed. Here, the debugging object may be an application, a program, or the like. Hereinafter, an application will be described as an example in the embodiment of the present invention.

이러한 디버깅 장치(100)는 입력부(110), 디버깅 실행부(120), 어플리케이션 실행부(130), 저장부(140) 및 출력부(150)를 포함하여 구성될 수 있다. The debugging apparatus 100 may include an input unit 110, a debugging execution unit 120, an application execution unit 130, a storage unit 140, and an output unit 150.

입력부(110)는 개발자의 조작에 따라서 개발자의 요청이나 정보에 해당하는 개발자 입력 신호를 발생할 수 있다. 또한, 입력부(110)는 현재 상용화되어 있거나 향후 상용화가 가능한 다양한 입력 수단으로 구현될 수 있으며, 예를 들면, 키보드, 마우스, 조이스틱, 터치 스크린, 터치 패드 등과 같은 일반적인 입력 장치뿐만 아니라, 개발자의 모션을 감지하여 특정 입력 신호를 발생하는 제스처 입력 수단을 포함할 수 있다. 특히 본 발명의 실시예에 따른 입력부(110)는 디버깅 실행부(120)와 연동하여 디버깅을 위한 디버깅 툴의 실행 화면의 입력창을 통해 입력되는 정보들에 대한 입력 신호를 발생할 수 있다. 예를 들어, 입력부(110)는 실행 화면의 입력창을 통해 버그 수정을 위한 명령들을 입력 받아 이에 따른 입력 신호를 발생할 수 있다. The input unit 110 can generate a developer input signal corresponding to a request or information of the developer according to the operation of the developer. The input unit 110 may be implemented by various input means that are currently commercialized or may be commercialized in the future. For example, the input unit 110 may include general input devices such as a keyboard, a mouse, a joystick, a touch screen, And gesture input means for generating a specific input signal. In particular, the input unit 110 according to the embodiment of the present invention may generate an input signal for information input through the input window of the execution screen of the debugging tool for debugging in cooperation with the debugging execution unit 120. For example, the input unit 110 may receive commands for correcting a bug through an input window of an execution screen, and may generate an input signal corresponding thereto.

디버깅 실행부(120)는 개발 어플리케이션에서 버그가 발생하면, 버그를 수정하기 위한 디버깅 지점을 설정하고, 버그를 실시간으로 수정하기 위한 임시 코드를 이용하여 디버깅 지점에서의 디버깅을 실행할 수 있다. 이러한 디버깅 실행부(120)는 디버깅을 위한 디버깅 툴을 통해 디버깅을 실행할 수 있으며, 컴퓨터 등의 중앙 처리 장치(CPU: Central Processing Unit)에서 별도의 프로세스를 통해 동작할 수 있다. When a bug occurs in the development application, the debugging execution unit 120 may set a debugging point for correcting the bug and debug the debugging point using the temporary code for correcting the bug in real time. The debugging execution unit 120 can perform debugging through a debugging tool for debugging, and can operate through a separate process in a central processing unit (CPU) such as a computer.

또한, 디버깅 실행부(120)는 첨부된 도 2에 도시된 바와 같이, 디버깅 실행을 위한 툴로 이루어진 디버깅 환경의 디버깅 지원 모듈(121) 및 디버깅을 위한 프로그램 실행 및 실행 프로그램의 처리를 위한 디버깅 프로세스(122)를 포함하여 구성될 수 있다. 여기서, 디버깅 프로세스(122)는 디버깅 장치(100)의 중앙처리장치(CPU)에서 처리되나, 별도의 프로세스로 동작하게 되며, 저장부(140)에 별도의 메모리를 구성하여 구성된 메모리에 필요한 정보 등을 저장할 수 있다. 2, the debugging execution unit 120 includes a debugging support module 121 of a debugging environment composed of a tool for debugging execution, a debugging process for debugging, and a debugging process 122). Here, the debugging process 122 is performed by a central processing unit (CPU) of the debugging apparatus 100, but operates as a separate process. A separate memory is formed in the storage unit 140, Lt; / RTI >

디버깅 지원 모듈(121)은 디버깅 툴의 실행을 제어하고, 디버깅 프로세스(122)를 지원하기 위한 기능을 제공하는 예를 들어, 윈도우(Windows) 커널 등과 같은 운영체제이다. 또한 디버깅 지원 모듈(121)은 어플리케이션 실행부(130)에서 디버그 트랩(Debug trap)을 발생하면, 이를 감지하여 디버깅 프로세스로 디버그 이벤트(Debug event)를 발생할 수 있다. The debugging support module 121 is an operating system such as a Windows kernel or the like that controls the execution of the debugging tool and provides a function for supporting the debugging process 122. [ When the debugging support module 121 generates a debug trap in the application execution unit 130, the debugging support module 121 can detect a debug trap and generate a debug event in the debugging process.

디버깅 프로세스(122)는 디버깅 대상인 개발 어플리케이션을 실행하는 어플리케이션 프로세스(131)의 메모리를 읽고 쓸 수 있으며, 디버그 이벤트 발생에 따라 이에 해당하는 기능을 수행하는 프로그램이다. 이러한 디버깅 프로세스(122)는 어플리케이션 프로세스(131)를 새로 시작하거나 이미 수행중인 어플리케이션 프로세스(131)와의 연결(attach)을 수행하고, 디버그 이벤트 발생을 대기하고, 디버그 이벤트가 발생하면, 해당 디버그 이벤트를 처리하는 과정을 반복 루푸(디버거 루푸: Debugger loop)를 이용하여 반복 수행할 수 있다. The debugging process 122 is a program that can read and write the memory of the application process 131 executing the development application to be debugged, and performs a function corresponding to the occurrence of the debug event. The debugging process 122 starts the application process 131 or attaches to the application process 131 that is already performed and waits for the generation of the debug event. When the debug event occurs, The process can be repeated using a repeater loop (Debugger loop).

특히, 디버깅 프로세스(122)는 버그가 발생 즉, 디버그 이벤트가 발생하면, 현재 실행 중인 컴파일 코드에서 상기 버그를 수정하기 위한 디버깅 지점을 설정하고, 설정된 디버깅 지점의 디버깅을 수행할 수 있다. 여기서, 디버깅 프로세스(122)는 컴파일 코드에 대한 디버그 심볼에 포함된 소스코드 상의 위치에서 메모리 주소를 검출하여 디버깅 지점 명령을 설정하고, 설정된 디버깅 지점 명령을 어플리케이션 실행부(130)로 전송할 수 있다. In particular, when a bug occurs, that is, when a debug event occurs, the debugging process 122 can set a debugging point for correcting the bug in the currently executing compiling code, and perform debugging of the set debugging point. Here, the debugging process 122 may detect a memory address at a location on the source code included in the debug symbol for the compiled code, set a debugging point command, and send the set debugging point command to the application executing unit 130.

또한, 디버깅 프로세스(122)는 디버깅 지점이 설정되면, 개발 어플리케이션에 대한 데이터(컴파일 코드에 대한 데이터)를 저장하고 있는 디버깅 메모리에서 데이터 확인을 위한 메모리 지점 즉, 현재 버그가 발생한 디버깅 지점의 컴파일 코드에 대한 데이터를 저장한 메모리 지점(영역)을 설정하고, 이에 대한 명령 신호를 어플리케이션 실행부(130)의 어플리케이션 프로세스(131)로 전송할 수 있다. 여기서, 디버깅 프로세스(122)는 설정된 디버깅 지점에서 확인이 필요한 메모리 지점을 개발자에 의해 선택된 시작점과 데이터 사이즈를 이용하여 설정할 수 있다. In addition, when the debugging point is set, the debugging process 122 generates a memory point for data confirmation in the debugging memory storing data (data on the compiled code) for the development application, that is, a compile code (Area) in which data for the application execution unit 130 is stored, and transmits the command signal to the application process 131 of the application execution unit 130. Here, the debugging process 122 can set a memory point at which the confirmation is required at the set debugging point, using the start point and data size selected by the developer.

이에 따라 디버깅 프로세스(122)는 디버깅 메모리에서 지정된 메모리 지점에서 복사한 데이터를 읽어온(read) 후, 복사한 데이터의 헤더를 분석하고, 분석 결과에 따라 복사한 데이터를 확인할 수 있는 특정 플러그인(132)를 선택할 수 있다. 그리고 디버깅 프로세스(122)는 선택된 특정 플러그인(132)과 연결하여 특정 플러그인(132)을 실행시키고, 실행된 플러그인(132)이 메모리 지점에서 직접 읽어온 데이터를 처리할 수 있도록 제어할 수 있다. 구체적으로 디버깅 프로세스(122)는 디버깅 메모리 상에 존재하는 데이터가 일반적으로 많이 사용하는 데이터(이하, 일반 데이터라 칭함) 포멧 예를 들어, jpeg, png 등의 이미지, wave 등의 사운드)인 경우에는 복사한 데이터의 헤더 정보의 분석 결과에 상응하는 등록된 플러그인을 선택할 수 있다. 반면, 디버깅 프로세스(122)는 복사한 데이터가 일반 데이터가 아닌 경우 개발자에 의해 데이터를 확인할 수 있는 플러그인을 선택받아 실행시킬 수 있다. Accordingly, the debugging process 122 analyzes the header of the copied data after reading the data copied from the designated memory point in the debugging memory, and then analyzes the header of the specific plug-in 132 ) Can be selected. The debugging process 122 may also be coupled to the selected particular plug-in 132 to execute a specific plug-in 132 and to control the executed plug-in 132 to process the data directly read from the memory point. More specifically, in the case where the data existing on the debugging memory in the debugging memory 122 is a data (hereinafter referred to as general data), for example, images such as jpeg, png, waves, etc. The registered plug-in corresponding to the analysis result of the header information of the copied data can be selected. On the other hand, if the copied data is not general data, the debugging process 122 can select and execute a plug-in that can confirm the data by the developer.

다음으로, 어플리케이션 실행부(130)는 개발 어플리케이션을 실행 즉, 컴파일 코드를 실행하고, 개발 어플리케이션에 대한 데이터를 저장한 디버깅 메모리에서 설정된 메모리 지점의 데이터를 복사하여 복사한 데이터를 디버깅 실행부(120)로 전송할 수 있다. 이러한 어플리케이션 실행부(130)는 첨부된 도 2에 도시된 바와 같이, 어플리케이션 프로그램의 실행 관련 처리를 위한 어플리케이션 프로세스(131) 및 하나 이상의 다수의 플러그인(plugin)(132)을 포함하여 구성될 수 있다. 또한, 어플리케이션 실행부(130)는 개발 어플리케이션에 대한 디버깅 및 디버깅 메모리의 데이터를 실시간 확인하기 위해 디버깅 실행부(120)와 연동할 수 있다. 여기서, 어플리케이션 프로세스(131)는 디버깅 장치(100)의 중앙처리장치(CPU)에서 처리되나, 별도의 프로세스로 동작하게 되며, 저장부(140)에 별도의 메모리를 구성하여 구성된 메모리에 필요한 정보 등을 저장할 수 있다. Next, the application execution unit 130 executes the development application, that is, executes the compiled code. The application execution unit 130 copies the copied data of the memory point set in the debugging memory storing the data for the developed application to the debugging execution unit 120 ). 2, the application executing unit 130 may include an application process 131 for execution-related processing of an application program and one or more plug-ins 132 . Also, the application execution unit 130 can operate in conjunction with the debugging execution unit 120 in order to check debugging data of the development application and data of the debugging memory in real time. Here, the application process 131 is performed by a central processing unit (CPU) of the debugging apparatus 100, but operates as a separate process. A separate memory is formed in the storage unit 140, Lt; / RTI >

어플리케이션 프로세스(131)는 개발 어플리케이션을 실행 즉, 개발된 코드들을 컴파일한 컴파일 코드를 실행하고, 디버깅 프로세스(122)에 의해 디버깅 지점이 설정되면, 디버깅 프로세스(122)로부터 이에 대한 명령 신호를 수신할 수 있다. 그리고 어플리케이션 프로세스(131)는 디버깅 프로세스(122)로부터 메모리 지정 명령 신호를 수신하면, 디버깅 메모리에 저장된 데이터를 복사하여 복사된 데이터를 디버깅 프로세스(122)로 제공할 수 있다. 이후, 디버깅 프로세스(122)에서 선택된 플러그인(132)이 실행되면, 선택된 플러그인(132)의 데이터 리드 요청에 따라 해당 복사된 데이터를 플러그인(132)으로 전송할 수 있다. The application process 131 executes the development application, that is, the compiled code in which the developed codes are compiled, and when the debugging point is set by the debugging process 122, the application process 131 receives the command signal from the debugging process 122 . When the application process 131 receives the memory designation command signal from the debugging process 122, the application process 131 may copy the data stored in the debugging memory and provide the copied data to the debugging process 122. When the selected plug-in 132 is executed in the debugging process 122, the copied data can be transmitted to the plug-in 132 in response to the data read request of the selected plug-in 132.

플러그인(132)은 디버깅 프로세스(122)에서 선택되어 디버깅 프로세스(122)의 제어에 따라 실행될 수 있으며, 어플리케이션 프로세스(131)와 연동하여 어플리케이션 프로세스(131)로부터 확인이 필요한 복사된 데이터를 읽어와서 읽어온 데이터의 종류에 맞는 실행할 수 있다. 이를 위해 플러그인(132)은 복사된 데이터를 시각화 또는 청각화하여 처리 즉, 플러그인 실행 화면에 영상을 디스플레이하거나, 출력부(150)의 스피커를 통해 사운드를 출력할 수 있다. 이에 따라 개발자는 플러그인(132)에서 출력되는 데이터를 통해 디버깅 메모리에 저장되어 있는 데이터의 이상 유무를 확인할 수 있게 된다. The plug-in 132 is selected in the debugging process 122 and can be executed under the control of the debugging process 122. The plug-in 132 reads the copied data required to be confirmed by the application process 131 in cooperation with the application process 131, On data can be executed. To this end, the plug-in 132 may visualize or audition the copied data, that is, display an image on the plug-in execution screen, or output the sound through the speaker of the output unit 150. Accordingly, the developer can check the presence or absence of data stored in the debugging memory through the data output from the plug-

또한, 플러그인(132)은 직접 메모리 지점에서 데이터를 읽어오지 않고, 임시 파일 형태로 저장하여 디버깅 장치(100)의 저장부(140)에 저장된 3rd 파트 어플리케이션을 직접 실행하여 결과를 확인할 수도 있다. Also, the plug-in 132 may directly read the result of the 3 rd part application stored in the storage unit 140 of the debugging apparatus 100 without reading the data directly from the memory location, but in the form of a temporary file.

저장부(140)는 디버깅 장치(100)의 동작에 필요한 정보들을 저장하며, 특히, 개발 어플리케이션에 대한 데이터를 어플리케이션 실행부(130)에 할당된 별도의 저장 공간인 디버깅 메모리에 저장할 수 있다. 또한, 저장부(140)는 디버깅 실행부(120)에서 디버깅을 수행하기 위한 디버깅 툴에 대한 데이터를 디버깅 실행부(120)에 할당된 별도의 저장 공간에 저장하고, 디버깅 메모리에서 복사한 데이터를 상기 디버깅 실행부(120)에 할당된 별도의 저장 공간에 저장할 수 있다. 이러한 저장부(140)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media) 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리를 포함한다. The storage unit 140 stores information necessary for the operation of the debugging apparatus 100, and in particular, stores the data for the development application in a debugging memory, which is a separate storage space allocated to the application executing unit 130. The storage unit 140 stores the data of the debugging tool for performing debugging in the debugging execution unit 120 in a separate storage space allocated to the debugging execution unit 120, And may be stored in a separate storage space allocated to the debugging execution unit 120. The storage unit 140 may be an optical storage medium such as a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, a CD-ROM (Compact Disc Read Only Memory), a DVD (Digital Video Disk) A magneto-optical medium such as a floppy disk and a ROM, a random access memory (RAM), and a flash memory.

출력부(150)는 디버깅 장치(100)의 동작 결과나 상태를 개발자가 인식할 수 있도록 제공하는 수단으로서, 예를 들면, 화면을 통해 시각적으로 출력하는 표시부나, 가청음을 출력하는 스피커 등을 포함할 수 있다. 특히, 본 발명에 있어서, 출력부(150)는 디버깅 장치(100)에서 구동되는 디버깅에 관련된 화면을 표시하기 위해 개발 어플리케이션의 디버깅 툴의 실행 화면을 출력할 수 있다. 그리고 출력부(150)는 어플리케이션 실행부(130)에서 실행되는 개발 어플리케이션의 컴파일 코드의 실행 데이터를 실행 화면에 출력하고, 특정 플러그인(132)과 연동하여 특정 플러그인(132)에서 처리된 데이터를 출력할 수 있다. The output unit 150 is a means for providing the result or state of the operation of the debugging apparatus 100 so that the developer can recognize it. For example, the output unit 150 includes a display unit for visually outputting the result through a screen or a speaker for outputting an audible sound can do. In particular, in the present invention, the output unit 150 may output an execution screen of a debugging tool of a development application to display a screen related to debugging driven by the debugging apparatus 100. [ The output unit 150 outputs the execution data of the compiled code of the development application executed in the application execution unit 130 to the execution screen and outputs the processed data in the specific plug-in 132 in conjunction with the specific plug- can do.

그러면, 이와 같이 구성된 디버깅 장치에서 디버깅 메모리의 데이터를 확인하기 위한 방법에 대해 첨부된 도면을 참조하여 구체적으로 설명하기로 한다. A method for checking the data of the debugging memory in the debugging apparatus constructed as above will now be described in detail with reference to the accompanying drawings.

도 3은 본 발명의 실시예에 따른 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법을 도시한 도면이다.3 is a diagram illustrating a method for checking data in a debugging memory in a debugging apparatus according to an embodiment of the present invention.

도 3을 참조하면, 1101단계에서 디버깅 장치(100)는 개발 어플리케이션을 실행 즉, 개발한 컴파일 코드를 실행한다. 이때, 어플리케이션 프로세스(131)에서 디버그 트랩이 발생하여 디버깅 지원 모듈(121)이 디버그 이벤트를 발생하면, 즉, 실행되는 컴파일 코드에서 버그가 발생하면, 1102단계에서 디버깅 장치(100)는 디버깅 프로세스(122)를 통해 컴파일 코드에서 디버깅 지점을 설정한다. 이때, 디버깅 프로세스(122)는 디버깅 프로세스에서 디버그 이벤트에 따라 상기 컴파일 코드에 대한 디버그 심볼을 이용하여 소스코드 상의 메모리 주소를 검출하고, 검출된 메모리 주소를 이용하여 디버깅 지점의 명령을 설정하여 설정된 디버깅 지점 명령을 상기 개발 어플리케이션을 실행하기 위한 어플리케이션 프로세스로 전송한다. Referring to FIG. 3, in step 1101, the debugging apparatus 100 executes the developed application, that is, the developed compiled code. At this time, when a debug trap occurs in the application process 131 and a debug event is generated by the debugging support module 121, that is, when a bug occurs in the compiled code to be executed, the debugging apparatus 100 performs a debugging process 122) to set the debugging point in the compiled code. At this time, the debugging process 122 detects the memory address on the source code using the debug symbol for the compiled code in accordance with the debug event in the debugging process, sets the command of the debugging point using the detected memory address, And transmits the branch command to the application process for executing the development application.

이에 따라 1103단계에서 디버깅 장치(100)는 설정된 디버깅 지점에서의 디버깅을 시작하고, 반복 루프를 통해 코드들의 디버깅을 수행한다. 이때, 디버깅 장치(100)의 디버깅 프로세스(120)는 디버깅 지점에서 확인이 필요한 디버깅 메모리 지점을 설정하고, 메모리 지점 설정 명령 신호를 어플리케이션 프로세스(131)로 전송한다. Accordingly, in step 1103, the debugging apparatus 100 starts debugging at a set debugging point, and performs debugging of the codes through an iterative loop. At this time, the debugging process 120 of the debugging apparatus 100 sets a debugging memory point requiring confirmation at the debugging point, and transmits a memory point setting command signal to the application process 131.

그런 다음 1104단계에서 디버깅 장치(100)의 디버깅 프로세스(122)는 디버깅 메모리에서 설정된 메모리 지점에 저장된 데이터를 읽어온다. 이때, 어플리케이션 프로세스(131)는 설정된 메모리 지점에 저장된 데이터를 복사하여 복사한 데이터를 디버깅 프로세스(122)로 전송하게 된다. In step 1104, the debugging process 122 of the debugging apparatus 100 reads the data stored in the memory location set in the debugging memory. At this time, the application process 131 copies the data stored in the set memory location and transfers the copied data to the debugging process 122.

그러면 1105단계에서 디버깅 프로세스(122)는 복사된 데이터의 헤더를 분석하고, 1106단계에서 분석 결과 즉, 분석한 헤더 정보에 따라 이에 상응하는 특정 플러그인(132)을 선택할 수 있다. 그런 다음 1107단계에서 선택된 특정 플러그인(132)을 실행시킨다. 여기서, 디버깅 프로세스(122)는 분석 결과에 따라 상기 복사한 데이터가 일반 데이터인지를 확인하여, 복사한 데이터가 일반 데이터인 경우, 분석된 헤더 정보에 상응하는 등록된 플러그인(132)을 선택하고, 복사한 데이터가 일반 데이터가 아닌 경우, 개발자에 의해 플러그인(132)을 선택받는다. In step 1105, the debugging process 122 analyzes the header of the copied data. In step 1106, the debugging process 122 may select a specific plug-in 132 corresponding to the analysis result, that is, the analyzed header information. Then, in step 1107, the specific plug-in 132 selected is executed. Here, the debugging process 122 checks whether the copied data is general data according to the analysis result. If the copied data is general data, the debugging process 122 selects a registered plug-in 132 corresponding to the analyzed header information, If the copied data is not general data, the plug-in 132 is selected by the developer.

이후, 디버깅 장치(100)는 실행되는 플러그인(132)을 통해 디버깅 메모리에서 직접 복사한 데이터를 읽어서 처리하도록 제어한다. 이에 따라 1108단계에서 실행되는 플러그인(132)은 디버깅 메모리에서 직접 데이터를 읽어온다. 그런 다음 디버깅 장치(100)는 1109단계에서 읽어온 데이터를 시각화 또는 청각화 처리하여 출력함으로써 개발자가 디버깅 메모리에서 읽어온 즉, 복사한 데이터를 실시간으로 확인할 수 있도록 한다. Then, the debugging apparatus 100 controls to read and process the data directly copied from the debugging memory through the plug-in 132 to be executed. Accordingly, the plug-in 132 executed in step 1108 directly reads data from the debugging memory. Then, the debugging apparatus 100 visualizes or audibly processes the data read in step 1109 and outputs the data to the debugging apparatus 100 so that the developer can check the data read from the debugging memory, that is, the copied data in real time.

이와 같은 디버깅을 위한 방법에 따라 개발자에 개발한 어플리케이션을 테스트하여 오류를 찾는 디버깅 작업 시 디버깅 장치(100)는 변경된 코드 즉, 임시 코드를 입력받아 버그가 발생한 즉, 수정이 필요한 부분에 삽입하여 변경된 코드를 테스트할 수 있다. 이에 따라 디버깅 장치(100)는 디버깅을 멈추고 버그를 수정하지 않고, 실시간으로 버그 수정 작업을 수행할 수 있다. According to the method for debugging, the debugging apparatus 100 receives the changed code, that is, the temporary code, in the debugging operation for testing the application developed by the developer to find the error, inserts the temporary code into the part where the bug occurs, You can test your code. Accordingly, the debugging apparatus 100 can perform a bug correction operation in real time without stopping the debugging and fixing the bug.

한편, 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.On the other hand, the recorded program instructions may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. For example, the recording medium may be an optical recording medium such as a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, a compact disk read only memory (CD-ROM), a digital video disk (DVD) Includes a hardware device that is specially configured to store and execute program instructions such as a magneto-optical medium such as a floppy disk and a ROM, a random access memory (RAM), a flash memory, do. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

또한, 본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.Further, a computer program (also known as a program, software, software application, script or code) that is embedded in the apparatus according to the present invention and which implements the method according to the present invention includes a compiled or interpreted language, a priori or procedural language , And may be deployed in any form including standalone programs or modules, components, subroutines, or other units suitable for use in a computer environment. A computer program does not necessarily correspond to a file in the file system. The program may be stored in a single file provided to the requested program, or in multiple interactive files (e.g., a file storing one or more modules, subprograms, or portions of code) (E.g., one or more scripts stored in a markup language document). A computer program may be deployed to run on multiple computers or on one computer, located on a single site or distributed across multiple sites and interconnected by a communications network.

한편, 본 명세서와 도면에 개시된 본 발명의 실시 예들은 이해를 돕기 위해 특정 예를 제시한 것에 지나지 않으며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 자명한 것이다.It should be noted that the embodiments of the present invention disclosed in the present specification and drawings are only illustrative of specific examples for the purpose of understanding and are not intended to limit the scope of the present invention. It will be apparent to those skilled in the art that other modifications based on the technical idea of the present invention are possible in addition to the embodiments disclosed herein.

또한, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.In addition, while the specification contains a number of specific implementation details, it should be understood that they are not to be construed as limitations on the scope of any invention or claim, but rather on the features that may be specific to a particular embodiment of a particular invention Should be understood as an explanation. Certain features described herein in the context of separate embodiments may be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented in multiple embodiments, either individually or in any suitable subcombination. Further, although the features may operate in a particular combination and may be initially described as so claimed, one or more features from the claimed combination may in some cases be excluded from the combination, Or a variant of a subcombination.

마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.Likewise, although the operations are depicted in the drawings in a particular order, it should be understood that such operations must be performed in that particular order or sequential order shown to achieve the desired result, or that all illustrated operations should be performed. Also, the separation of the various system components of the above-described embodiments should not be understood as requiring such separation in all embodiments, and the described program components and systems will generally be integrated together into a single software product or packaged into multiple software products It should be understood.

본 발명은 디버깅을 위한 방법 및 장치에 관한 것으로, 개발 어플리케이션(또는 프로그램)에서 버그 이벤트가 발생함에 따라 확인이 필요한 메모리 지점에서 복사한 데이터의 분석을 통해 선택된 플러그인을 이용하여 복사한 데이터를 출력함으로써, 개발자가 디버깅 메모리에 저장된 데이터를 실시간으로 확인할 수 있다.The present invention relates to a method and an apparatus for debugging, and it is an object of the present invention to provide a method and an apparatus for debugging by outputting copied data using a plug-in selected through analysis of data copied from a memory point requiring confirmation as a bug event occurs in a development application , The developer can check the data stored in the debugging memory in real time.

이로 인해 본 발명은 디버깅 메모리에 저장된 데이터의 이상 유무를 보다 간편하게 확인할 수 있으며, 어플리케이션 개발에 소요되는 시간을 줄일 수 있고, 보다 정확하게 어플리케이션을 개발할 수 있는 효과가 있다. Accordingly, the present invention can more easily confirm the abnormality of data stored in the debugging memory, reduce the time required for application development, and develop applications more accurately.

아울러, 본 발명은 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.In addition, the present invention has a possibility of commercial use or business, and is industrially applicable because it is practically possible to carry out clearly.

100: 디버깅 장치 110: 입력부 120: 디버깅 실행부
121: 디버깅 지원 모듈 122: 디버깅 프로세스
130: 어플리케이션 실행부 131: 어플리케이션 프로세스
132: 플러그인 140: 저장부 150: 출력부
100: debugging apparatus 110: input unit 120: debugging execution unit
121: Debugging support module 122: Debugging process
130: Application execution unit 131: Application process
132: plug-in 140: storage unit 150: output unit

Claims (16)

개발 어플리케이션에서 버그가 발생하면, 버그를 수정하기 위한 디버깅 지점을 설정하고, 상기 개발 어플리케이션에 대한 데이터를 저장하고 있는 디버깅 메모리에서 데이터 확인이 필요한 메모리 지점을 설정하고, 설정된 메모리 지점에서 복사한 데이터를 분석하고, 분석 결과에 따라 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하여 선택된 특정 플러그인에서 상기 복사한 데이터를 처리하도록 제어하는 디버깅 실행부; 및
상기 개발 어플리케이션의 컴파일 코드를 실행하고, 상기 디버깅 실행부에 의해 디버깅 지점이 설정되면, 상기 디버깅 실행부의 제어에 따라 상기 설정된 메모리 지점에서 데이터를 복사하여 복사한 데이터를 상기 디버깅 실행부로 전송하고, 상기 디버깅 실행부에 의해 상기 특정 플러그인이 실행되면, 상기 특정 플러그인으로 상기 복사한 데이터를 전송하는 어플리케이션 실행부;
를 포함하는 것을 특징으로 하는 디버깅 장치.
When a bug occurs in a development application, a debugging point for correcting a bug is set, a memory point for checking data is set in a debugging memory storing data for the development application, A debugging execution unit for selecting a specific plug-in that can check the copied data according to the analysis result, and controlling the selected copied plug-in to process the copied data; And
Wherein the debugging unit executes the compiled code of the development application, and when the debugging execution unit sets the debugging point, the data copying unit copies the copied data at the memory location according to the control of the debugging execution unit and transmits the copied data to the debugging execution unit, An application execution unit for transmitting the copied data to the specific plug-in when the specific plug-in is executed by the debugging execution unit;
And a debugging unit for debugging the debugging apparatus.
제1항에 있어서,
상기 개발 어플리케이션에 대한 데이터를 상기 어플리케이션 실행부에 할당된 별도의 저장 공간인 상기 디버깅 메모리에 저장하는 저장부;
를 더 포함하는 것을 특징으로 하는 디버깅 장치.
The method according to claim 1,
A storage unit for storing data for the development application in the debugging memory, which is a separate storage space allocated to the application execution unit;
Further comprising: a debugging unit operable to debug the debugging device.
제2항에 있어서, 상기 저장부는,
상기 디버깅을 수행하기 위한 디버깅 툴에 대한 데이터를 상기 디버깅 실행부에 할당된 별도의 저장 공간에 저장하고, 상기 디버깅 실행부에서 상기 어플리케이션 메로리에서 복사해온 데이터를 상기 디버깅 실행부에 할당된 별도의 저장 공간에 저장하는 것을 특징으로 하는 디버깅 장치.
The apparatus according to claim 2,
Wherein the debugging unit stores data for a debugging tool for performing debugging in a separate storage space allocated to the debugging execution unit, and the data copied from the application memory in the debugging execution unit is stored in a separate storage And stores the program in a space.
제1항에 있어서,
상기 개발 어플리케이션의 디버깅 툴의 실행 화면을 출력하고, 상기 어플리케이션 실행부에서 실행되는 상기 개발 어플리케이션의 컴파일 코드의 실행 데이터를 상기 실행 화면에 출력하는 출력부;
를 더 포함하는 것을 특징으로 하는 디버깅 장치.
The method according to claim 1,
An output unit outputting an execution screen of a debugging tool of the development application and outputting execution data of a compiled code of the development application executed by the application executing unit to the execution screen;
Further comprising: a debugging unit operable to debug the debugging device.
제4항에 있어서, 상기 출력부는,
상기 특정 플러그인과 연동하여 상기 특정 플러그인에서 처리된 데이터를 개발자가 실시간으로 확인할 수 있도록 출력하는 것을 특징으로 하는 디버깅 장치.
5. The apparatus according to claim 4,
Wherein the debugging unit outputs the data processed by the specific plug-in in cooperation with the specific plug-in so that the developer can check the data processed in real time.
제1항에 있어서, 상기 디버깅 실행부는,
상기 개발 어플리케이션의 디버깅을 위한 디버깅 툴의 실행을 제어하고, 현재 실행되는 개발 어플리케이션의 컴파일 코드에서 버그가 발생하면 디버그 이벤트를 발생하는 디버깅 지원 모듈; 및
상기 디버그 이벤트가 발생하면, 현재 실행 중인 컴파일 코드에서 상기 버그를 수정하기 위한 디버깅 지점을 설정하고, 상기 디버깅 메모리에서 데이터 확인이 필요한 메모리 지점을 설정하고, 설정된 메모리 지점에서 복사한 데이터를 분석하고, 분석 결과에 따라 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하여 선택된 특정 플러그인에서 상기 복사한 데이터를 처리하도록 제어하는 디버깅 프로세스;
를 포함하는 것을 특징으로 하는 디버깅 장치.
The apparatus of claim 1, wherein the debugging execution unit comprises:
A debugging support module for controlling the execution of the debugging tool for debugging the development application and generating a debug event when a bug occurs in the compiled code of the currently executed development application; And
Setting a debugging point for correcting the bug in a currently executing compile code, setting a memory point for which data checking is required in the debugging memory, analyzing data copied from the memory point, A debugging process of selecting a specific plug-in that can check the copied data according to the analysis result and controlling the selected copied plug-in to process the copied data;
And a debugging unit for debugging the debugging apparatus.
제6항에 있어서, 상기 디버깅 프로세스는,
상기 컴파일 코드에 대한 디버그 심볼에 포함된 소스코드 상의 위치에서 메모리 주소를 검출하여 디버깅 지점 명령을 설정하고, 설정된 디버깅 지점 명령을 상기 어플리케이션 실행부로 전송함을 특징으로 하는 디버깅 장치.
7. The method of claim 6,
Detecting a memory address at a location on the source code included in the debug symbol for the compiled code, setting a debugging point command, and transmitting the set debugging point command to the application executing unit.
제6항에 있어서, 상기 디버깅 프로세스는,
상기 설정된 디버깅 지점에서 개발자에 의해 선택된 시작점과 데이터 사이즈를 이용하여 상기 메모리 지점을 설정함을 특징으로 하는 디버깅 장치.
7. The method of claim 6,
Wherein the memory location is set using a starting point and a data size selected by a developer at the set debugging point.
제6항에 있어서, 상기 디버깅 프로세스는,
상기 복사한 데이터의 헤더를 분석하여 상기 복사한 데이터가 일반 데이터인 경우, 분석된 헤더 정보에 상응하는 등록된 플러그인을 선택하여 실행시킴을 특징으로 하는 디버깅 장치.
7. The method of claim 6,
Analyzing a header of the copied data, and, when the copied data is general data, selecting a registered plug-in corresponding to the analyzed header information, and executing the selected plug-in.
제6항에 있어서, 상기 디버깅 프로세서는,
상기 복사한 데이터의 헤더를 분석하여 상기 복사한 데이터가 일반 데이터가 아닌 경우, 개발자에 의해 임의로 선택된 플러그인을 실행시킴을 특징으로 하는 디버깅 장치.
7. The system of claim 6, wherein the debugging processor comprises:
And analyzes the header of the copied data to execute a plug-in selected arbitrarily by the developer if the copied data is not general data.
제1항에 있어서, 상기 어플리케이션 실행부는,
상기 개발 어플리케이션의 컴파일 코드를 실행하고, 상기 디버깅 실행부에 의해 디버깅 지점이 설정되면, 상기 디버깅 실행부의 제어에 따라 상기 설정된 메모리 지점에서 데이터를 복사하여 상기 디버깅 실행부로 전송하는 어플리케이션 프로세스; 및
상기 디버깅 실행부의 제어에 따라 실행되어 상기 어플리케이션 실행부의 상기 메모리 지점에서 복사한 데이터를 읽어와서 상기 복사한 데이터를 실시간으로 확인할 수 있도록 처리하는 하나 이상의 플러그인;
을 포함하는 것을 특징으로 하는 디버깅 장치.
The apparatus according to claim 1,
An application process of executing the compiled code of the development application and copying data to the debugging execution unit according to a control of the debugging execution unit when the debugging execution unit sets a debugging point; And
One or more plug-ins executed under the control of the debugging execution unit to read data copied from the memory point of the application execution unit and process the copied data in real time;
And a debugging unit for debugging the debugging apparatus.
개발 어플리케이션의 컴파일 코드를 실행하는 단계;
상기 실행되는 컴파일 코드에서 버그가 발생하면, 상기 컴파일 코드에서 디버깅 지점을 설정하는 단계;
상기 개발 어플리케이션에 대한 데이터를 저장하고 있는 디버깅 메모리에서 데이터 확인이 필요한 메모리 지점을 설정하는 단계;
설정된 메모리 지점에서 복사한 데이터를 수신하는 단계;
상기 복사한 데이터를 분석하여 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하는 단계;
선택된 특정 플러그인을 실행시키는 단계; 및
실행된 특정 플러그인에서 상기 복사한 데이터를 처리하도록 제어하는 단계;
를 포함하는 것을 특징으로 하는 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법.
Executing the compiled code of the development application;
Setting a debugging point in the compiled code when a bug occurs in the executed compiled code;
Setting a memory location that requires data verification in a debugging memory storing data for the development application;
Receiving data copied from a set memory location;
Analyzing the copied data and selecting a specific plug-in that can confirm the copied data;
Executing the selected specific plug-in; And
Controlling to process the copied data in a specific plug-in executed;
The method of claim 1, further comprising the steps of:
제12항에 있어서, 상기 복사한 데이터를 분석하여 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하는 단계는,
상기 복사한 데이터의 헤더를 분석하는 단계;
분석 결과에 따라 상기 복사한 데이터가 일반 데이터인지를 확인하는 단계; 및
상기 복사한 데이터가 일반 데이터인 경우, 분석된 헤더 정보에 상응하는 등록된 플러그인을 선택하는 단계;
를 포함하는 것을 특징으로 하는 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법.
The method of claim 12, wherein the step of selecting a particular plug-in, which is capable of analyzing the copied data and confirming the copied data,
Analyzing a header of the copied data;
Checking whether the copied data is general data according to the analysis result; And
If the copied data is general data, selecting a registered plug-in corresponding to the analyzed header information;
The method of claim 1, further comprising the steps of:
제13항에 있어서, 상기 복사한 데이터를 분석하여 상기 복사한 데이터를 확인할 수 있는 특정 플러그인을 선택하는 단계는,
상기 복사한 데이터가 일반 데이터가 아닌 경우, 개발자에 의해 플러그인을 선택받는 단계;
를 더 포함하는 것을 특징으로 하는 디버깅 메모리의 데이터를 확인하기 위한 방법.
The method of claim 13, wherein the step of selecting a particular plug-in, which can analyze the copied data and check the copied data,
Selecting the plug-in by the developer if the copied data is not general data;
Further comprising the steps of: receiving the debugging data from the debugging memory.
제12항에 있어서, 상기 컴파일 코드에서 디버깅 지점을 설정하는 단계는,
상기 실행되는 컴파일 코드에서 버그가 발생하면, 실시간 지원 모듈에서 디버그 이벤트를 발생하는 단계;
디버깅 프로세스에서 디버그 이벤트에 따라 상기 컴파일 코드에 대한 디버그 심볼을 이용하여 소스코드 상의 메모리 주소를 검출하는 단계;
검출된 메모리 주소를 이용하여 디버깅 지점의 명령을 설정하는 단계; 및
설정된 디버깅 지점 명령을 상기 개발 어플리케이션을 실행하기 위한 어플리케이션 프로세스로 전송하는 단계;
를 포함하는 것을 특징으로 하는 디버깅 장치에서의 디버깅 메모리의 데이터를 확인하기 위한 방법.
13. The method of claim 12, wherein the step of setting a debugging point in the compiled code comprises:
Generating a debug event in the real-time support module when a bug occurs in the executed compile code;
Detecting a memory address on the source code using a debug symbol for the compiled code according to a debug event in a debugging process;
Setting an instruction of a debugging point using the detected memory address; And
Transmitting a set debugging point command to an application process for executing the development application;
The method of claim 1, further comprising the steps of:
제12항 내지 제15항 중 어느 하나에 기재된 디버깅 메모리의 데이터를 확인하기 위한 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer readable recording medium storing a program for executing a method for verifying data of the debugging memory according to any one of claims 12 to 15.
KR1020140010475A 2014-01-28 2014-01-28 Method and apparatus for checking data in debugging memory KR20150089620A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140010475A KR20150089620A (en) 2014-01-28 2014-01-28 Method and apparatus for checking data in debugging memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140010475A KR20150089620A (en) 2014-01-28 2014-01-28 Method and apparatus for checking data in debugging memory

Publications (1)

Publication Number Publication Date
KR20150089620A true KR20150089620A (en) 2015-08-05

Family

ID=53886032

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140010475A KR20150089620A (en) 2014-01-28 2014-01-28 Method and apparatus for checking data in debugging memory

Country Status (1)

Country Link
KR (1) KR20150089620A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190014964A (en) * 2017-08-04 2019-02-13 주식회사 한컴엠디에스 Debuging method for embedded device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190014964A (en) * 2017-08-04 2019-02-13 주식회사 한컴엠디에스 Debuging method for embedded device

Similar Documents

Publication Publication Date Title
US9569347B2 (en) Testing optimized binary modules
US8370816B2 (en) Device, method and computer program product for evaluating a debugger script
US20130311827A1 (en) METHOD and APPARATUS for automatic testing of automation software
US10042744B2 (en) Adopting an existing automation script to a new framework
US10049031B2 (en) Correlation of violating change sets in regression testing of computer software
US8868976B2 (en) System-level testcase generation
CN107832059B (en) Code static analysis method and device based on Makefile
US20170054790A1 (en) System and Method for Object Compression and State Synchronization
CN109522010B (en) Initialization code adding method and device, storage medium and electronic equipment
US8117499B2 (en) Generation of a stimuli based on a test template
US9141351B2 (en) Indicators for resources with idempotent close methods in software programs
CN105453033A (en) Program testing service
US9229846B1 (en) Testing application code changes using a state assertion framework
KR20140088963A (en) System and method for testing runtime error
US10133652B2 (en) Debugging optimized code using FAT binary
US9075679B1 (en) Creating a prerequisite checklist corresponding to a software application
KR20150089620A (en) Method and apparatus for checking data in debugging memory
US11537308B2 (en) Information processing system, information processing device, storage medium, and information processing method of detecting destruction of data due to file transfer
CN108614704A (en) Code compiling method and device
CN112596751A (en) Compiling method, terminal, server and storage medium of application program installation package
KR20150089619A (en) Real time debugging method and apparatus
EP2782005A1 (en) Verifying state reachability in a statechart model having computer program code embedded therein
EP4339768A1 (en) Version management method, version management program, and version management system
Nembhard et al. Conversational code analysis: The future of secure coding
KR102102806B1 (en) Method for safety activity management of safty critical system and apparatus thereof

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application