6
ISSN 2383-6318(Print) / ISSN 2383-6326(Online) KIISE Transactions on Computing Practices, Vol. 21, No. 9, pp. 604-609, 2015. 9 http://dx.doi.org/10.5626/KTCP.2015.21.9.604 이 논문은 2014년도 정부(교육과학기술부)의 재원으로 한국연구재단의 기초 연구사업 지원을 받아 수행된 것임(2012R1A1A2009354) 본 연구는 미래창조과학부 및 정보통신기술진흥센터의 대학ICT연구센터 육성 지원사업의 연구결과로 수행되었음(IITP-2015-H8501-15-1012) 이 논문은 제41회 동계학술발표회에서 계층적 스케줄링 시스템의 스케줄링 가능성 검증을 위한 UPPAAL 모델의 제목으로 발표된 논문을 확장한 것임 논문접수 : 2015326(Received 26 March 2015) 논문수정 : 2015513(Revised 13 May 2015) 심사완료 : 201578(Accepted 8 July 2015) Copyright2015 한국정보과학회ː개인 목적이나 교육 목적인 경우, 이 저작물 의 전체 또는 일부에 대한 복사본 혹은 디지털 사본의 제작을 허가합니다. 이 때, 사본은 상업적 수단으로 사용할 수 없으며 첫 페이지에 본 문구와 출처를 반드시 명시해야 합니다. 이 외의 목적으로 복제, 배포, 출판, 전송 등 모든 유형의 사용행위 를 하는 경우에 대하여는 사전에 허가를 얻고 비용을 지불해야 합니다. 정보과학회 컴퓨팅의 실제 논문지 제21권 제9(2015. 9) †† ††† 비 회 원 비 회 원 종신회원 : : : 고려대학교 IT융합학과 [email protected] 고려대학교 컴퓨터학과 [email protected] 고려대학교 융합소프트웨어전문대학원 교수 (Korea Univ.) [email protected] (Corresponding author) 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 (A Framework Using UPPAAL to Verify Schedulability of Hierarchical Scheduling Systems) 안소진 황대연 †† 최진영 ††† (So Jin Ahn) (Dae Yon Hwang) (Jin Young Choi) 하드웨어가 많이 발전하면서 안전성 확보가 필요한 실시간 임베디드 시스템에도 가상화 기술 이 적용되고 있는 추세다. 그러나 가상화 기술 적용 시, 스케줄러가 여럿 존재하게 되고, 이 스케줄러들 사이에 계층이 존재하게 되어 스케줄링 중 오류가 발생할 수 있는 단점이 있다. 임베디드 시스템의 제어 소프트웨어 같은 경우, 작은 문제로도 인명적, 재산적 피해가 클 수 있어 반드시 안전성 확보 여부를 검증 해야 한다. 실시간 임베디드 시스템에 스케줄러가 계층적으로 존재하는 경우, 안전성 확보를 위해 반드시 스케줄링 가능성을 확인해야 한다. 본 논문은 여러 수준의 계층적 스케줄링 시스템을 정형기법(formal methods)을 사용하여 스케줄링 가능성을 확인할 수 있는 프레임워크를 소개한다. 키워드: 계층적 스케줄링 시스템, 스케줄링 가능성 검증 프레임워크, 정형기법, UPPAAL Abstract The use of Operating System(OS) virtualization is increasing as it provides many useful features such as efficient use of hardware(HW), easy system migration, and isolation between virtual spaces which prevents errors effecting each other. Recent development in HW has made it possible to use OS virtualization in embedded systems. However, implementing OS virtualization means that a multiple number of schedulers are layered in a system, rendering it difficult to analyze the schedulability of the system and errors are easily produced. Errors in safety critical embedded systems can cause serious damage to life and property; thus, the hierarchical schedulability must be verified. In this paper, we propose a framework which supports formal modeling and verification of hierarchical scheduling systems with UPPAAL. Keywords: hierarchical scheduling system, schedulability verification framework, formal methods, UPPAAL

계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

ISSN 2383-6318(Print) / ISSN 2383-6326(Online)

KIISE Transactions on Computing Practices, Vol. 21, No. 9, pp. 604-609, 2015. 9

http://dx.doi.org/10.5626/KTCP.2015.21.9.604

․이 논문은 2014년도 정부(교육과학기술부)의 재원으로 한국연구재단의 기

연구사업 지원을 받아 수행된 것임(2012R1A1A2009354)

․본 연구는 미래창조과학부 정보통신기술진흥센터의 학ICT연구센터 육성

지원사업의 연구결과로 수행되었음(IITP-2015-H8501-15-1012)

․이 논문은 제41회 동계학술발표회에서 ‘계층 스 링 시스템의 스 링

가능성 검증을 한 UPPAAL 모델’의 제목으로 발표된 논문을 확장한 것임

논문 수 : 2015년 3월 26일

(Received 26 March 2015)

논문수정 : 2015년 5월 13일

(Revised 13 May 2015)

심사완료 : 2015년 7월 8일

(Accepted 8 July 2015)

CopyrightⒸ2015 한국정보과학회ː개인 목 이나 교육 목 인 경우, 이 작물

의 체 는 일부에 한 복사본 혹은 디지털 사본의 제작을 허가합니다. 이 때,

사본은 상업 수단으로 사용할 수 없으며 첫 페이지에 본 문구와 출처를 반드시

명시해야 합니다. 이 외의 목 으로 복제, 배포, 출 , 송 등 모든 유형의 사용행

를 하는 경우에 하여는 사 에 허가를 얻고 비용을 지불해야 합니다.

정보과학회 컴퓨 의 실제 논문지 제21권 제9호(2015. 9)

††

†††

비 회 원

비 회 원

종신회원

:

:

:

고려 학교 IT융합학과

[email protected]

고려 학교 컴퓨터학과

[email protected]

고려 학교 융합소 트웨어 문 학원 교수

(Korea Univ.)

[email protected]

(Corresponding author임)

계층 실시간 시스템 스 링 검증을 한 정형 임워크

(A Framework Using UPPAAL to Verify Schedulability of

Hierarchical Scheduling Systems)

안 소 진† 황 연

†† 최 진

†††

(So Jin Ahn)     (Dae Yon Hwang)    (Jin Young Choi)

요 약 하드웨어가 많이 발 하면서 안 성 확보가 필요한 실시간 임베디드 시스템에도 가상화 기술

이 용되고 있는 추세다. 그러나 가상화 기술 용 시, 스 러가 여럿 존재하게 되고, 이 스 러들

사이에 계층이 존재하게 되어 스 링 오류가 발생할 수 있는 단 이 있다. 임베디드 시스템의 제어

소 트웨어 같은 경우, 작은 문제로도 인명 , 재산 피해가 클 수 있어 반드시 안 성 확보 여부를 검증

해야 한다. 실시간 임베디드 시스템에 스 러가 계층 으로 존재하는 경우, 안 성 확보를 해 반드시

스 링 가능성을 확인해야 한다. 본 논문은 여러 수 의 계층 스 링 시스템을 정형기법(formal

methods)을 사용하여 스 링 가능성을 확인할 수 있는 임워크를 소개한다.

키워드: 계층 스 링 시스템, 스 링 가능성 검증 임워크, 정형기법, UPPAAL

Abstract The use of Operating System(OS) virtualization is increasing as it provides many useful

features such as efficient use of hardware(HW), easy system migration, and isolation between virtual

spaces which prevents errors effecting each other. Recent development in HW has made it possible

to use OS virtualization in embedded systems. However, implementing OS virtualization means that

a multiple number of schedulers are layered in a system, rendering it difficult to analyze the

schedulability of the system and errors are easily produced. Errors in safety critical embedded systems

can cause serious damage to life and property; thus, the hierarchical schedulability must be verified.

In this paper, we propose a framework which supports formal modeling and verification of hierarchical

scheduling systems with UPPAAL.

Keywords: hierarchical scheduling system, schedulability verification framework, formal methods,

UPPAAL

Page 2: 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

계층 실시간 시스템 스 링 검증을 한 정형 임워크 605

1. 서 론

하드웨어가 발 하면서 이를 효율 으로 사용하기

한 방법으로 가상화(virtualization) 기술이 두되어 서

버, 일반 PC에서 사용되었다. 최근에는 임베디드 시스템

에서도 가상화 기술을 용하려는 추세이다.

임베디드 시스템에 많이 사용되고 있는 ARM 로세

서는 최근 가상화 기술을 구 하기 쉽도록 아키텍쳐를

확장하 고[1], Xen Project는 ARM에서 동작하는 하이

퍼바이 를 개발하는 등[2], 임베디드 시스템에서도 가

상화 기술을 사용하고자 하는 노력을 계속하고 있다.

가상화 기술을 사용하게 되면, 스 러가 계층 으로

존재하기 때문에 스 링 가능성을 계산하는데 복잡도

가 높아진다. 계층 스 링 시스템이란 최상 스

러가 하 스 러를 스 링하고, 하 스 러가

태스크를 스 링하는, 스 러 사이 계층이 존재하는

시스템을 말한다. 실시간 태스크가 많이 동작하는 임베

디드 소 트웨어, 그 에서도 특히 제어 부분에 해당하

는 소 트웨어는 작은 문제로도 인명피해나 재산 피해

를 입을 수 있다. 따라서 모든 실시간 태스크가 실행할

수 있는 시간이 항상 주어지는지 반드시 확인해야 한다.

정형기법은 수리 논리 언어를 사용해 시스템을 명

세하고 수학 으로 검증하는 방법으로, 안 필수, 임무

필수, 보안 필수 시스템의 안 성(safety), 신뢰성(reli-

ability), 보안성(security) 확보 여부를 확인하는데 주로

사용된다. UPPAAL[3]은 타임드 오토마타(Timed Auto-

mata)를 기반으로 시스템을 명세하고, 정형기법 하

나인 모델 체킹(model checking)[4] 방식으로 시스템을

검증하는 도구로, 실시간 속성을 명세하고 검증하기 유

리하다. 본 논문에서는 실시간 태스크가 동작하는 시스

템에서 스 러가 계층 으로 존재할 때, 항상 모든 태

스크들이 주어진 주기 데드라인을 과하지 않고 실

행을 완료할 수 있도록 스 링 가능한지를 정형기법

을 사용해 명세하고 검증할 수 있는, UPPAAL로 작성

한 임워크를 소개하고자 한다.

본 논문 구성은 다음과 같다. 1장 서론에 이어 2장에

서는 련 연구를 소개한다, 3장에서는 제안하는 임

워크를 설명하고, 4장에서는 임워크를 이용해 실세

계 시스템을 검증하며, 마지막으로 5장에서 결론 향

후 연구에 해 기술한다.

2. 계층 스 링 시스템과 련 정형검증 연구

계층 스 링 시스템의 스 링 가능성을 확인하

는 연구는 많으나, 정형기법을 이용한 연구가 많지는 않

다. 본 논문에서는 본 논문 내용과 련성을 고려해 단

일 코어상에서 여러 가상 스 러가 동작하는 연구들

수학 모델 모델 체킹을 사용한 연구들을 살펴

본다.

[5]는 계층 스 링 시스템을 합성(compositional)

검증 방식을 이용해 스 링 가능성을 확인할 수 있는

방법과, 그 방식을 이용한 수학 임워크를 제안했

다. [6,7]은 계층 스 링 시스템을 합성 검증 방식을

이용해 정형기법 하나인 모델 체킹으로 정형 명세

검증하는 연구들이다.

합성 검증 방식은 상태 폭발(state explosion) 문제를

회피하면서 계층 스 링 시스템을 검증할 수 있는

장 이 있다. 상태 폭발 문제는 모델의 모든 경로 상

태를 검사해야 하는 모델 체킹의 특성 상 모델의 크기가

커지면 검증해야 하는 경로 상태의 수가 기하 수

으로 늘어나, 컴퓨터 워를 넘어버리는 문제를 말한다

[4]. 이런 장 이 있는 반면 합성 검증 방식은 경우에 따

라 실제로는 스 링이 가능해도 검증 시 불가하다는 결과

를 내는 오버 어 록시메이션(over-approximation) 문제

가 있다[7]. 그림 1은 합성 검증 방식을 설명하는 그림이다.

계층 스 링 시스템에서 태스크와 하 스 러

(Virtual Scheduler)는 주기 시간과 주기 내에 실행해야

하는 시간을 가진다. 그림 1과 같이 체 계층 스

링 시스템이 있을 때, 합성 검증 방식은 우선 ①에 해당

하는 하 스 러1과 태스크 1,2를 검증한다. 하 스

러는 주기 6동안 실행시간 4를 가지며, 태스크 1,2

는 각각 주기3 1의 실행 시간을 가진다. ①에서 태스

크 1,2가 매 주기마다 필요한 실행 시간 동안 하 스

러1로부터 자원을 할당 받을 수 있다면 스 링이

가능하다고 단한다. ①이 스 링 가능하면 ②의 스

링 가능성을 검증한다. 이 때, ①의 행 나 검증 결

과가 ②에 향을 미치지 않는다. ①과 ②가 모두 스

링 가능하다면, ③이 가능한지 확인한다. ①, ②, ③ 각

각이 모두 스 링 가능하다는 결과가 나오면 계층

스 링 시스템 체는 스 링이 가능하다고 단한

그림 1 합성 검증 방식

Fig. 1 Compositional Verification

Page 3: 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

606 정보과학회 컴퓨 의 실제 논문지 제 21 권 제 9 호(2015. 9)

그림 2 합성 검증 방식의 단

Fig. 2 A Weak Point of Compositional Verification

다. 즉, 합성 검증 방식은 계층 구조로 존재하는 스

러들을 쪼개 마치 단일 스 러와 그 스 러의 향

을 받는 태스크의 집합과 같은 형태 여럿을 검증하는

방식이다.

그림 2는 그림 1 ①에 해당하는 부분을 합성 검증

방식으로 검증했을 때, 태스크가 실행하기에 충분한 시

간이 스 러에게 주어졌을 때에도 태스크들이 시간

내 실행 완료할 수 없다는 결과가 나오는, 오버 어 록

시메이션 문제가 있는 경우이다.

체 시스템을 봤을 때, 하 스 러1은 하 스

러 2의 향을 받아 3의 시간 2씩을 사용하게 된

다. 그러나 합성 검증 방식을 취하면 하 스 러2의

향을 고려하지 않으므로 하 스 러1이 주기 시작

과 함께 주어진 실행시간 4를 연달아 모두 사용할 경우

를 고려하게 된다. 이 경우, 하 스 러1 아래 태스

크 1,2는 각 태스크의 주기가 하 스 러1의 실행 시

기와 맞지 않아 스 링이 불가하다는 결과가 도출되

는 오버 어 록시메이션 문제가 발생한다.

본 논문에서는 제안하는 임워크를 사용해 계층

스 링 시스템 체를 명세하고 검증하는 방법을 소

개하고, 그림 1의 제를 검증하여 합성 검증 방식과의

차이 을 확인한다. 그리고 [6]과 [7]에서 실험 상으로

한 실세계의 실시간 임베디드 시스템인 항공기 소 트

웨어의 요구사항[8]을 검증해본다.

3. 계층 스 링 시스템 검증 임워크

본 논문에서 제안하는 임워크의 목 은 시스템의

구성과 각 태스크들의 시간 련 정보를 입력으로 받아

계층 스 링 시스템 체를 명세하고, 명세된 시스

템 체를 한번에 검증하여 보다 정확하게 스 링 가

능성을 확인하는 것이다. 제안하는 방식은 합성 검증 방

식의 오버 어 록시메이션 문제를 해결할 수 있고, 스

링이 불가한 경우 어떤 경로에서 어느 하 스 러

와 태스크가 문제가 되는지 확인할 수 있다.

3.1 계층 스 링 시스템 검증 방법

제안하는 임워크로 체 시스템을 명세하기 해

서는 최상 스 러(P), 하 스 러(V), 태스크(T)

에 시스템 요구사항에 따라 다음의 정보를 입력한다.

∙ P = (S, W)

∙ V = (S, W, Pe, E, Pr)

∙ T = (Pe, E, D, O, Pr)

최상 스 러는 스 링 정책(S)과 워크로드(W)

정보를 가진다. 하 스 러는 최상 스 러의

에서는 태스크와 같은 성격을 지니고, 태스크 에

서는 최상 스 러의 성격을 가지기 때문에, 최상

스 러의 정보와 태스크의 정보를 모두 가지게 된다.

따라서 스 링 정책과 워크로드 뿐 아니라 주기(Pe),

주기 필요한 실행 시간(E), 우선순 (Pr)를 가진다.

태스크는 주기, 주기 필요한 실행 시간, 데드라인(D),

시작 오 셋(O), 우선순 을 가진다.

각 스 러의 워크로드는, 스 러에 자원을 요청하

는 태스크들의 집합이다. 워크로드에 속한 실시간 태스

크가 자원을 요구하면, 해당 스 러의 큐에 태스크가

삽입되며, 스 러는 자신의 스 링 정책에 따라 자

신의 큐를 정렬한다. 최상 스 러와 하 스 러

의 워크로드로는 자신 이외의 하 스 러 태스크

들이 속할 수 있다. 이를 통해 여러 벨의 계층 스

링 시스템을 명세할 수 있다.

스 링 정책은 모듈화 되어 있어 쉽게 설정이 가능

하다. 재 제안하는 임워크는 RM(Rate Monotonic),

EDF(Earliest Deadline First)와 선 형 FP(preemp-

tive Fixed Priority) 스 링 정책이 정의되어 있다.

그 밖에도 사용자가 다른 스 링 정책을 따로 정의해

사용할 수도 있다.

3.2 태스크 모델

태스크(그림 3)는 Init 상태에서 자신의 시작 오 셋 시

간을 기다렸다 자신의 상 스 러에 자원을 요청하면

서 Ready 상태로 이한다. Ready 상태에 이했을 때부

터 주기 시간은 소모된다. 자원 할당을 받으면 Running

상태로 진입해 실행시간만큼 자원을 사용한 뒤에는 주기

시간이 모두 소모될 때까지 Idle 상태에 머문다. 주기가 끝

난 후에는 설정을 기화 한 뒤 다시 자원을 요구한다.

그림 1의 T1=(3,1,3,0,0)을 로 들어 태스크 모델을

확인해보면, 시간 0일 때 Init상태에서 Ready 상태로 이

동하게 된다. Ready 상태 진입 때부터 주기 시간은 소모

되게 된다. T1은 자원 할당을 받을 때까지 Ready에서

기하다 할당 받으면 Running 상태로 이동한다.

Running 상태에서 T1의 실행시간인 1을 소모한 뒤,

Idle 상태로 진입해 주기 3의 시간이 모두 소모될 때까지

기 후 주기가 완료되면 Ready 상태로 진입하게 된다.

Page 4: 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

계층 실시간 시스템 스 링 검증을 한 정형 임워크 607

그림 4 하 스 러 모델

Fig. 4 Virtual Scheduler Model

그림 3 태스크 모델

Fig. 3 Task Model

3.3 하 스 러 모델

하 스 러(그림 4)는 Init 상태에서 기하다가 자

신의 워크로드 하나가 자원을 요청하면 최상 스

러에 자원을 요청하고 Ready 상태로 이한다. 최상 스

러가 자신에게 자원을 할당하면, 자신의 스 링 정

책에 따라 큐를 정렬하고 가장 앞에 있는 하 스 러

혹은 태스크에 자원을 할당하고 Running 상태로 이한다.

Running 상태에서 Idle 상태로 이하는 경우는 다음

과 같다.

∙하 스 러의 실행 시간이 모두 소모되지 않았

으나 큐가 비어있는 경우

∙큐에 워크로드가 있으나 실행 시간을 모두 소모한

경우

Idle 상태에서 주기시간을 모두 소모할 때까지 기한

후 Init 상태로 돌아가게 된다.

만약 하 스 러가 실행 시간을 모두 사용하지 못

해도 Ready나 Idle 상태에서 오래 기하여 주기가 먼

끝나게 되면 주기와 실행시간을 처음 값으로 재설정

한다.

3.4 최상 스 러 모델

최상 스 러(그림 5)는 자신의 향을 받는 하

스 러 혹은 태스크가 자원 요청을 하면 스 링 정

책에 따라 큐를 정렬하고, 큐의 가장 앞에 있는 워크로

드에 자원을 할당한다. 할당 받은 워크로드가 사용을 끝

내면, 큐에 남은 다른 워크로드 하나에 자원을 할당

한다. 큐가 비어있다면 스 러는 워크로드의 요청을

기다리는 Idle 상태가 된다.

그림 5 최상 스 러 모델

Fig. 5 Physical Scheduler Model

Page 5: 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

608 정보과학회 컴퓨 의 실제 논문지 제 21 권 제 9 호(2015. 9)

3.5 제 검증

본 장에서는 그림 1의 시스템을 제로 검증한다.

임워크의 입력은 다음과 같다.

∙ P = (RM, {V1,V2})

∙ V1 = (EDF, {T1,T2}, 6, 4, 0)

∙ V2 = (EDF, {T3}, 3, 1, 0)

∙ T1 = (3, 1, 3, 0, 0)

∙ T2 = (3, 1, 3, 0, 0)

∙ T3 = (3, 1, 3, 0, 0)

이와 같이 시스템 명세를 완료하고 검증해보면, 스

링이 가능하다는 결과를 얻을 수 있다. 이로서 합성

검증 방식의 오버 어 록시메이션 문제가 본 논문에서

제안하는 임워크에서는 발생하지 않음을 확인할 수

있다.

4. 항공기 실시간 소 트웨어 명세 검증

[8]은 항공기 실시간 소 트웨어의 시간 요구사항 명

세서다. [8]의 명세서는 실시간 태스크의 요구사항만 가

지고 있으며, [6]과 [7]은 그 요구사항을 기반으로 하

스 러의 요구사항을 임의로 정해 계층 스 링

시스템을 명세하고 합성 검증 기법을 사용해 검증했다.

본 논문에서는 [6]의 논문에서 사용한 계층 스

링 시스템의 시간 요구사항을 기반으로 실험을 진행했

다. 단, [6]에서 사용한 스 링 정책보다 일반 으로

더 많이 사용되는 실시간 스 링 정책인 RM과 EDF

를 이용해 스 링 했다. 본 논문에서 진행한 실험의

시스템 구성과 시간 요구사항은 표 1과 같다.

추가로, [8]의 요구사항에서 일부 태스크가 산발 으

로 실행하는 태스크로 명시되어 있었으나, 본 실험에서

는 주기 태스크로 간주하고 명세하 다. 산발 으로

발생하는 태스크가 지속 으로 실행되어 주기 태스크

와 마찬가지로 주기마다 자원을 요청할 수 있음을 가정

한 것이다.

표 1에 명시된 요구사항의 검증 결과는 스 링이

불가한 것으로 나왔다. 그 원인은 [6]과 [7]에서는 일부

산발 태스크가 한 번 수행한 뒤 다시는 실행되지 않

는 것으로 명세한 반면, 본 실험에서는 모든 태스크가

주기 태스크로 간주되어 V2에 할당된 실행시간이 부

족했기 때문이다.

실제 시스템에서 산발 태스크가 [6,7]에서 명세한

로 한 번 실행하고 다시는 실행하지 않는지, 아니면

본 논문에서 명세한 로 최 로 실행할 경우 주기 으

로 동작할 수 있는지 확인이 필요하다.

두 번째 실험으로 산발 태스크의 시간 요구사항을

수정하여 수학 으로 태스크들의 실행시간이 V2 체

실행시간 내에 종료할 수 있도록 수정했다.

표 1 상 시스템의 요구사항

Table 1 Requirements of Target System

P = (RM, {V1, V2, V3, V4, V5})

V1 =(EDF,{T1,T2,T3,T4},

10, 3, 0)

T1 = (10,1,5,0,0)

T2 = (40,2,40,1,0)

T3 = (40,4,40,12,0)

T4 = (40,2,40,20,0)

V2 =(EDF,{T5,T6,T7,T8},

10, 4, 0)

T5 = (40,1,40,0,0)

T6 = (50,7,50,1,0)

T7 = (50,5,50,2,0)

T8 = (50,7,50,16,0)

V3 =(EDF,{T9,T10},

10, 1, 0)

T9 = (80,5,80,2,0)

T10 = (100,1,100,15,0)

V4 =(EDF,{T11,T12},

10, 1, 0)

T11 = (100,6,100,3,0)

T12 = (200,1,200,10,0)

V5 =(EDF,{T13,T14,T15},

10, 1, 0)

T13 = (200,2,200,10,0)

T14 = (400,5,400,3,0)

T15 = (1000,4,1000,2,0)

T5 = (50, 1, 50, 0, 0)

검증 결과, 스 링이 불가하 다. 그 이유는 P의 스

링 정책으로 RM을 사용했을 때, 모든 하 스

러가 주기 10으로 정해져 있어 실질 으로 FIFO와 같

이 동작했기 때문으로, 스 링 정책을 변경하거나 주

기를 다르게 변경할 필요가 있다.

마지막으로, 하 스 러의 주기 당 실행 시간 비율

을 유지하면서 각 하 스 러의 주기를 각각 다르게

변경해 우선순 가 하 스 러마다 달라지도록 수정

했다. 이 때는 스 링이 가능하다는 결과를 얻을 수

있었다.

본 실험을 통해 제안하는 임워크로 실세계의 실

시간 임베디드 시스템을 상태 폭발 없이 정형 검증 할

수 있었다는 에서, 제안하는 임워크가 실제 시스

템 검증에 사용하는 것이 가능함을 알 수 있다.

5. 향후 연구 결론

가상화 기술이 차 일반화되면서 안 성 확보가 필

요한 실시간 임베디드 시스템에도 계층 스 링 시

스템이 존재할 가능성이 높아졌다. 따라서 계층 스

링 시스템에서 스 링으로 인한 안 성 문제가 발

생하지 않도록 태스크들이 항상 스 가능한 시스템

인지 정형기법을 이용해 확인할 필요가 있다.

본 논문은 설정에 필요한 몇 가지 속성을 입력하는

것으로 쉽게 계층 스 링 시스템을 명세하고, 체

시스템을 분할하지 않고 한번에 정형 검증하는 임

워크를 제안했다.

제안하는 임워크는 기존 연구의 오버 어 록시메

이션 문제를 해결하면서, 모델 체킹의 상태 폭발 문제도

Page 6: 계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크계층적 실시간 시스템 스케줄링 검증을 위한 정형적 프레임워크 605 1. 서

계층 실시간 시스템 스 링 검증을 한 정형 임워크 609

회피할 수 있었다. 향후, 임워크에서 태스크 간 의

존성을 명세할 수 있도록 확장할 정이다.

References

[ 1 ] Mijat, Roberto, and Andy Nightingale. "Virtualiza-

tion is coming to a platform near you," ARM White

Paper, 2011.

[ 2 ] Hwang, Joo-Young, et al., "Xen on ARM: System

virtualization using Xen hypervisor for ARM-based

secure mobile phones," Consumer Communications

and Networking Conference, 2008. CCNC 2008. 5th

IEEE. IEEE, 2008.

[ 3 ] Behrmann, Gerd, et al., "UPPAAL 4.0," Quantitative

Evaluation of Systems, 2006. QEST 2006. Third

International Conference on. IEEE, 2006.

[ 4 ] []Clarke, Edmund M., Orna Grumberg, and Doron

Peled. Model checking. MIT press, 1999.

[ 5 ] Shin, Insik, and Insup Lee, "Compositional real-

time scheduling framework with periodic model,"

ACM Transactions on Embedded Computing Sys-

tems (TECS) 7.3 (2008): 30.

[ 6 ] Carnevali, Laura, Alessandro Pinzuti, and Enrico

Vicario, "Compositional verification for hierarchical

scheduling of real-time systems," Software Engin-

eering, IEEE Transactions on 39.5 (2013): 638-657.

[ 7 ] Boudjadar, Jalil, et al., "Hierarchical scheduling

framework based on compositional analysis using

uppaal," The 10th International Symposium on For-

mal Aspects of Component Software. 2013.

[ 8 ] Locke, C. Douglass, et al., Generic avionics software

specification. No. CMU/SEI-90-TR-8. CARNEGIE-

MELLON UNIV PITTSBURGH PA SOFTWARE

ENGINEERING INST, 1990. D. Chaum, "Blind Signa-

tures for Untraceable Pay-ments," Advanvances in

Cryptology-Proceeding of Crypto'82, Springer-Verlag,

pp. 199-204, 1982.

안 소 진

2009년 숙명여자 학교 컴퓨터과학과(학

사). 2011년 고려 학교 컴퓨터 통신

공학과(석사). 2011년~ 재 고려 학교

모바일솔루션학과 박사과정. 심분야는

정형기법, 임베디드 실시간 시스템, 가상

머신, 스 링

황 연

2002년 고려 학교 컴퓨터학과(학사). 2005

년 고려 학교 컴퓨터학과(석사). 2005년~

재 고려 학교 컴퓨터학과 박사과정.

심분야는 정형기법. 임베디드 실시간

시스템. 로세스 수. 모델 체킹

최 진

정보과학회 컴퓨 의 실제 논문지

제 21 권 제 2 호 참조