맞춤기술찾기

이전대상기술

멀티 태스크 프로그램의 논스톱 디버깅을 위한트레이스포인트 설정 방법

  • 기술번호 : KST2015077854
  • 담당센터 : 대전기술혁신센터
  • 전화번호 : 042-610-2279
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 본 발명은 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법에 관한 것으로서, 실시간 소프트웨어 개발에 있어 인스트럭션 레벨에서 모니터링 트레이스포인트를 설정할 수 있게 함으로써 실시간 수행 중에 발생하는 버그들을 쉽게 발견할 수 있게 하는, 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하기 위하여, 멀티태스크 프로그램의 디버깅을 수행하는 디버깅 시스템에 적용되는 트레이스포인트 설정 방법에 있어서, 사용자로부터 트레이스포인트 설정 및 모니터링 대상이 되는 어플리케이션 프로그램 실행을 위한 트레이스 명령어(Command)를 입력받아, 상기 입력받은 트레이스 명령어를 실행하는 트레이스 명령어 실행 단계; 상기 트레이스 명령어 실행에 따라 상기 어플리케이션 프로그램에 '정의되지 않은 예외 코드(undefined-exception code)'를 삽입하여 트레이스포인트(TracePoint)를 설정하는 트레이스포인트 설정 단계; 상기 트레이스포인트를 설정한 상기 어플리케이션 프로그램 수행 중 상기 트레이스포인트에서 트랩(Trap)의 발생에 따라 사용자정의 트레이스 함수를 실행하는 트레이스 함수 실행 단계; 및 상기 사용자 트레이스 함수 실행을 통하여 획득한 트레이스 메시지를 출력하는 트레이스 메시지 출력 단계를 포함하며, 정보가전용 소프트웨어 개발 등에 이용됨.멀티 태스크 프로그램, 디버깅, 트레이스포인트, 트레이스포인트 설정/삭제.
Int. CL G06F 9/46 (2006.01)
CPC G06F 11/3624(2013.01) G06F 11/3624(2013.01) G06F 11/3624(2013.01)
출원번호/일자 1020000084460 (2000.12.28)
출원인 한국전자통신연구원
등록번호/일자 10-0428712-0000 (2004.04.12)
공개번호/일자 10-2002-0055528 (2002.07.09) 문서열기
공고번호/일자 (20040427) 문서열기
국제출원번호/일자
국제공개번호/일자
우선권정보
법적상태 소멸
심사진행상태 수리
심판사항
구분
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2000.12.28)
심사청구항수 12

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 한국전자통신연구원 대한민국 대전광역시 유성구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 이광용 대한민국 대전광역시유성구
2 김흥남 대한민국 대전광역시유성구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 신성특허법인(유한) 대한민국 서울특별시 송파구 중대로 ***, ID타워 ***호 (가락동)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
1 한국전자통신연구원 대한민국 대전광역시 유성구
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 특허출원서
Patent Application
2000.12.28 수리 (Accepted) 1-1-2000-0283901-18
2 출원인정보변경(경정)신고서
Notification of change of applicant's information
2001.04.19 수리 (Accepted) 4-1-2001-0046046-20
3 출원인정보변경(경정)신고서
Notification of change of applicant's information
2002.08.08 수리 (Accepted) 4-1-2002-0065009-76
4 의견제출통지서
Notification of reason for refusal
2003.09.24 발송처리완료 (Completion of Transmission) 9-5-2003-0366454-30
5 지정기간연장신청서
Request for Extension of Designated Period
2003.11.24 수리 (Accepted) 1-1-2003-0442738-16
6 지정기간연장신청서
Request for Extension of Designated Period
2003.12.24 수리 (Accepted) 1-1-2003-0493234-02
7 명세서 등 보정서
Amendment to Description, etc.
2004.01.20 보정승인 (Acceptance of amendment) 1-1-2004-0025704-95
8 의견서
Written Opinion
2004.01.20 수리 (Accepted) 1-1-2004-0025706-86
9 등록결정서
Decision to grant
2004.04.08 발송처리완료 (Completion of Transmission) 9-5-2004-0138846-22
10 출원인정보변경(경정)신고서
Notification of change of applicant's information
2009.08.04 수리 (Accepted) 4-1-2009-5150899-36
11 출원인정보변경(경정)신고서
Notification of change of applicant's information
2015.02.02 수리 (Accepted) 4-1-2015-0006137-44
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1

멀티태스크 프로그램의 디버깅을 수행하는 디버깅 시스템에 적용되는 트레이스포인트 설정 방법에 있어서,

사용자로부터 트레이스포인트 설정 및 모니터링 대상이 되는 어플리케이션 프로그램 실행을 위한 트레이스 명령어(Command)를 입력받아, 상기 입력받은 트레이스 명령어를 실행하는 트레이스 명령어 실행 단계;

상기 트레이스 명령어 실행에 따라 상기 어플리케이션 프로그램에 '정의되지 않은 예외 코드(undefined-exception code)'를 삽입하여 트레이스포인트(TracePoint)를 설정하는 트레이스포인트 설정 단계;

상기 트레이스포인트를 설정한 상기 어플리케이션 프로그램 수행 중 상기 트레이스포인트에서 트랩(Trap)의 발생에 따라 사용자정의 트레이스 함수를 실행하는 트레이스 함수 실행 단계; 및

상기 사용자 트레이스 함수 실행을 통하여 획득한 트레이스 메시지를 출력하는 트레이스 메시지 출력 단계

를 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

2 2

제 1 항에 있어서,

상기 사용자로부터 입력받은, 트레이스포인트 추가를 위한 트레이스 명령어의 실행에 따라 상기 어플리케이션 프로그램에 트레이스포인트를 추가 설정하는 트레이스포인트 추가 설정 단계

를 더 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

3 3

제 2 항에 있어서,

상기 트레이스포인트 추가 설정 단계의 트레이스포인트 추가 과정은,

상기 어플리케이션 프로그램에서 태스크들의 특정 위치에 '예외 코드' (exception code)를 삽입하기 위해 트레이스포인트 문맥 식별자(ID)(trPt_TaskId)와 트레이스포인트 어드레스(trPt_addr)를 이용하여 트레이스포인트 구조체를 생성하고, 상기 생성한 트레이스포인트 구조체를 브레이크포인트 체인에 등록하여 추가하는 것을 특징으로 하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

4 4

제 1 항에 있어서,

상기 사용자로부터 입력받은, 트레이스포인트 삭제를 위한 트레이스 명령어의 실행에 따라 상기 어플리케이션 프로그램에 설정된 트레이스포인트를 삭제하는 트레이스포인트 삭제 단계

를 더 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

5 5

제 4 항에 있어서,

상기 트레이스포인트 삭제 단계의 트레이스포인트 삭제 과정은,

모든 트레이스포인트를 삭제하는 경우에는, 브레이크포인트 체인으로부터 해당 트레이스포인트를 삭제하고 해당 인스트럭션을 원래 코드로 복원한 후 상기 삭제된 트레이스포인트의 정보를 트레이스포인트 프리 리스트(bpFreeList:breakpoint free list)에 추가하는 과정을 상기 브레이크포인트 체인의 처음부터 끝까지 수행하고;

특정 트레이스포인트를 삭제하는 경우에는, 상기 브레이크포인트 체인의 처음부터 브레이크포인트의 끝까지 탐색하여, 삭제하고자하는 특정 트레이스포인트를 가지는 브레이크포인트를 찾은 후, 상기 브레이크포인트로부터 상기 특정 트레이스포인트를 삭제하고나서, 상기 삭제한 특정 트레이스포인트의 인스트럭션 필드 정보에 따라 인스트럭션을 원래 코드로 복원하고 상기 삭제한 트레이스포인트의 정보를 트레이스포인트 프리 리스트에 추가하는 것을 특징으로 하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

6 6

제 1 항 내지 제 5 항 중 어느 한 항에 있어서,

상기 트레이스 명령어 실행 단계는,

상기 사용자로부터 트레이스포인트 설정 및 테스트 대상이 되는 어플리케이션 프로그램 실행을 위한 트레이스 명령어(Command)를 입력받는 트레이스 명령어 입력 단계; 및

상기 입력받은 트레이스 명령어를 파싱(parsing)하고 명령어표(command table)로부터 상기 파싱한 명령어를 검색하여, 상기 검색한 명령어의 유형에 따라 해당 명령어 함수를 실행하는 명령어 함수 실행 단계

를 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

7 7

제 6 항에 있어서,

상기 명령어 함수 실행 단계는,

상기 입력받은 트레이스 명령어를 파싱하고 명령어표로부터 상기 파싱한 명령어를 검색하여, 상기 검색한 명령어의 유형을 판단하는 단계;

상기 판단 결과, 상기 명령어가 트레이스정보보기(info trace) 명령어이면, 상기 트레이스포인트 정보 상태를 표시/저장하는 단계;

상기 판단 결과, 상기 명령어가 트레이스설정(trace) 명령어이면, 상기 모니터링 대상 어플리케이션 프로그램의 특정 인스트럭션에 트레이스포인트를 설정하는 단계;

상기 판단 결과, 상기 명령어가 트레이스맵핑(traceMap) 명령어이면, 트레이스포인트 맵핑 파일로부터 트레이스포인트 정보들을 읽어 일괄적으로 어플리케이션 코드에 상기 읽어들인 트레이스포인트 정보들을 세팅하는 단계;

상기 판단 결과, 상기 명령어가 지역변수보기(local) 명령어이면, 타겟에 로딩된 어플리케이션 프로그램의 특정 함수로부터 지역변수값들의 오프셋 어드레스 값을 출력하는 단계; 및

상기 판단 결과, 상기 명령어가 전역변수보기(global) 명령어이면, 상기 어플리케이션 프로그램의 전역 변수의 내용을 표시하는 단계

를 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

8 8

제 1 항 내지 제 5 항 중 어느 한 항에 있어서,

상기 트레이스 함수 실행 단계는,

상기 어플리케이션 프로그램의 트레이스포인트에 발생하는 예외 트랩(exception trap)의 발생을 기다리는 단계;

트랩 시점의 트랩 어드레스(trap address)를 구하고, 상기 트랩 어드레스를 이용하여 트랩정보를 구하는 단계;

상기 예외 트랩(exception trap)이 발생하면, 상기 발생된 예외 트랩 (exception trap)의 원인을 검사하는 단계;

상기 검사 결과, 상기 예외 트랩이 트레이스포인트에 의해 발생한 경우이면, 트레이싱 정보를 수집하기 위하여 상기 사용자 트레이스 함수를 호출하고 인스트럭션을 원래 코드로 복원하는 단계; 및

상기 검사 결과, 상기 예외 트랩이 브레이크포인트에 의해 발생한 경우이면, 상기 브레이크포인트를 삭제하고 인스트럭션을 원래의 코드로 복원한 후, 태스크 브레이크포인트 트랩 처리를 수행하는 단계

를 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

9 9

제 1 항 내지 제 5 항 중 어느 한 항에 있어서,

상기 트레이스 메시지 출력 단계는,

호스트 컴퓨터와 타겟과의 시리얼통신을 오픈하여 상기 타겟으로부터 시리얼 이벤트를 수신하여, 상기 수신한 시리얼 이벤트의 종류를 판단하는 단계;

상기 판단 결과, 상기 수신한 시리얼 이벤트가 문자수신이벤트이면, 상기 트레이스 메시지를 수신하여, 상기 수신한 트레이스 메시지를 저장하거나, 상기 사용자에게 출력하는 단계; 및

상기 판단 결과, 상기 수신한 시리얼 이벤트가 문자수신이벤트가 아니면, 상기 수신한 시리얼 이벤트가 시리얼통신 클로즈인지를 확인하여, 시리얼통신 클로즈이면 시리얼통신 클로즈와 함께 종료하고, 시리얼통신 클로즈가 아니면 새로운 시리얼이벤트를 수신하기 위하여 상기 트레이스 메시지 출력 단계의 처음 과정으로 돌아가는 단계

를 포함하는 멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정 방법

10 10

멀티 태스크 프로그램의 논스톱 디버깅을 위한 트레이스포인트 설정을 위하여, 프로세서를 구비한 디버깅 시스템에,

사용자로부터 트레이스포인트 설정 및 모니터링 대상이 되는 어플리케이션 프로그램 실행을 위한 트레이스 명령어(Command)를 입력받아, 상기 입력받은 트레이스 명령어를 실행하는 트레이스 명령어 실행 기능;

상기 트레이스 명령어 실행에 따라 상기 어플리케이션 프로그램에 '정의되지 않은 예외 코드(undefined-exception code)'를 삽입하여 트레이스포인트(TracePoint)를 설정하는 트레이스포인트 설정 기능;

상기 트레이스포인트를 설정한 상기 어플리케이션 프로그램 수행 중 상기 트레이스포인트에서 트랩(Trap)의 발생에 따라 사용자정의 트레이스 함수를 실행하는 트레이스 함수 실행 기능; 및

상기 사용자 트레이스 함수 실행을 통하여 획득한 트레이스 메시지를 출력하는 트레이스 메시지 출력 기능

을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

11 11

제 10 항에 있어서,

상기 사용자로부터 입력받은, 트레이스포인트 추가를 위한 트레이스 명령어의 실행에 따라 상기 어플리케이션 프로그램에 트레이스포인트를 추가 설정하는 트레이스포인트 추가 설정 기능

을 더 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

12 12

제 10 항 또는 제 11 항에 있어서,

상기 사용자로부터 입력받은, 트레이스포인트 삭제를 위한 트레이스 명령어의 실행에 따라 상기 어플리케이션 프로그램에 설정된 트레이스포인트를 삭제하는 트레이스포인트 삭제 기능

을 더 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체

지정국 정보가 없습니다
패밀리정보가 없습니다
국가 R&D 정보가 없습니다.