1 |
1
비정형언어로 작성된 자동차 제어 소프트웨어를 제어 흐름 그래프(CFG)의 형태로 변환하는 제어 흐름 그래프 변환부;상기 제어 흐름 그래프(CFG)를 코드 슬라이싱을 통해 상태 기계(state machine)로 변환하는 상태 기계 변환부; 및상기 상태 기계(state machine)를 정형언어로 변환하는 정형언어 변환부;를 포함하되,상기 정형언어 변환부는, 상기 상태 기계(state machine)를 상기 코드 슬라이싱 된 제어 흐름 그래프(CFG)를 각 API 호출 노드를 API 호출 액션에 의해 천이로 변경하고, 호출 스택을 관리하도록 각각의 사용자 정의된 함수 호출을 순서대로 인라인하며, 각 노드를 상태로 변환하여 상태의 할당을 인코딩함으로써 API 호출 흐름 그래프(AFG) 형태로 표현된 정형언어로 변환하는 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
2 |
2
제 1 항에 있어서,상기 제어 흐름 그래프는,API 함수 호출, 사용자 정의된 함수 호출, 분기 구문, 루프 구문 또는 할당 구문일 수 있는 애플리케이션 코드의 구문인 노드, 두 개의 문 간의 제어 천이인 에지 그리고, 인입되는 에지를 갖지 않는 고유한 노드인 초기 노드를 참조하여 이루어지는 튜플인 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
3 |
3
제 1 항에 있어서,상기 코드 슬라이싱은,상기 CFG로부터 중복 노드들을 슬라이싱하여 검증 복잡성을 감소시키는 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
4 |
4
삭제
|
5 |
5
삭제
|
6 |
6
제 1 항에 있어서,상기 API 호출 흐름 그래프(AFG)는,상태들의 세트, 천이들의 세트 및 초기 상태로 이루어지는 튜플이고,API 호출 구문들이 상태들 간의 천이를 행하기 위한 액션들로서 사용되는 상태에서 API 호출 구문들과 다른 구문들이 숨겨진 것을 특징으로 하는 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
7 |
7
제 1 항에 있어서,상기 비정형언어는 C언어이고, 상기 정형언어는 NuSMV인 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
8 |
8
제 1 항에 있어서,상기 정형언어로 변환된 자동차 제어 소프트웨어가 입력되면, 제약 패턴들을 이용하여 제약 위반을 검출하는 검증부;를 더 포함하는 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
9 |
9
제 8 항에 있어서,상기 제약 패턴들은 푸시다운-오토머터로 기술된 제약 패턴들인 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
10 |
10
제 9 항에 있어서,상기 제약 패턴들은, API 호출 시퀀스 기반 제약 패턴들 및 구성 기반 제약 패턴들인 자동차 제어 소프트웨어의 정형검증을 위한 장치
|
11 |
11
자동차 제어 소프트웨어의 정형검증을 위한 장치에서의 자동차 제어 소프트웨어의 정형검증을 위한 방법에 있어서,상기 장치가, 비정형언어로 작성된 자동차 제어 소프트웨어를 제어 흐름 그래프(CFG)의 형태로 변환하는 단계;상기 장치가, 상기 제어 흐름 그래프(CFG)를 코드 슬라이싱을 통해 상태 기계(state machine)로 변환하는 단계; 및상기 장치가, 상기 상태 기계(state machine)를 정형언어로 변환하는 단계;를 포함하되,상기 상태 기계(state machine)를 정형언어로 변환하는 단계는, 상기 상태 기계(state machine)를 상기 코드 슬라이싱 된 제어 흐름 그래프(CFG)를 각 API 호출 노드를 API 호출 액션에 의해 천이로 변경하고, 호출 스택을 관리하도록 각각의 사용자 정의된 함수 호출을 순서대로 인라인하며, 각 노드를 상태로 변환하여 상태의 할당을 인코딩함으로써 API 호출 흐름 그래프(AFG) 형태로 표현된 정형언어로 변환하는 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
12 |
12
제 11 항에 있어서,상기 제어 흐름 그래프는,API 함수 호출, 사용자 정의된 함수 호출, 분기 구문, 루프 구문 또는 할당 구문일 수 있는 애플리케이션 코드의 구문인 노드, 두 개의 문 간의 제어 천이인 에지 그리고, 인입되는 에지를 갖지 않는 고유한 노드인 초기 노드를 참조하여 이루어지는 튜플인 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
13 |
13
제 11 항에 있어서,상기 코드 슬라이싱은,상기 CFG로부터 중복 노드들을 슬라이싱하여 검증 복잡성을 감소시키는 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
14 |
14
삭제
|
15 |
15
삭제
|
16 |
16
제 11 항에 있어서,상기 API 호출 흐름 그래프(AFG)는,상태들의 세트, 천이들의 세트 및 초기 상태로 이루어지는 튜플이고,API 호출 구문들이 상태들 간의 천이를 행하기 위한 액션들로서 사용되는 상태에서 API 호출 구문들과 다른 구문들이 숨겨진 것을 특징으로 하는 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
17 |
17
제 11 항에 있어서,상기 비정형언어는 C언어이고, 상기 정형언어는 NuSMV인 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
18 |
18
제 11 항에 있어서,상기 정형언어로 변환된 자동차 제어 소프트웨어가 입력되면, 제약 패턴들을 이용하여 제약 위반을 검출하는 검증하는 단계;를 더 포함하는 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
19 |
19
제 18 항에 있어서,상기 제약 패턴들은 푸시다운-오토머터로 기술된 제약 패턴들인 자동차 제어 소프트웨어의 정형검증을 위한 방법
|
20 |
20
제 11 항 내지 제 13 항, 제 16 항 내지 제 19 항 중 어느 한 항에 따른 자동차 제어 소프트웨어의 정형검증을 위한 장치에서의 자동차 제어 소프트웨어의 정형검증을 위한 방법을 수행하기 위한, 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체
|