차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치 및 방법
OPERATING SYSTEM VIRTUALIZATION DEVICE AND METHOD FOR SIMULATION OF AUTOMOTIVE SOFTWARE PLATFORM
특허 요약
본 발명은 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치 및 방법에 관한 것으로, 상기 장치는 스케줄러를 가상화하여 태스크 정보를 기반으로 우선순위에 따라 태스크의 상태를 갱신하며 태스크들의 상태를 검사하여 실행 순서를 결정하는 스케줄러 가상화부; 알람(Alarm) 기능을 가상화하여 설정 주기마다 상기 실행 순서에 따라 매핑된 태스크에 대한 생성 요청 신호를 생성하는 알람 가상화부; 상기 생성 요청 신호에 따라 상기 태스크에 대응되는 태스크 쓰레드를 생성하여 가상화하고 상기 태스크의 상태에 따른 실행을 처리하는 태스크 가상화부; 및 리소스(Resource)를 가상화하여 상기 태스크의 실행에 따른 리소스 사용을 관리하는 리소스 가상화부;를 포함한다.
청구항
번호청구항
1

스케줄러를 가상화하여 태스크 정보를 기반으로 우선순위에 따라 태스크의 상태를 갱신하며 태스크들의 상태를 검사하여 실행 순서를 결정하는 스케줄러 가상화부;알람(Alarm) 기능을 가상화하여 설정 주기마다 상기 실행 순서에 따라 매핑된 태스크에 대한 생성 요청 신호를 생성하는 알람 가상화부;상기 생성 요청 신호에 따라 상기 태스크에 대응되는 태스크 쓰레드를 생성하여 가상화하고 상기 태스크의 상태에 따른 실행을 처리하는 태스크 가상화부; 및리소스(Resource)를 가상화하여 상기 태스크의 실행에 따른 리소스 사용을 관리하는 리소스 가상화부;를 포함하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

2

제1항에 있어서, 상기 스케줄러 가상화부는태스크 인포 어레이(task info array)를 통해 상기 태스크 정보를 관리하고 상기 우선순위에 따라 상기 태스크를 저장하는 우선순위 큐(priority queue)를 통해 상기 실행 순서를 관리하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

3

제1항에 있어서, 상기 스케줄러 가상화부는상기 태스크의 우선순위에 따라 상기 태스크의 상태를 실행(RUNNING), 준비(READY), 대기(WAITING) 및 중지(SUSPENDED) 중 어느 하나로 변경하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

4

제2항에 있어서, 상기 스케줄러 가상화부는상기 태스크 인포 어레이에서 상기 태스크의 상태가 준비(READY) 및 실행(RUNNING)에 해당하는 모든 태스크의 상태 및 우선순위를 검사하고 상기 우선순위 큐에서 상기 태스크의 상태가 준비(READY)에 해당하는 모든 태스크를 검사하여 다음에 실행할 태스크를 결정하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

5

제1항에 있어서, 상기 알람 가상화부는상기 설정 주기마다 타이머(Timer) 함수를 통해 콜백함수를 호출하도록 하여 상기 생성 요청 신호를 생성하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

6

제1항에 있어서, 상기 태스크 가상화부는상기 태스크 쓰레드를 구조체(structure) 형태로 생성하여 태스크의 우선순위, 주기/비주기 여부 및 함수 포인터를 관리하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

7

제1항에 있어서, 상기 태스크 가상화부는주기 태스크의 경우 상기 매핑된 이벤트를 1회 실행한 다음 해당 태스크의 동작을 종료시키고, 비주기 태스크의 경우 상기 태스크 쓰레드 내에서 무한루프를 통해 매핑된 이벤트를 1회 실행한 후 다음 활성화 요청까지 해당 태스크의 동작을 중지시키는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

8

제1항에 있어서, 상기 리소스 가상화부는특정 태스크에서 리소스를 사용하는 경우 뮤텍스(Mutex)를 통해 해당 리소스 획득에 대한 상호배제를 수행하고 상기 스케줄러에 의해 상기 해당 리소스를 소유 중인 태스크의 우선순위를 변경하도록 하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 장치.

9

스케줄러 가상화부를 통해 스케줄러를 가상화하여 태스크 정보를 기반으로 우선순위에 따라 태스크의 상태를 갱신하며 태스크들의 상태를 검사하여 실행 순서를 결정하는 단계;알람 가상화부를 통해 알람(Alarm) 기능을 가상화하여 설정 주기마다 상기 실행 순서에 따라 매핑된 태스크에 대한 생성 요청 신호를 생성하는 단계;태스크 가상화부를 통해 상기 생성 요청 신호에 따라 상기 태스크에 대응되는 태스크 쓰레드를 생성하여 가상화하고 상기 태스크의 상태에 따른 실행을 처리하는 단계; 및리소스 가상화부를 통해 리소스(Resource)를 가상화하여 상기 태스크의 실행에 따른 리소스 사용을 관리하는 단계;를 포함하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 방법.

10

제9항에 있어서, 상기 실행 순서를 결정하는 단계는상기 태스크의 우선순위에 따라 상기 태스크의 상태를 실행(RUNNING), 준비(READY), 대기(WAITING) 및 중지(SUSPENDED) 중 어느 하나로 변경하는 단계를 포함하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 방법.

11

제9항에 있어서, 상기 생성 요청 신호를 생성하는 단계는상기 설정 주기마다 타이머(Timer) 함수를 통해 콜백함수를 호출하도록 하여 상기 생성 요청 신호를 생성하는 단계를 포함하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 방법.

12

제9항에 있어서, 상기 실행을 처리하는 단계는주기 태스크의 경우 상기 매핑된 이벤트를 1회 실행한 다음 해당 태스크의 동작을 종료시키고, 비주기 태스크의 경우 상기 태스크 쓰레드 내에서 무한루프를 통해 매핑된 이벤트를 1회 실행한 후 다음 활성화 요청까지 해당 태스크의 동작을 중지시키는 단계를 포함하는 것을 특징으로 하는 차량용 소프트웨어 플랫폼의 시뮬레이션을 위한 OS 가상화 방법.