1 |
1
분석 대상의 바이너리 프로그램이 입력되는 입력 모듈;상기 바이너리 프로그램에 대한 실행 속도를 출력하는 출력 모듈; 및상기 바이너리 프로그램의 실행 코드를 어셈블리어로 변환하고, 상기 어셈블리어를 구성하는 복수의 라인을 분석하여 설정된 자료 구조에 따라 상기 복수의 라인에 대응하는 복수의 노드를 연결한 후 각 노드 설정에 설정된 사용자 함수에 따라 상기 복수의 노드별 상기 실행 속도를 연산하는 프로세서를 포함하는,컴퓨터 장치
|
2 |
2
제 1 항에 있어서,상기 프로세서는,상기 바이너리 프로그램의 실행 코드를 상기 어셈블리어로 변환하는 역어셈블러;상기 복수의 라인을 분석하여 상기 자료 구조에 따라 상기 복수의 노드를 연결하며, 상기 사용자 함수를 설정하는 노드 분석부; 및상기 복수의 노드를 실행시켜, 상기 실행 속도를 연산하는 속도 측정부를 포함하는,컴퓨터 장치
|
3 |
3
제 2 항에 잇어서,상기 역어셈블러는,상기 바이너리 프로그램의 형식에 따라 W32dsm9b 또는 objdump를 포함하는 어셈블리어로 변환하는,컴퓨터 장치
|
4 |
4
제 2 항에 있어서,상기 노드 분석부는,상기 복수의 라인에서 문자열 검색을 통해 명령어 및 데이터를 식별하는,컴퓨터 장치
|
5 |
5
제 4 항에 있어서,상기 명령어는,예약어, 라벨(Label), 점프(jnl, jmp, jump, branch), 분기문 및 반복문을 포함하는 명령어인, 컴퓨터 장치
|
6 |
6
제 2 항에 있어서,상기 자료 구조는,상기 복수의 라인에 대한 자료 관리 및 실행 속도를 측정하기 위한 연결 리스트(linked list) 및 양방향 연결 리스트(double linked list)인,컴퓨터 장치
|
7 |
7
제 2 항에 있어서,상기 노드 분석부는,상기 복수의 라인 중 적어도 하나에 포함된 사용자 함수 설정을 설정된 사용자 함수 테이블에서 매칭되는 저장 매체의 읽기/쓰기에 대한 시간을 설정하는,컴퓨터 장치
|
8 |
8
제 2 항에 있어서,상기 속도 측정부는,상기 복수의 노드를 실행시켜, 노드별 실행 속도 및 전체 노드 실행 속도를 측정하고, 상기 노드별 실행 속도 및 상기 전체 노드 실행 속도를 포함하는 상기 실행 속도를 예측하여, 상기 출력 모듈에 출력하는,컴퓨터 장치
|
9 |
9
바이너리 프로그램(binary program)의 실행 코드를 어셈블리어(assembly language)로 변환하는 단계;상기 어셈블리어를 구성하는 복수의 라인 각각을 분석하고, 설정된 자료 구조에 따라 상기 복수의 라인에 대응하는 복수의 노드를 연결하는 단계; 상기 복수의 노드 각각에 대응하는 노드 설정에 저장 매체의 읽기/쓰기 시간 및 반복 횟수에 대한 사용자 함수를 설정하는 단계; 및상기 사용자 함수에 따라 상기 복수의 노드를 실행시켜, 노드별 실행 속도 및 전체 노드 실행 속도를 포함하는 실행 속도를 예측하여 출력하는 단계를 포함하는,컴퓨터 장치의 바이너리 프로그램 실행 속도 측정방법
|
10 |
10
제 9 항에 있어서,상기 복수의 노드를 연결하는 단계는,상기 복수의 라인 각각을 분석하여 명령어 및 데이터를 식별하는 단계;상기 명령어 중 라벨 명령어 및 점프 명령어에 대한 라인 인덱스를 설정하는 단계;상기 자료 구조에 따라 상기 복수의 노드를 연결하는 단계를 포함하는,컴퓨터 장치의 바이너리 프로그램 실행 속도 측정방법
|
11 |
11
제 10 항에 있어서,상기 복수의 노드 중 상기 라인 인덱스에 따라 상기 점프 명령어를 포함하는 라인은,정방향으로 다음 노드 및 점프 노드를 연결하고, 역방향으로 이전 노드와 연결되는, 컴퓨터 장치의 바이너리 프로그램 실행 속도 측정방법
|
12 |
12
제 9 항에 있어서,상기 사용자 함수를 설정하는 단계는,설정된 사용자 함수 테이블을 기반으로, 상기 복수의 노드 각각에 대응하는 노드 설정에서 상기 저장 매체의 읽기/쓰기 시간 및 상기 반복 횟수를 사용자 입력에 의해 설정하는,컴퓨터 장치의 바이너리 프로그램 실행 속도 측정방법
|