KR101701800B1 - 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치 - Google Patents

차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치 Download PDF

Info

Publication number
KR101701800B1
KR101701800B1 KR1020150149749A KR20150149749A KR101701800B1 KR 101701800 B1 KR101701800 B1 KR 101701800B1 KR 1020150149749 A KR1020150149749 A KR 1020150149749A KR 20150149749 A KR20150149749 A KR 20150149749A KR 101701800 B1 KR101701800 B1 KR 101701800B1
Authority
KR
South Korea
Prior art keywords
task
operating system
vehicle
control software
operation sequence
Prior art date
Application number
KR1020150149749A
Other languages
English (en)
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 KR1020150149749A priority Critical patent/KR101701800B1/ko
Application granted granted Critical
Publication of KR101701800B1 publication Critical patent/KR101701800B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications

Abstract

설계된 차량 전장용 제어 소프트웨어를 차량 전장용 운영체제와 컴파일 하기 전에, 타스크(Task) 작동순서 가시화 방법에 있어서, 상기 차량 전장용 운영체제의 환경설정 파일 및 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로, 표준 운영체제 정형모델을 생성하는 단계; 상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정하는 단계; 및 상기 결정된 타스크 작동순서를 가시화하는 단계를 포함한다. 이에 따라, 제어 소프트웨어의 작동 과정을 하드웨어 플랫폼과 독립적으로 시뮬레이션 및 시각화함으로써 프로그램 코드의 행위적 정확성을 실행시간 전에 확인할 수 있다.

Description

차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치{METHOD FOR TASK SCHEDULING VISUALIZATION FOR AUTOMOTIVE CONTROL SOFTWARE, RECORDING MEDIUM AND DEVICE FOR PERFORMING THE METHOD}
본 발명은 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치에 관한 것으로서, 더욱 상세하게는 표준 운영체제 정형모델을 기반으로 차량용 제어 소프트웨어 타스크들의 작동과정을 가시화하는 도구에 관한 것이다.
자동차에서 전장 장비의 비중이 점차 커지면서 이를 제어하는 차량 전장용 제어 소프트웨어의 중요성 또한 커지고 있다. 이러한 제어 소프트웨어는 생명과 직결된 만큼 안전성 검증이 우선되어야 한다.
그러나, 제어 소프트웨어의 제어논리는 함께 컴파일되는 전장용 운영체제의 제어논리와 밀접한 연관을 가지며, 독립적으로 판단될 수 없다는 어려움이 있다. 일반적으로 차량 전장용 제어 소프트웨어는 환경 파일과 국제표준을 따르는 공통된 운영체제 코드와 함께 컴파일되어 최종 실행코드로 생성되므로, 운영체제의 스케줄링 정책, 타스크(Task) 및 자원 관리정책 등에 의해 커다란 영향을 받는다. 따라서, 실행파일이 생성되기 전에 응용프로그램 코드만을 보고서 행위를 파악하기가 쉽지 않다.
기존에 Simulink와 같은 모델기반의 시뮬레이션 및 가시화 도구가 사용되고 있으나, 제어 소프트웨어 코드가 표준 운영체제 상에서 의도한 대로 동작하는지 검증할 수 있는 지원 도구는 개발되어 있지 않으며, 국내에서 차량용 제어 소프트웨어의 개발이 점차 활발해짐에 따라 많은 수요가 예상된다.
KR 1328263 B1 KR 1053104 B1 JP 2004-348291 A
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 제어 소프트웨어의 작동 과정을 하드웨어 플랫폼과 독립적으로 시뮬레이션하고 시각화함으로써 프로그램 코드의 행위적 정확성을 실행시간 전에 확인할 수 있는 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 기록 매체를 제공하는 것이다.
본 발명의 또 다른 목적은 상기 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법을 수행하기 위한 장치를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 설계된 차량 전장용 제어 소프트웨어를 차량 전장용 운영체제와 컴파일 하기 전에, 타스크(Task) 작동순서 가시화 방법은, 상기 차량 전장용 운영체제의 환경설정 파일 및 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로, 표준 운영체제 정형모델을 생성하는 단계; 상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정하는 단계; 및 상기 결정된 타스크 작동순서를 가시화하는 단계를 포함한다.
본 발명의 실시예에서, 상기 표준 운영체제 정형모델을 생성하는 단계는, 상기 차량 전장용 제어 소프트웨어 소스코드로부터 API(Application Program Interface) 호출 순서를 추출하여 참조한 표준 운영체제 정형모델을 생성할 수 있다.
본 발명의 실시예에서, 상기 표준 운영체제 정형모델은, OSEK/VDX 표준을 따를 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서를 결정하는 단계는, 상기 표준 운영체제 정형모델을 검증함으로써 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 분석하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서를 결정하는 단계는, 상기 표준 운영체제 정형모델에서 임의의 n 횟수만큼 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용을 시뮬레이션하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서를 결정하는 단계는, 타스크의 실행 경로를 이용하여 타스크 상태, API, 파라미터(Parameters)를 추출하여 타스크 시나리오를 구성하는 단계를 더 포함할 수 있다.
본 발명의 실시예에서, 상기 타스크 시나리오를 구성하는 단계는, NuSMV를 이용하여 실행 시나리오를 생성하는 단계를 포함할 수 있다.
본 발명의 실시예에서, 상기 타스크 시나리오를 구성하는 단계는, 상기 실행 시나리오로부터 XML 형태의 데이터를 추출하여 데이터 래퍼(Data Wrapper) 클래스에 저장하는 단계를 더 포함할 수 있다.
본 발명의 실시예에서, 상기 결정된 타스크(Task) 작동순서를 가시화하는 단계는, 상기 타스크 시나리오를 기초로, 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 시각화할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치는, 차량 전장용 운영체제의 환경설정 파일 및 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로, 표준 운영체제 정형모델을 생성하는 정형모델 생성기; 상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정하는 타스크 작동순서 분석기; 및 결정된 상기 타스크(Task) 작동순서를 가시화하는 타스크 작동순서 가시화기를 포함한다.
본 발명의 실시예에서, 상기 정형모델 생성기는, 상기 차량 전장용 제어 소프트웨어 소스코드로부터 API(Application Program Interface) 호출 순서를 추출하여 참조한 표준 운영체제 정형모델을 생성할 수 있다.
본 발명의 실시예에서, 상기 표준 운영체제 정형모델은, OSEK/VDX 표준을 따를 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서 분석기는, 상기 표준 운영체제 정형모델을 검증함으로써 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 분석할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서 분석기는, 상기 표준 운영체제 정형모델에서 임의의 n 횟수만큼 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용을 시뮬레이션할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서 분석기는, 타스크의 실행 경로를 이용하여 타스크 상태, API, 파라미터(Parameters)를 추출하여 타스크 시나리오를 구성할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서 분석기는, NuSMV를 이용하여 실행 시나리오를 생성할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서 분석기는, 상기 실행 시나리오로부터 XML 형태의 데이터를 추출하여 데이터 래퍼(Data Wrapper) 클래스에 저장할 수 있다.
본 발명의 실시예에서, 상기 타스크 작동순서 가시화기는, 상기 타스크 시나리오를 기초로, 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 시각화할 수 있다.
이와 같은 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법에 따르면, 제어 소프트웨어의 개발 과정에서 운영체제의 구현방식과는 독립적으로 코드의 행위양식을 검증해 볼 수 있다. 본 발명에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법은 국제표준에 따른 전장용 운영체제 표준 요구사항의 정형 모델을 활용하여, 응용프로그램에서 정의한 타스크(Task)들이 운영체제와 결합하였을 때의 수행 순서를 모의실험하고, 타스크의 상태 변화가 프로그래머의 의도대로 진행되는지 확인할 수 있도록 가시화한다.
의도를 벗어난 타스크 상태변화가 존재한다면 이는 응용프로그램의 설계가 잘못되었다는 반증이 될 수 있으며, 구현된 운영체제와 결합하여 실제 하드웨어 플랫폼 위에서 시스템 테스트를 수행하기 전에 설계 오류를 사전에 바로잡을 수 있어 제품 개발의 시간을 줄이고 효율성을 높여준다.
도 1은 차량 전장용 소프트웨어의 생성과정을 보여주는 도면이다.
도 2는 차량 전장용 소프트웨어의 타스크 상태 모델을 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치의 블록도이다.
도 4는 SMV 모델 코드의 예시이다.
도 5는 SMV 모델 구조를 보여주는 도면이다.
도 6은 본 발명에 따른 시뮬레이션 결과를 보여주는 도면이다.
도 7은 타스크 시나리오에 필요한 정보를 저장하기 위해 정의한 사용자 정의 클래스 구조를 보여주는 도면이다.
도 8은 본 발명에 따른 시나리오 가시화를 보여주는 도면이다.
도 9 및 도 10은 본 발명에 따라 임의 응용프로그램 코드를 가지고 실험한 결과를 보여주는 도면들이다.
도 11은 본 발명의 일 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법의 흐름도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
차량 전장용 소프트웨어는 크게 인터페이스를 제공하는 운영체제와 여러 개의 타스크(Task)로 구성된 응용프로그램(소프트웨어, 어플리케이션), 각 타스크의 우선순위 정보를 담고 있는 환경설정으로 이루어진다. 각각의 타스크는 프로그램 환경설정의 내용과 운영체제와의 상호작용에 의해 작동 순서가 변경 된다.
타스크 설계가 잘못된 경우 중요한 타스크가 오래도록 실행되지 못하는 등, 개발자가 예상하지 못한 문제가 발생할 수 있으며, 차량의 경우 인명피해와 같은 심각한 문제를 초래할 수도 있다. 이와 같이, 차량 전장용 소프트웨어는 자동차 전자 장비들을 제어하는 만큼 그 정확성과 안전성이 검증되어야 한다.
본 발명은 차량용 제어 소프트웨어의 여러 타스크들과 기반 운영체제 사이의 상호작용이 프로그래머가 의도한 설계에 따라 올바르게 작동하는지를 실행시간 전에 사전검증 할 수 있는 가시화된 시뮬레이션 도구를 제안한다.
도 1은 차량 전장용 소프트웨어의 생성과정을 보여주는 도면이다. 도 2는 차량 전장용 소프트웨어의 타스크 상태 모델을 보여주는 도면이다.
도 1을 참조하면, 차량 전장용 제어 소프트웨어의 개발은 차량 전장용 운영체제(예를 들어, OSEK/VDX) 표준에 따르는 차량 전장용 운영체제와 사용자 응용프로그램, 응용프로그램의 환경설정 파일을 함께 컴파일하여 생성된다. 차량 전장용 운영체제는 사용자 응용프로그램이 원활하게 작동하기 위한 환경을 구축하며, 작업 스케줄링, 자원관리, 이벤트 관리 등의 서비스를 제공한다.
OSEK/VDX는 차량 계산기기(ECU)에 탑재되는 소프트웨어에 대한 산업 표준을 정의하고 있다. 각 ECU에 탑재되는 제어 소프트웨어는 한 개 이상의 타스크(Task)로 구성되며, 운영체제는 환경설정에 기술된 우선순위가 높은 타스크부터 먼저 수행한다. 환경설정 파일은 어플리케이션의 타스크(Task), 이벤트(Event), 알람(Alarm), 리소스(Resource)의 정보를 담고 있다.
도 2는 차량 전장용 소프트웨어의 타스크 상태 모델이며, 각 타스크는 OSEK/VDX 표준에서 정의한 타스크 상태 중 하나를 가진다.
타스크가 러닝(Running) 상태이면, CPU를 점유하고 명령들을 실행한다. 레디(Ready) 상태는 러닝 상태를 할당받기 위해 대기하며, 러닝 상태의 타스크 수행이 끝나면 레디 상태의 타스크 중 우선순위가 제일 높은 타스크가 러닝 상태로 전이하게 된다.
웨이팅(Waiting) 상태는 ECU를 점유한 타스크가 특정 이벤트(Event)가 발생하기를 기다릴 때 전이된다. 마지막으로, 서스펜디드(Suspended)는 작업이 시작되지 않은 타스크나 종료된 타스크의 상태이다. 차량 전장용 소프트웨어는 스케줄링을 유발하는 API인 ActivateTask, SetEvent, WaitEvent 함수 호출이나 이벤트 발생에 따라 스케줄링이 발생한다.
차량 전장용 소프트웨어의 응용프로그램을 검증하기 위해서는 구현된 차량 운영체제와 함께 컴파일하여 실제 하드웨어 플랫폼에 설치하고 테스트해야 하는 번거로움이 있다. 주로 ARM, AVR 등 편리한 테스트 환경을 제공하지 않는 하드웨어 플랫폼을 사용하므로, 설치 후 테스트는 많은 노력과 비용이 들고, 엄밀한 검증이 어렵다는 단점이 있다.
하지만, 응용프로그램 제어논리의 많은 부분이 특정 하드웨어나 운영체제 구현방식에 독립적일 수 있으며, 시스템 테스트 이전에 논리적 검증을 통하여 잠재적 문제점을 사전에 식별하는 것이 검증의 비용을 절감하고 효과를 높일 수 있다.
이에, 본 발명은 제어 소프트웨어의 개발과정에서 운영체제의 구현방식과는 독립적으로 코드의 행위양식을 검증해 볼 수 있는 도구를 개발하였다. 도구는 국제표준에 따른 전장용 운영체제 표준 요구사항의 정형 모델을 활용하여, 응용프로그램에서 정의한 타스크들이 운영체제와 결합하였을 때의 수행 순서를 모의실험하고 타스크의 상태 변화가 프로그래머의 의도대로 진행되는지 확인할 수 있도록 가시화 해준다.
이에 따라, 설계자의 의도를 벗어난 타스크 상태변화가 존재한다면 이는 응용프로그램의 설계가 잘못되었다는 반증이 될 수 있으며, 구현된 운영체제와 결합하여 실제 하드웨어 플랫폼 위에서 시스템 테스트를 수행하기 전에 설계 오류를 사전에 바로잡을 수 있다는 장점이 있다.
도 3은 본 발명의 일 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치의 블록도이다.
본 발명에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치(100, 이하 장치)는 차량 전장용 운영체제, 상기 차량 전장용 운영체제의 환경설정 파일 및 설계된 어플리케이션(소프트웨어)을 입력받아 차량용 제어소프트웨어 타스크들의 작동과정을 가시화한다.
도 3을 참조하면, 상기 장치(100)는 정형모델 생성기(110), 타스크 작동순서 분석기(130) 및 타스크 작동순서 가시화기(150)를 포함한다.
본 발명의 상기 장치(100)는 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화를 수행하기 위한 소프트웨어(어플리케이션)가 설치되어 실행될 수 있으며, 상기 정형모델 생성기(110), 상기 타스크 작동순서 분석기(130) 및 상기 타스크 작동순서 가시화기(150)의 구성은 상기 장치(100)에서 실행되는 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화를 수행하기 위한 소프트웨어에 의해 제어될 수 있다.
상기 장치(100)는 별도의 단말이거나 또는 단말의 일부 모듈일 수 있다. 또한, 상기 정형모델 생성기(110), 상기 타스크 작동순서 분석기(130) 및 상기 타스크 작동순서 가시화기(150)의 구성은 통합 모듈로 형성되거나, 하나 이상의 모듈로 이루어 질 수 있다. 그러나, 이와 반대로 각 구성은 별도의 모듈로 이루어질 수도 있다.
상기 장치(100)는 이동성을 갖거나 고정될 수 있다. 상기 장치(10)는, 서버(server) 또는 엔진(engine) 형태일 수 있다.
상기 정형모델 생성기(110)는 상기 차량 전장용 운영체제의 환경설정 파일 및 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로, 표준 운영체제 정형모델(120)을 생성한다.
상기 타스크 작동순서 분석기(130)는 상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정한다. 이때, 정형검증 도구(140)를 이용할 수 있다.
상기 타스크 작동순서 가시화기(150)는 결정된 상기 타스크(Task) 작동순서를 가시화한다. 이를 위해, LCD 등의 디스플레이 모듈을 통해 타스크의 작동순서를 시각화할 수 있다.
실제적인 구현으로, 상기 장치(100)는 차량 전장용 어플리케이션 소스코드로부터 API 호출 순서를 추출하여 SMV 모델(120)을 생성하고, NuSMV(140)를 이용해 앞서 만든 SMV 모델(120)을 검증함으로써 타스크 상태의 변화과정과 API 호출과정 및 자원과 이벤트 접근과정을 분석하며, 분석된 결과를 GUI를 통해 시각적으로 보여준다. 이하에서, 각 부분에 대한 상세설명을 한다.
NuSMV(140)는 모델 언어로 작성된 검증 대상을 논리식으로 만들고, 논리식이 참이 될 수 없다는 것을 증명함으로써 모델이 검증 속성을 만족하는지를 확인하는 모델검증 도구이다.
상기 정형모델 생성기(110)는 표준 운영체제 정형모델(즉, SMV 모델, 120)을 생성하기 위해 두 도구를 이용한다. 도 4는 SMV 모델 코드의 예시이고, 도 5는 SMV 모델 구조를 보여주는 도면이다.
첫 번째 도구는 운영체제의 API를 무작위로 호출하여 운영체제의 강건성을 실험하고, OSEK/VDX 표준에서 명시된 제약사항을 만족하는 테스트 시나리오를 자동 생성함으로써 테스트 시나리오 작성 시간을 단축할 수 있다. 두 번째 도구는 어플리케이션에서 API 호출 순서를 추출하고, 이를 검증하는 도구이다. 이 도구는 어플리케이션 코드 작성 시 제약사항 위배 여부를 실시간으로 검증할 수 있다.
첫 번째 도구는 API를 무작위로 호출하는 SMV 모델을 생성하는데, 본 도구에서는 기존 SMV 모델을 수정하여 응용프로그램 코드로부터 추출된 API 함수 호출 순서를 참조한 SMV 모델을 생성한다. 이에 따라, 두 번째 도구를 이용하여 응용프로그램 코드로부터 API 호출 순서를 추출하여 SMV 모델(120)에서 어플리케이션 프로그램(Application Program) 부분(126)을 생성한다.
SMV 모델(120)에서 응용프로그램에 종속적인 부분(124)은 어플리케이션 프로그램(126)을 이용하여 API 호출 순서에 따라 운영체제(120)와 상호작용하는 부분이다. 첫 번째 도구와 이 응용프로그램 종속적인 부분을 수정하여 최종적으로 응용프로그램 코드로부터 타스크들의 수행 순서를 통해 API를 호출하는 SMV 모델(120)을 생성한다.
상기 타스크 작동순서 분석기(130)는 모델 검증도구(NuSMV, 140)를 이용하여 상기 정형모델 생성기(110)에서 생성한 SMV 모델의 실행 가능한 경로를 생성한다. 이때, 시뮬레이션 결과를 도 6과 같이 XML 형태로 얻을 수 있다.
도 6을 참조하여 실행 경로를 살펴보면, 상태(state) 태그는 실행 경로의 한 단계를 의미하며, 하위의 값(value) 태그들은 SMV 모델의 변수(variable)를 의미한다. 값(value) 태그의 변수 애트리뷰트(attribute)는 SMV 모델의 변수 중에서 어떤 변수를 의미하는지를 알려준다. 예를 들어, "t1.id"는 첫 번째 타스크의 ID를 의미한다.
타스크 시뮬레이션(Task Simulation)을 위해 타스크 시나리오를 구성해야 하는 데, 실행 경로를 이용해 필요한 정보를 추출하여 만들 수 있다. 필요 정보는 각 타스크 상태, API, 파라미터(Parameters)이며, 파라미터는 타스크(Task), 이벤트(Event), 리소스(Resource) 3가지가 있고 API 호출 시 필요한 파라미터와 대응된다.
API의 파라미터와 관계없는 파라미터의 경우에는 이전 값과 같게 설정된다. 예를 들어, API가 ActivateTask인 경우 env.p_t의 값이 3을 가리키므로, 타스크 Id가 3인 타스크가 활성화된다는 의미이다. 리소스, 이벤트 파라미터(p_r, p_e)의 경우에는 ActivateTask API와 관계 없으므로 의미를 가지지 않는다.
도 7은 타스크 시나리오에 필요한 정보를 저장하기 위해 정의한 사용자 정의 클래스 구조를 나타낸 것이다.
타스크(Task) 클래스는 타스크의 상태정보를, 환경(Environment) 클래스는 API와 타스크(Task), 이벤트(Event), 리소스(Resource)의 파라미터 값을 가지고 있다. 상태(State) 클래스는 반례의 상태와 대응되는 클래스로 여러 타스크 객체와 하나의 환경 객체를 가지고 있다. 마지막으로, 시뮬레이션트레이스(SimulationTrace) 클래스는 여러 상태 객체 리스트를 담고 있다. 반례로부터 정보를 추출해 대응되는 데이터 래퍼(Data Wrapper) 클래스에 저장함으로써 타스크 시나리오를 만든다.
도 8은 타스크 작동순서 가시화기(150)에서 타스크 시나리오를 바탕으로 타스크 상태 변화과정과 API 호출 과정 및 타스크(Task), 이벤트(Event), 리소스(Resource) 접근 과정을 GUI를 통해 보여주는 예시이다. 타스크의 상태가 러닝(Running)인 경우에는 API를 표시하고, API에 해당하는 파라미터를 같이 표시한다.
이하에서는, 본 발명에 따른 상기 장치(100)에 따라 임의 생성된 제어프로그램 코드와 실제 차량 전장용 제어프로그램 코드에 개발된 도구를 적용하여 그 효용성을 확인하였다.
이를 위해, Java를 사용하고, 통합 개발환경 Eclipse를 이용하여 개발하였다.
상기 정형모델 생성기(110)는 SMV모델의 모듈 중 환경(Environment) 모듈에서 무작위로 API를 호출하였으나, 본 발명에서는 어플리케이션 코드에서 API 호출 순서를 추출해 환경 모듈에서 API를 순서대로 호출하도록 수정하였다.
상기 타스크 작동순서 분석기(130)에서 타스크 시나리오를 구성하는 부분은 첫 번째 기능으로 NuSMV를 이용해 실행 시나리오를 생성하는 것이고, 두 번째 기능으로 XML형태의 시나리오로부터 필요한 데이터를 추출해서 도 7의 데이터 래퍼(Data Wrapper) 클래스에 저장하는 것이다. 첫 번째 기능은 NuSMV 도구의 명령어를 통해 구현할 수 있고, 두 번째 기능은 자바 XML Reader 클래스를 이용해서 데이터를 추출할 수 있다.
상기 타스크 작동순서 가시화기(150)에서 타스크 시나리오를 가시화하는 부분은 타스크 상태 변화와 API 및 파라미터 표시 부분으로 나눌 수 있다.
타스크 상태 변화는 라벨을 이용하여 표시하였고, API와 파라미터의 경우에는 라벨의 툴팁으로 표시하여 러닝(Running) 상태의 State에 마우스 포인터를 갖다 대었을 경우 나타나도록 하였다.
실험에서는 임의 생성된 제어프로그램 코드와 실제 차량 전장용 제어프로그램 코드를 이용해 모의실험하였다. C언어로 된 프로그램 코드이며 약 100 내지 200줄 정도의 비교적 짧은 코드이다.
도 9는 한 임의 응용프로그램 코드를 가지고 실험한 결과이다. 이 코드는 3개의 타스크를 정의했으며 첫 번째 타스크는 두 번째, 세 번째 타스크를 활성화하고, 두 번째 타스크는 이벤트를 설정, 스케줄링, 자원을 요구하는 API를 호출한다. 세 번째 타스크는 같은 리소스를 두 번 요구한다.
도 9를 참조하면, 본 발명에 따른 상기 장치(100)를 통해 응용프로그램에서 정의한 타스크 실행 순서에 맞게 타스크의 상태가 변화함을 확인할 수 있었다.
도 10은 실제 제어프로그램 코드를 가지고 실험한 결과이다. 이 코드는 3개의 타스크를 정의하였고, 첫 번째 타스크는 세 번째 타스크를 활성화하고 종료한다. 두 번째 타스크는 블링크(blink) 기능을 수행하고 주기적으로 활성화가 된다. 세 번째 타스크는 패킷을 읽고 스피드(speed), 듀플렉스(duplex) 인터페이스를 설정하는 기능을 수행한다.
도 10의 결과를 살펴보면 첫 번째, 세 번째 타스크는 정의한 대로 상태가 변화하는 것을 확인할 수 있다.
본 발명에 따른 상기 장치(100)는 차량 전장용 소프트웨어의 제어논리가 의도대로 구성되었는지를 실험하고 가시화하여 차량 전장용 소프트웨어의 응용프로그램 설계를 검증해볼 수 있다. 본 발명에 따른 상기 장치(100)는 응용프로그램에서 정의한 타스크들의 수행 순서를 모의실험 함으로써 차량 전장용 운영체제의 타스크 상태 변화를 확인할 수 있다.
또한, 실험을 통해 실제 차량 전장용 제어 프로그램 코드, 임의 응용프로그램으로 실험하여 응용프로그램의 설계대로 타스크의 상태가 변화함을 확인할 수 있다.
도 11은 본 발명의 일 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법의 흐름도이다.
본 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법은, 도 3의 장치(100)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1의 장치(100)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
또한, 본 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법은 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화를 수행하기 위한 소프트웨어(어플리케이션)에 의해 실행될 수 있다.
도 11을 참조하면, 본 실시예에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법은, 상기 차량 전장용 운영체제의 환경설정 파일 및 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로, 표준 운영체제 정형모델을 생성한다(단계 S10).
상기 표준 운영체제 정형모델을 생성하는 단계(단계 S10)는, 상기 차량 전장용 제어 소프트웨어 소스코드로부터 API(Application Program Interface) 호출 순서를 추출하여 참조한 표준 운영체제 정형모델을 생성한다.
이에 따라, 하드웨어 플랫폼에 독립적인 코드 시뮬레이션이 가능하고, 운영체제, 하드웨어 등 플랫폼 종속적인 부분을 정형모델로 표준화할 수 있다. 상기 표준 운영체제 정형모델은, OSEK/VDX 표준을 따를 수 있다.
상기 표준 운영체제 정형모델을 생성되면, 상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정한다(단계 S30).
상기 타스크 작동순서를 결정하는 단계(단계 S30)는, 상기 표준 운영체제 정형모델을 검증함으로써 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 분석하고, 상기 표준 운영체제 정형모델에서 임의의 n 횟수만큼 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용을 시뮬레이션한다.
이를 위해, 타스크의 실행 경로를 이용하여 타스크 상태, API, 파라미터(Parameters)를 추출하여 타스크 시나리오를 구성할 수 있으며, NuSMV를 이용하여 실행 시나리오를 생성하고, 생성된 시나리오로부터 XML 형태의 데이터를 추출해서 데이터 래퍼(Data Wrapper) 클래스에 저장한다.
이어, 상기 결정된 타스크 작동순서를 가시화한다(단계 S50).
상기 결정된 타스크(Task) 작동순서를 가시화하는 단계(단계 S50)는, 상기 타스크 시나리오를 기초로, 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 시각화한다.
이에 따라, 제어 소프트웨어의 작동 과정을 하드웨어 플랫폼과 독립적으로 시뮬레이션 및 시각화함으로써 프로그램 코드의 행위적 정확성을 실행시간 전에 확인할 수 있다.
이와 같은, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법은 어플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
기존에 Simulink와 같은 모델기반의 시뮬레이션 및 가시화 도구는 많이 사용되고 있으나, 제어 소프트웨어 코드가 표준 운영체제 상에서 의도한 대로 동작하는지 검증할 수 있는 지원 도구는 개발되어 있지 않으며, 국내에서 차량용 제어소프트웨어의 개발이 점차 활발해짐에 따라 많은 수요가 예상되는 기술이다.
따라서, 본 발명은 차량용 제어소프트웨어의 개발 지원도구로 높은 시장성을 가질 것으로 기대된다.
100: 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치
110: 정형모델 생성기
120: 표준 운영체제 정형모델
130: 타스크 작동순서 분석기
140: 정형검증 도구
150: 타스크 작동순서 가시화기

Claims (19)

  1. 설계된 차량 전장용 제어 소프트웨어를 차량 전장용 운영체제와 컴파일 하기 전에, 타스크(Task) 작동순서 가시화 방법에 있어서,
    정형모델 생성기가 상기 차량 전장용 운영체제의 환경설정 파일 및 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로 추출되는 타스크들의 수행 순서를 통해 API(Application Program Interface)를 호출할 수 있도록 모델 언어로 작성되며, OSEK/VDX 표준을 따르는 표준 운영체제 정형모델을 생성하는 단계;
    타스크 작동순서 분석기가 상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정하는 단계; 및
    타스크 작동순서 가시화기가 상기 결정된 타스크 작동순서를 가시화하는 단계를 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.

  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 타스크 작동순서 분석기가 상기 타스크 작동순서를 결정하는 단계는,
    상기 표준 운영체제 정형모델을 검증함으로써 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 분석하는 단계를 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.
  5. 제1항에 있어서, 상기 타스크 작동순서 분석기가 상기 타스크 작동순서를 결정하는 단계는,
    상기 표준 운영체제 정형모델에서 임의의 n 횟수만큼 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용을 시뮬레이션하는 단계를 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.
  6. 제5항에 있어서, 상기 타스크 작동순서 분석기가 상기 타스크 작동순서를 결정하는 단계는,
    타스크의 실행 경로를 이용하여 타스크 상태, API, 파라미터(Parameters)를 추출하여 타스크 시나리오를 구성하는 단계를 더 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.

  7. 제6항에 있어서, 상기 타스크 작동순서 분석기가 상기 타스크 시나리오를 구성하는 단계는,
    NuSMV를 이용하여 실행 시나리오를 생성하는 단계를 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.
  8. 제7항에 있어서, 상기 타스크 작동순서 분석기가 상기 타스크 시나리오를 구성하는 단계는,
    상기 실행 시나리오로부터 XML 형태의 데이터를 추출하여 데이터 래퍼(Data Wrapper) 클래스에 저장하는 단계를 더 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.
  9. 제6항에 있어서, 상기 타스크 작동순서 가시화기가 상기 결정된 타스크(Task) 작동순서를 가시화하는 단계는,
    상기 타스크 시나리오를 기초로, 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 시각화하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법.
  10. 제1항, 제4항 내지 제9항 중 어느 하나의 항에 따른 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법을 수행하기 위한, 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
  11. 차량 전장용 운영체제의 환경설정 파일 및 설계된 차량 전장용 제어 소프트웨어의 소스코드를 기초로 추출되는 타스크들의 수행 순서를 통해 API(Application Program Interface)를 호출할 수 있도록 모델 언어로 작성되며, OSEK/VDX 표준을 따르는 표준 운영체제 정형모델을 생성하는 정형모델 생성기;
    상기 표준 운영체제 정형모델을 이용하여, 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용에 따른 타스크 작동순서를 결정하는 타스크 작동순서 분석기; 및
    결정된 상기 타스크 작동순서를 가시화하는 타스크 작동순서 가시화기를 포함하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.


  12. 삭제
  13. 삭제
  14. 제11항에 있어서, 상기 타스크 작동순서 분석기는,
    상기 표준 운영체제 정형모델을 검증함으로써 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 분석하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.
  15. 제11항에 있어서, 상기 타스크 작동순서 분석기는,
    상기 표준 운영체제 정형모델에서 임의의 n 횟수만큼 상기 설계된 차량 전장용 제어 소프트웨어의 소스코드와 상기 차량 전장용 운영체제와의 상호작용을 시뮬레이션하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.
  16. 제15항에 있어서, 상기 타스크 작동순서 분석기는,
    타스크의 실행 경로를 이용하여 타스크 상태, API, 파라미터(Parameters)를 추출하여 타스크 시나리오를 구성하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.
  17. 제16항에 있어서, 상기 타스크 작동순서 분석기는,
    NuSMV를 이용하여 실행 시나리오를 생성하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.
  18. 제17항에 있어서, 상기 타스크 작동순서 분석기는,
    상기 실행 시나리오로부터 XML 형태의 데이터를 추출하여 데이터 래퍼(Data Wrapper) 클래스에 저장하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.
  19. 제16항에 있어서, 상기 타스크 작동순서 가시화기는,
    상기 타스크 시나리오를 기초로, 타스크 상태 변화과정과 API 호출 과정 및 리소스(Resource)와 이벤트(Event) 접근 과정을 시각화하는, 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 장치.
KR1020150149749A 2015-10-27 2015-10-27 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치 KR101701800B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150149749A KR101701800B1 (ko) 2015-10-27 2015-10-27 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150149749A KR101701800B1 (ko) 2015-10-27 2015-10-27 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치

Publications (1)

Publication Number Publication Date
KR101701800B1 true KR101701800B1 (ko) 2017-02-02

Family

ID=58151663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150149749A KR101701800B1 (ko) 2015-10-27 2015-10-27 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치

Country Status (1)

Country Link
KR (1) KR101701800B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210112989A (ko) * 2020-03-06 2021-09-15 경북대학교 산학협력단 응용 프로그램의 실행 가능성 확인 방법 및 장치, 그리고 이를 구현하기 위한 프로그램이 기록된 기록매체
KR20220063528A (ko) * 2020-11-10 2022-05-17 경북대학교 산학협력단 내장형 제어 프로그램의 검증 방법 및 그 장치
CN117421839A (zh) * 2023-11-06 2024-01-19 上海同星智能科技有限公司 汽车仿真测试过程中的程序步骤可视化实现方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348291A (ja) 2003-05-20 2004-12-09 Sony Corp シミュレーション装置およびシミュレーション方法
KR20060120080A (ko) * 2003-11-10 2006-11-24 로베르트 보쉬 게엠베하 제어 시스템을 시뮬레이션하고 검증하기 위한 시뮬레이션시스템 및 컴퓨터 구현 방법
KR101053104B1 (ko) * 2009-10-28 2011-08-02 엘에스산전 주식회사 전산기기 소프트웨어 테스트 방법 및 시스템
KR101328263B1 (ko) 2005-10-10 2013-11-14 양세양 체계적 점진적 구체화를 통한 전자시스템수준에서부터게이트수준까지의 검증 방법
KR20130139608A (ko) * 2012-06-13 2013-12-23 경북대학교 산학협력단 차량 전장용 운영체제의 정형 검증 장치 및 정형 검증 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348291A (ja) 2003-05-20 2004-12-09 Sony Corp シミュレーション装置およびシミュレーション方法
KR20060120080A (ko) * 2003-11-10 2006-11-24 로베르트 보쉬 게엠베하 제어 시스템을 시뮬레이션하고 검증하기 위한 시뮬레이션시스템 및 컴퓨터 구현 방법
KR101328263B1 (ko) 2005-10-10 2013-11-14 양세양 체계적 점진적 구체화를 통한 전자시스템수준에서부터게이트수준까지의 검증 방법
KR101053104B1 (ko) * 2009-10-28 2011-08-02 엘에스산전 주식회사 전산기기 소프트웨어 테스트 방법 및 시스템
KR20130139608A (ko) * 2012-06-13 2013-12-23 경북대학교 산학협력단 차량 전장용 운영체제의 정형 검증 장치 및 정형 검증 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Marek Jersak 외 5명. 'Formal methods for integration of automotive software.' Proceedings of the Design, Automation and Test in Europe Conference and Exhibition, 2003, pp. 45-50. *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210112989A (ko) * 2020-03-06 2021-09-15 경북대학교 산학협력단 응용 프로그램의 실행 가능성 확인 방법 및 장치, 그리고 이를 구현하기 위한 프로그램이 기록된 기록매체
KR102348691B1 (ko) 2020-03-06 2022-01-11 경북대학교 산학협력단 응용 프로그램의 실행 가능성 확인 방법 및 장치, 그리고 이를 구현하기 위한 프로그램이 기록된 기록매체
KR20220063528A (ko) * 2020-11-10 2022-05-17 경북대학교 산학협력단 내장형 제어 프로그램의 검증 방법 및 그 장치
KR102471537B1 (ko) * 2020-11-10 2022-11-28 경북대학교 산학협력단 내장형 제어 프로그램의 검증 방법 및 그 장치
CN117421839A (zh) * 2023-11-06 2024-01-19 上海同星智能科技有限公司 汽车仿真测试过程中的程序步骤可视化实现方法及系统

Similar Documents

Publication Publication Date Title
CN108509336B (zh) 一种操作系统规范形式化验证与测试方法
EP1982270B1 (en) Context based code analysis
US9697020B2 (en) Execution and real-time implementation of a temporary overrun scheduler
Silva et al. Model-based user interface testing with spec explorer and concurtasktrees
Hartman Model based test generation tools
Fang et al. Formal model-based test for AUTOSAR multicore RTOS
Dietrich et al. Cross-Kernel Control-Flow--Graph Analysis for Event-Driven Real-Time Systems
Apvrille et al. Prototyping an embedded automotive system from its UML/SysML models
KR101701800B1 (ko) 차량 전장용 제어 소프트웨어를 위한 타스크 작동순서 가시화 방법, 이를 수행하기 위한 기록 매체 및 장치
Dietrich et al. Global optimization of fixed-priority real-time systems by RTOS-aware control-flow analysis
Yatake et al. Automatic generation of model checking scripts based on environment modeling
Chupilko et al. Runtime verification based on executable models: On-the-fly matching of timed traces
Choi Model checking trampoline OS: a case study on safety analysis for automotive software
Sun et al. A pre-order relation for exact schedulability test of sporadic tasks on multiprocessor Global Fixed-Priority scheduling
Tigori et al. Formal model-based synthesis of application-specific static RTOS
CN113282492A (zh) 一种操作系统内核形式化验证方法
Choi et al. Efficient safety checking for automotive operating systems using property-based slicing and constraint-based environment generation
Riccobene et al. Model-based simulation at runtime with abstract state machines
US20080005619A1 (en) Validation of software execution paths
Kim et al. A two-step approach for pattern-based API-call constraint checking
Zhang et al. Verifying OSEK/VDX automotive applications: A Spin‐based model checking approach
Park et al. Property-based code slicing for efficient verification of osek/vdx operating systems
US20220179776A1 (en) Systems and Methods for Automatic Test Generation
Chang et al. From Java to real-time Java: A model-driven methodology with automated toolchain
CN111045891B (zh) 基于java多线程的监控方法、装置、设备以及存储介质

Legal Events

Date Code Title Description
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 4