KR20090040312A - 시스템의 리얼 타임 용량을 테스트하기 위한 방법 - Google Patents

시스템의 리얼 타임 용량을 테스트하기 위한 방법 Download PDF

Info

Publication number
KR20090040312A
KR20090040312A KR1020097002242A KR20097002242A KR20090040312A KR 20090040312 A KR20090040312 A KR 20090040312A KR 1020097002242 A KR1020097002242 A KR 1020097002242A KR 20097002242 A KR20097002242 A KR 20097002242A KR 20090040312 A KR20090040312 A KR 20090040312A
Authority
KR
South Korea
Prior art keywords
event
time analysis
real
events
computer system
Prior art date
Application number
KR1020097002242A
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 인크론 지엠비에이치
Publication of KR20090040312A publication Critical patent/KR20090040312A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 태스크들 τn에 의해 발생된 이벤트를 분석하는 동안 이벤트 발생패턴이 이벤트 밀도의 설명(description)에 의해 나타나고, 이러한 이벤트 밀도의 설명은 이벤트 발생 패턴의 일부를 설명하는 한 세트의 요소로 구성되는데, 이러한 발생 패턴의 설명을 위한 적어도 두 가지 요소는 추가 세트의 추가 요소를 구성하는데, 이러한 "추가 세트"와 추가 세트에 의해 설명되는 "추가 발생 패턴"은 서로 상이한 것을 특징으로 하는 시스템의 리얼 타임 분석 방법에 관한 것인데, 상기 추가 요소는 거리 a, 리미트 n, 주기 p 등인 것을 특징으로 하는, 시스템, 특히 컴퓨터 시스템의 리얼 타임 분석 방법에 관한 것이다.
태스크 시스템 (τn ,Task system) ,태스크 (τ ,Task) , 계층적 이벤트 시퀀스 (HES ,Hierarchical event sequence) , 계층적 이벤트 시퀀스 (Θ ,Hierarchical event sequence), 추가 계층적 이벤트 시퀀스(Θ',Further hierarchical event sequence), 추가 태스크 (τ',Further task) , 시간 간격 (I ,Time interval) , 계층적 이벤트 시퀀스 요소 (ω ,Hierarchical event sequence element) , 주기 (p ,Period), 초기거리 (a ,Initial distance) , 리미트(n ,Limit) , 회귀하는 임베디드 계층적 이벤트 시퀀스(Θ',Recursive, embedded hierarchical event sequence) , 계층적 이벤트 시퀀스 요소 (ω ,hierarchical event sequence element)

Description

시스템의 리얼 타임 용량을 테스트하기 위한 방법 {METHOD FOR TESTING THE REAL-TIME CAPABILITY OF A SYSTEM}
본 발명은 시스템, 특별히 컴퓨터 시스템의 리얼 타임 용량을 테스트하기 위한 방법과 관련이 있다. 임베디드 리얼 타임 시스템의 시간의존적 행위의 분석은 임베디드 리얼 타임 시스템의 개발을 자동화하기 위해 요구된다.
리얼 타임 시스템의 정확한 기능과 관련하여, 정확성 뿐만 아니라 계산 결과의 시기 적절한 결정이 요구되는데, 상기 시스템의 일례로서, 에어벡 제어(air-bag control) 또는 모터 제어(motor control) 분야를 들 수 있는데, 본 발명은 이와 같은 분야에 응용될 수 있다.
임베디드 리얼 타임 시스템의 개발의 자동화를 위해 임베디드 리얼 타임 시스템의 시간의존적 행위의 분석이 필요하고, 리얼 타임 시스템의 정확한 기능과 관련하여 정확성 뿐만 아니라 계산 결과의 시기 적절한 결정이 요구된다.
이 분야의 많은 논문들이 전적으로 주기적인 발생 패턴을 이용하고 있는데, K.Cresser(Echtzeitnachweis Ereignisgesteuerter Real-zeisysteme. Dissertation, VDI Verlag, Dusseldorf, 10 (286), 1993)에 의하면 이벤트 발생패턴의 설명은 "이벤트 흐름 모델"로 지칭되고 있음을 알 수 있다.
이러한 관계에서 "이벤트 흐름(event stream)"은 각각 주기 Z와 거리 a로 구성된 요소의 세트로 기술할 수 있다.
투플(tuples)은 "이벤트 흐름 요소(event stream elements)"로 지칭되어질 수 있다.
시작점까지의 거리는 이벤트 흐름 요소와 동일하게 지정되었다고 가정한다.
각각의 이벤트 흐름 요소는 고유의 발생패턴을 생성하는데, 그러한 점에서 이벤트 흐름 요소의 첫 번째 이벤트는 공통의 시작점으로부터의 거리에서 발생할 수 있고, 그 다음 이벤트는 주기 Z에 의해 나타난다. 따라서, 두 번째 이벤트는 시작점으로부터 a+z의 거리에서 나타나며, 세 번째 이벤트는 a+2z에서 나타나지며 그 이후도 마찬가지다.
모든 이벤트 흐름은 모든 이벤트 흐름 요소의 발생패턴의 중첩으로부터 기인한다. 더욱이, 단지 그러한 이벤트 흐름은 각각의 시작점으로부터 시작된 이벤트의 최대밀도를 위한 발생 패턴을 발생시키는 태스크에 대해 유효하다고 간주된다. 그러므로, 최초의 초기거리 0은 적어도 하나의 이벤트 흐름 요소(event stream elements)를 할당 받게 된다.
이러한 관계에서 이벤트 흐름(event stream)은 이벤트의 발생패턴 최대치를 위한 상위 한계를 기술한다고 가정할 수 있다. "발생 패턴의 최대치"는 가능한 이벤트 밀도의 최대치를 가지고 있는 발생패턴을 의미하는 것으로 이해될 수 있다.
이러한 실제 수행 경로 중에서, 시스템상의 이벤트 흐름에 의해 기술되는 것보다 낮은 밀도의 이벤트 발생은 허용되는 것으로 여겨진다. 이러한 관계에서, "허용가능한(permissible)"이란 이벤트 흐름을 보증하기 위해 지속되는 시간제한으로 의미되며, 또한 이벤트 밀도의 감소를 위해 지속될 수도 있다.
리얼 타임 분석방법은 이러한 모델을 위해 기술되어질 것이다.
최근의 논문[K. Albers, F. Slomka. An Event Stream Driven Approximation for the Analysis of Real-Time Systems. IEEE Proceedings of the 16th Euromicro Conference on Real-Time Systems, 2004, p, 187-195; K. Albers, F. Slomka. Efficient Feasibility Analysis for Real-Time Systems with EDF-Scheduling. Proceedings of the Design Automation and Test Conference in Europa (DATE'05) p. 492-497]에 의하면 이러한 모델을 기술하기 위한 보다 더 효율적인 리얼 타임 분석방법을 기술하고 있다.
이러한 기술의 문제점은 이벤트증폭을 효율적으로 나타낼 수 없고, 그러므로 효율적으로 분석될 수 없다는 점이다.
"이벤트 증폭(event burst)"은 하나의 발생패턴 안에서의 이벤트밀도의 제한된 시간증가분을 의미한다. 이벤트 흐름 모델은 그 자체의 고유한 이벤트 흐름 요소에 의해 나타나지는 하나의 이벤트 증폭에 속하는 각각의 이벤트를 필요로 한다.
단지 이벤트 증폭들은 각각 이벤트 흐름 요소를 촉발시키는 첫 번째 이벤트 증폭의 이벤트들에게 할당되기에 충분한 발생패턴 안에서 반복적 주기적으로 일어난다. 모든 이벤트 증폭은 수 천개의 요소들을 포함할 수 있기 때문에, 이벤트 흐 름 모델은 그러한 시스템을 위한 기재형식에 적합하지 않다.
S. Chakraborty L. Thiele, [A New Task Model for Streaming Applications and its Schedulability Analysis, IEEE Proceedings of the Design Automation and Test in Europe Conference (DATE'05), pp. 486-491, 2005]에 따르면 발생 패턴을 위한 가능한 서술은 이벤트증폭의 효율적인 표현을 위한 특징화한 것으로 나타내어진다.
발생패턴은 다른 말로 여러 개의 요소의 세트로 설명될 수 있다. 이러한 모델은 이벤트 발생횟수와 간격으로 이루어지며, 이러한 길이의 어느 한 간격 속에서 일어날수 있는 이벤트 발생횟수의 최대치라 특징지어질 수 있다.
개개의 투플(tuples)는 발생패턴이 모든 투플(tuples)을 충족시키는 것을 허용되도록 하기 위해 상호간에 제한적으로 작용한다. 어떠한 이벤트 증폭은 이러한 모델과 함께 효율적으로 기술되어질 수 있다.
그러나, 이러한 서술의 문제점은, 제안된 분석은 모든 투플(tuples)의 수많은 선형복합체의 조건을 필요로 함을 요구되어지고, 그러므로 효율적으로 수행될 수 없다는 점이다. 더 나아가, 많은 종류의 이벤트 증폭은 이 모델에 의해 효율적으로 나타내어질 수 없다.
예를 들어 서로간 t의 거리에 있는 첫 번째 두 개의 이벤트와 그들의 각각의 이전 이벤트와 1>t의 거리에 있는 모든 다른 이벤트를 들 수 있는데, 발생패턴은 이 모델에 의하면 효율적으로 나타낼 수 없다.
첫 번째 이벤트를 제외한 각각의 이벤트는 그 고유한 투플(tuples)에 의해 기술될 수 있다. 더 나아가 서로 다른 내부적 발생패턴을 가지는 이벤트 증폭 속의 그러한 발생패턴은 기술되어 질 수 없다.
k.richter [Compositional Scheduling Analysis Using Standars Event Models, dissertation, TU Braunschweig, 2005] 는 이러한 설명은 주기와 이벤트 지터(event jitter)와 이벤트 사이의 최소 거리로부터 설명되는 이벤트들로 나타내어질 수 있다고 한다.
이러한 관계에서, 이벤트 지터(event jitter)는 파동을 발생하게 하는 주요한 주기적 발생의 시간간격을 설명한다. 이벤트 지터(event jitter)가 다수의 주기를 포함할 때 , 시간 간격 내에서 일어나는 모든 이벤트들은 거의 동시에 발생할 수 있다. 이러한 이벤트들은 단지 최소 거리에 의해 분리될 뿐이다.
이 모델은 단순화를 설명하는데 쓰여질 수 있으며, 이벤트 증폭 속 이벤트들 사이에 단순한 최소거리를 가지는 이벤트 증폭을 선도적으로 일으킬 수 있다.
이벤트 증폭이 더욱 복잡해질수록 , 예를 들면 반복적으로 일어나거나 이벤트 증폭 속 이벤트들의 더욱 복잡한 발생패턴을 수반하는 이벤트증폭은 이러한 설명으로 나타내어질 수 없다.
본 발명의 목적은 전술한 이전발명의 불이익을 제거하는데 있는데, 본 발명의 목적은 청구항 제1항, 제13항, 제20항의 특징에 의해 해결되고, 유용한 구현은 청구항 제2항 내지 제12항과 제14항 내지 제19항의 특징에 의해 도출된다.
도 1에서와 같이 태스크의 한가지 모델인 상호간 의사소통이 고려될 수 있는데, "태스크(task)"는 입력값을 처리하여 계산된 결과를 발생시키거나 시스템을 변화시키는 일련의 처리단계라고 할 수 있다. 태스크는 알고리즘의 설명으로 나타내어지거나 기능을 수행하는 하드웨어의 일부분에 대한 설명으로 나타내질 수 있다.
이러한 관계에서 활성화된 태스크의 다음 단계의 처리과정의 계산된 결과와 같이 태스크는 다른 태스크를 활성화시킬 수 있다. 이러한 활성화 또는 자원(resource)에 대한 엑세스는 태스크의 수행 동안 어떠한 지점에서도 일어날 수 있는데, 태스크의 활성화 또는 자원(resource)에 대한 엑세스를 "이벤트(event)"라고 간주한다.
이러한 모델의 빠른 분석을 수행하기 위해 "이벤트 발생행위"에 대한 설명이 필요하다. "이벤트 발생행위"는 시간의존적 발생 행위를 의미한다고 이해될 수 있으며, 바꿔 말하면 다수의 이벤트 사이의 시간 간격을 의미한다고 할 수 있다.
"발생 패턴(Occurrence pattern)"은 발생행위의 설명을 의미하는 것으로 이해된다. "발생 패턴"은 복수개의 설명요소(description elements)를 포함한다. 이러한 설명 요소는 같거나 다를 수 있는데, 개개의 설명요소는 "이벤트 발생행위"의 일부분을 나타내기 때문이다.
"발생 패턴"의 가능한 한가지 설명은 "이벤트 밀도(event density)"로 불리는데, 이와 별로도 주기 또는 지터(jitter)와 같이, "이벤트 밀도"는 "발생 패턴"을 기술되어질 수 있다.
"이벤트 밀도"의 설명 형태에 부대해서 이벤트 발생횟수의 최대치 또는 최소치는 시간 간격의 특정된 길이를 뜻한다. 이러한 관계에서 이벤트 밀도는 파동(fluctuations)에 종속될 수 있다.
더욱이, 설명(description)은 시간의존적 행위의 빠른 해석을 지원하며, 특별히 지정된 시간 한계의 고수를 보증한다. 이것은 이 안에서 일어날 수 있는 이벤트 발생횟수의 간격을 지정하고, 이러한 발생횟수가 일어날 수 있는 간격에서의 이벤트 발생횟수를 지정하기 위한 "이벤트 발생행위"의 설명으로부터 빠른 결정을 하는데 중요하다.
이러한 관계에서, 통상적으로 간격의 길이(interval length)만이 중요하고, 간격길이의 최대치와 최소치는 어떤 이벤트 발생횟수가 요구되어지거나, 이벤트 발생횟수의 최대치와 최소치는 어떤 간격길이가 요구되어진다.
이러한 관계에서 설명요소의 개수와 관련한 선형 복잡성을 가진 결정을 허용하는 설명은 특별히 유익하다.
본 발명의 분석방법은, 리얼 타임 시스템의 해석, 그 중에서도 특별히 컴퓨터 시스템에 있어서, 서로 다른 태스크의 세트인 (τ) 라는 조건이 주어질 것을 제안하는데, 여기에서 다수의 태스크인(τn)은 적어도 부분적으로 시스템과 프로세스과정에 의해 반복적으로 요구되거나, 시스템의 부분적 구성요소에 대한 응답에 의한 이벤트를 반복적으로 발생시킨다.
태스크에 응답하는 이벤트들의 발생패턴 또는 분석중의 태스크에 의해 발생되는 발생패턴들은 적어도 부분적으로는 이벤트밀도의 설명에 의한다. 여기에서 이벤트밀도는, 그들 각각이 이벤트의 발생패턴의 일부분을 설명하는 요소의 세트로 이루어지며, 이벤트 밀도에 의해 나타나지는 발생패턴의 설명을 위한 적어도 두 개의 요소는 추가 요소의 세트를 포함한 것에 의해 나타난다.
그리고 추가의 요소의 세트와 그들에 의해 설명되는 발생패턴은 각기 서로 다르다. 더 나아가, 분석방법은, 리얼 타임 시스템 ,그 중에서도 특별히 컴퓨터 시스템에 대해 다른 태스크의 세트인 (τ) 을 제공할 것을 제안한다.
상기 태스크 (τn)는 적어도 부분적으로는 시스템과 프로세스 과정에 의해 반복적으로 요구되어지거나 시스템의 부분적 구성요소의 응답에 의해 반복적으로 이벤트를 발생시키며, 적어도 하나의 태스크를 가지고, 그것이 활성화될 때 다수의 이벤트를 발생시킨다.
태스크의 내부의 행동은 제어 플로우 그래프(control flow graph) 에 의해 나타나지는 제어 흐름에 의해 기술되어진다.
하나의 단계는, 관련되는 부분 그래프의 다수와(또는) 제어 플로우 그래프의 노드를 결정하는 이벤트들의 발생패턴으로부터 제공되며 추가 발생 패턴은 제어 플로우 그래프에 의해 결정된다.
그리고, 부분적으로는 적어도 이러한 결정에 사용되는 부분 그래프의 이벤트의 부가적인 발생패턴을 하나는 갖는다. 이러한 부가적인 발생패턴은 부분 그래프의 어떤 플로우 경로 지점에 시간적으로 의존하는 이벤트의 가능한 발생패턴을 나타낸다.
이러한 관계에서 자원(resource)은 단지 제한된 방법에만 유용하거나 시간 또는 양에 의해 할당된 시스템에서 동작하는 수단을 갖는 것을 의미한다고 이해될 수 있는데, 예를 들면, 메모리, 버스(buses)와 같은 미디어 통신의 수용량, 프로세서의 계산시간, 스윗칭 로직에 사용되는 특별한 응용장치 등을 들 수 있다.
본 발명의 의미에서 "발생 패턴"은 시간축에 따른 이벤트의 발생을 설명하는 시간의존적 발생 패턴을 의미한다고 이해될 수 있다.
본 발명의 의미에서 "추가 제어 플로우 그래프"는 "제어 플로우 그래프(control flow graph)"의 부분세트가 될 수 있다.
"코스트( costs)"는 계산 시간 또는 전력량 같은 분석이 요구되는 유형의 코스트값을 의미한다고 할 수 있다. 이것의 이용가능성은 단지 제한된 시간간격을 위해서만 제한된다.
이벤트 발생의 최대 횟수와 같이 어떤 결과를 위한 최소값(cost)을 정하는 분석은 동시에 이러한 결과를 위한 최소요구시간을 결정한다.
후술할 내용에 따르면, 첫 번째 구현은 청구항 제1항에 일치하는 발명과 제 2항 내지 제12항에 일치하는 구현에 의해 제공되는 해법을 나타낼 것이다.
이하에서는 계층적인 이벤트 흐름 (hierarchical event stream, HES)에 대해 기술한다.
이벤트 시퀀스는 그들의 이벤트밀도에 의한 이벤트의 발생패턴으로 기술된다. "이벤트 시퀀스 요소(event sequence element)"는 이러한 설명(description)의 부분적 요소이다.
이벤트의 발생패턴은 "계층적 이벤트 시퀀스 Θ(hierarchical event sequence Θ)"로 기술되며, "계층적 이벤트 시퀀스 요소의 세트"로 구성된다.
"계층적 이벤트 시퀀스 요소 ω(hierarchical event sequence element w)"는주기 p, 초기거리 a, 리미트 n, 회귀하는 임베디드 계층적 이벤트 시퀀스 Θ에 의해 특징지어진다. (ω=(p,a,n,Θ')).
리미트(limit) n은 임베디드 계층적 이벤트 시퀀스 Θ 의 주기 내에서 발생될 수 있는 이벤트 발생횟수의 최대치를 제한한다.
회귀적인 출발을 가능하게 하기 위해 계층적 이벤트 시퀀스요소 ω는 임베디드 계층적 이벤트 시퀀스 또는 단순한 이벤트를 포함할 수 있다. 이러한 경우, 단지 유효한 한가지 리미트만이 이용될 수 있다. 주기는 발생패턴의 고유한 발생을 나타내는 ∞값에 할당될 수 있다.
구체적인 계층적 이벤트 시퀀스에 있어, 왜냐하면 그것의 최대밀도의 이벤트 발생패턴은 항상 시작점에 있기 때문에, 이를 "계층적 이벤트 흐름(hierarchical event stream)" 이라 지칭된다.
이것은 리얼 타임 해석방법을 효율적이 되게 한다.
더 나아가, 예를 들면 Karsten Albers (Frank Slomka, An Event Stream driven Approximation for the Analysis of Real-Time System, IEEE Proceedings of the 16th Euromicro Conference on Real-Time Systems 2004 (ECRTS'04), Catania, Italy, p. 187-195 )에 의해 발표된 리얼 타임 해석방법은 적절하게 응용될 수 있다.
첫 번째 구현에서 리미트값은 이벤트 발생횟수로 나타내어진다. 그렇지만, 이것은 또한 리미트에 의한 최대 간격길이를 특별히 하는 것으로 생각될 수 있다.
첫 번째 구현에서, 한 주기의 이벤트 발생횟수는, 제한된 구간의 간격 안에서 끼워지거나 반복되는 이벤트 시퀀스에 의해 최대한으로 발생될 수 있는 것과 같이 계층적 이벤트 시퀀스 요소에 의해 생성된다.
계층적 이벤트 시퀀스의 이벤트의 발생패턴은 개개의 계층적 이벤트 시퀀스 요소의 발생패턴의 중첩에 의해 형성될 수 있다.
계층적 이벤트 시퀀스 요소의 발생패턴 속의 첫 번째 이벤트는 초기거리 a에 따르게 된다. 계층적 이벤트 시퀀스 요소의 발생패턴과 뒤따라오는 이벤트는 임베디드 계층적 이벤트 시퀀스 Θ의 발생패턴에 의해 설명되는데, 여기서 임베디드 계층적 이벤트 시퀀스는 초기거리 a에 의한 발생패턴의 기원에 비례하여 소멸된다
이러한 관계에서 계층적 이벤트 시퀀스 요소는 단지 임베디드 계층적 이벤트 시퀀스Θ의 첫 번째 n이벤트로 이루어지며, 이러한 것들은 앞으로 "이벤트 그룹(event group)"이라고 지칭키로 한다.
임베디드 계층적 이벤트 시퀀스Θ는 주기 p에 의해 반복되며, 그러므로 a+p, a+2p, a+3p등으로부터 시작된다. 계층적 이벤트 시퀀스 Θ는 그 자체로 계층적 이벤트 시퀀스에 반복적으로 끼워질 수 있다.
이 경우 전술한 방법이 반복적으로 이용되어져야 한다.
효율적인 분석의 수행을 가능하게 하기 위해, 중첩되지 않은, 즉 서로 분리된 조건의 개개의 이벤트 흐름 요소로부터 발생하는 이벤트 그룹 속의 계층적 이벤트 흐름 Θ을 배타적으로 사용하는 것이 유익하다.
다음의 HES는 예를 들며 분리조건 : ΘA={(100,0,7, ΘB),(100,30,5, ΘC)} 을 만족한다. 계층적 이벤트 흐름 ΘB는 ΘA 안에서 반복적으로 끼워지게 되고, ΘB 와 ΘC 는 다음과 같이 요구된다. ΘB ={(3,0,1,e) and ΘC ={(7,0,1,e),(7,3,1,e)}.
7개의 이벤트는 각각 HES ΘA의 첫 번째 요소 안의 이전 주기를 발생시키며 HES ΘA 의 두 번째 요소 안의 5번째 이벤트를 각각 발생시킨다. 이러한 이벤트들 사이의 거리와 생성될 수 있는 7번째와 5번째의 이벤트 사이의 간격은, 개개의 반복적인 임베디드 이벤트 흐름 ΘB and ΘC.에 의해서 결정된다.
이러한 방식으로 그 다음 이벤트는 세 개의 코스트값의 최대치(three cost units greater)가 있는 간격 속의 HES의 첫 번째 요소를 위해 각각 발생한다. 두 개의 이벤트의 최대치는, 첫 번째 이벤트가 0점에서 발생하고 이벤트가 3개의 주기를 가진 이후로, 3의 길이를 가지는 간격 안에서 발생할 수 있다.
3개의 이벤트의 최대치는 6구간의 하나의 간격 속에서 발생될 수 있고, 4개의 이벤트의 최대치는 9구간의 하나의 간격 속에서 발생될 수 있고, 5개의 이벤트의 최대치는 12구간의 하나의 간격 속에서 발생될 수 있다.
그러므로, 주기당 7개의 이벤트의 총 발생횟수에 대해, 18 코스트 유니트의 모든 간격의 최소치가 이러한 이벤트들이 일어날 수 있는 범위에서 도출된다.
두 번째 요소에 있어, 발생은 회귀적인 임베디드 이벤트 흐름 ΘC에 의해 규정된다. 이러한 관계에서, 처음으로, 두 개의 이벤트는 3 구간의 하나의 코스트 간격 속에서 발생하고, 세 번째 이벤트는 7 구간의 하나의 코스트 간격 속에서 발생하며, 네 번째 이벤트는 10 구간의 하나의 코스트 간격 속에서 발생하며, 다섯 번째 이벤트는 17 구간의 하나의 코스트 간격 속에서 발생한다.
ΘA 의 두 번째 요소의 하나의 주기 속에서 발생될 수 있는 이벤트 발생횟수의 모든 세트는 17구간의 하나의 코스트 간격을 생성시킬 수 있으므로 5개로 제한된다. 30의 초기거리는 ΘA 의 두 번째 요소에 할당되기 때문에, 이러한 요소의 첫 번째 주기의 이벤트들은 코스트 포인트가 30에서 46사이의 간격 속에서 생성된다.
발생패턴의 최대치에 있어서, ΘA 의 첫 번째 요소의 첫 번째 주기의 이벤트들은 코스트값 0에서 시작하여, 18 코스트 유니트의 길이의 간격 속에서 생성된다. 두 번째 주기의 이벤트들의 간격들은 [100,118] or [130,147]에서 생성된다.
이러한 간격들은 중첩되지 않는데, 이는 ΘA가 분리조건을 만족하기 때문이다. 분리 조건의 단순한 증명을 위해, 동일한 주기 (homogeneous HES)가 계층적 이벤트 흐름의 개개의 요소에 할당될 때 유익하다. 그렇지만 이것은 절대적으로 필요한 것이 아니고, 특별히 그 요소에 있어, 그것들에 의해 생성될 수 있는 모든 이벤트의 발생횟수는 적어도 부분적으로 제한된다.
분리조건의 소개는 간격의 길이에 의존하는, 발생패턴의 기원에서 시작되는 시간간격 I속에서 일어나는 이벤트 발생횟수의 단순하고도 효율적인 결정을 가능하게 한다. 예를 들면 이것은 하기의 공식에 의해 결정될 수 있다.
Figure 112009006710513-PCT00001
이 공식은 개개의 이벤트 시퀀스 요소를 독립적으로 평가하는데 쓰이는데 , 분리 조건 때문에, 단지 각 요소의 마지막 주기만이 보다 더 정확하게 분석될 수 있고, 따라서 반복적으로 평가되어져야 한다.
이벤트 발생횟수를 발생시키는 리미트(limit)는 이전 주기를 위한 개개의 베이시스(bases)에 수렴될 수도 있다. 공식에서 모드(mode)는 분할된 잔여부분을 결정하는 모듈로 작업(modulo operation)을 나타낸다.
분리조건이 항상 충족되지는 않기 때문에 이러한 설명의 이용은 항상 고려될 수 있다. 이것은 복수의 주기 이후로 더 많은 분석량을 창조하는데, 발생패턴이 중첩될 수 있는 요소를 위해서 독립적으로 분석되어야 한다.
설명형태는 간격 속에서 발생하는 이벤트의 최소 발생횟수를 나타내기 위한 미세한 조정과 함께 이용될 수 있다.
이 방법은 청구항 제13항 내지 제19항에서 기술하고 있다.
이것은 태스크로부터 도출되는 이벤트 세트의 정확한 조건을 가능하게 하고 독립적으로 각각의 허용되는 간격길이를 가능하게 한다. 이 방법은 태스크의 제어흐름의 설명과 태스크에 도달하기 위한 활성화로부터 나오는 태스크로부터 도출되는 이벤트들의 시간의존적 밀도의 결정을 가능하게 한다.
이러한 관계에서, "유출되는 이벤트(outgoing events)"는 다른 태스크의 활성화를 가능하게 하고, 메모리 와 버스(bus)같은 공급원에 접근을 가능하게 하거나, 시스템에 영향을 주거나 시스템환경에 영향을 주는 것이 가능하게 한다.
활성화와 이벤트들은 가급적이면 계층적 이벤트 시퀀스 모델의 도움으로 기술될 수 있다.
이 방법은 태스크의 내부적 제어 흐름으로부터 도출되는 계층적 이벤트 시퀀스의 조건과 이러한 태스크에 도달하기 위한 계층적 이벤트 시퀀스를 위해 제안된다.
이러한 관계에서 계층적 이벤트 시퀀스는 실행할 수 있는 이벤트들의 시간의존적 밀도를 기술한다.
본 발명에 의해 제공되는 방법에 의해, 정보는 태스크의 내부적 제어 흐름으로부터 도출되는 시간의존적 관계를 통해 추출된다. 이것은 태스크 안에서의 모든 실행경로를 통한 발생패턴의 최대치의 경우를 조건으로 요구하는 것을 가능하게 한다.
방법론과 이벤트-의존적 분석의 가능한 디자인 형태는 지금부터 상세히 설명한다.
태스크는 가지와 루프를 모두 포함하는 제어 플로우 그래프에 의해 모델링된다. 이러한 관계에서, 개개의 제어 플로우 그래프의 노드는 베이직 블록(basic block )을 나타낼 수 있다.
"베이직 블록(basic block)"은 연속적인 명령의 순서이고 단지 마지막 베이직블록에서 일어날수 있는 이벤트 세대(event generation)와 가지로 특징지어진다. 이벤트들은 어떤 현저한 베이직 블록에서 발생한다.
본 발명에 의해 제공되는 분석의 본질적인 이점은 한 번의 실행동안 다수의 이벤트를 발생시키는 태스크들의 존재이다.
이러한 이벤트들이 동일한 태스크의 활성화를 야기시킬 때 또는 이벤트들이 어떠한 위치이든 동일한 자원(resource)을 위해 상호간 경쟁을 하는 위치에 존재할 때 특별히 유익하다.
목표는 태스크의 제어 플로우 그래프로부터 도출되는 이러한 이벤트들 상호간의 실행 가능한 시간의존적 행위의 효율적인 결정이다. 이러한 관계에서 , 본 분석법은 다음의 단계를 포함한다.
태스크의 제어 플로우 그래프를 통해서 단계적 실행이 일어난다.
실행의 각 단계에서, 갱신은 이미 실행된 태스크의 부분 그래프와 ,더욱 상세히 기술하자면, 부가적인 이벤트 시퀀스들로부터 도출되는 이벤트 시퀀스로부터 수행된다.
이러한 작업은 획득할 수 있는 것으로 구성된 제어 플로우 그래프로부터 나오는 부분 그래프의 이벤트 시퀀스로부터 도출되는 제어 플로우 그래프의 이벤트 시퀀스의 유출에 의해 설명된다. 또한 특수한 경우는 하나의 노드로 이루어지는 단순한 부분 그래프를 위한 이벤트 시퀀스들이다.
이러한 정보와 작업으로부터, 어떠한 제어 플로우 그래프를 위한 유출되는 이벤트 시퀀스를 계산하는 것이 가능해진다.
만일 제어 흐름이 가지를 포함하고 있다면, 이들은 독립적으로 수행된다.
하나의 가지(branch)에서 , 개개의 가지를 위한 이벤트 시퀀스와 이벤스 시퀀스의 유출은 독립적으로 설명된다. 개개의 설명은 서로 다른 가지들이 하나로 집중될 때 서로 통합된다.
이 방법의 세부항목은 더욱 상세히 기술하기로 한다.
첫째로, 본 분석은 제어 흐름이 루프를 포함하지 않는 태스크를 위해 설명되어진다.
도2는 태스크 그래프를 통한 단계적 실행을 설명하고 있다. 여기에서 제어 플로우 그래프는 태스크의 제어 데이터 흐름을 나타낸다.
이것은 태스크의 베이직 블록(basic blocks)과 그들의 활성화 또는 소통관계로 이루어진다.
베이직 블록은 실행 부분을 포함하며, 그것은 단지 하나의 홀(whole)과 가지들(branches)과 다른 베이직블록의 활성화 속에서 활성화되거나, 또는 태스크들은 단지 베이직블록의 마지막 부분을 따르는 것으로 특징지어질 수 있다.
그러므로 태스크의 구체적인 실행은 개개의 베이직 블록의 활성화 관계에 따른 제어 플로우 그래프를 통해 결과가 산출된다.
실행은 태스크의 출발 노드(starting node)에서 시작된다. 이것은 태스크에 도달하는 이벤트에 의해 활성화된다. 실행의 각 단계에서 연속적인 노드는 이미 분석된 노드에 의해 고려되어진다. 가지에서, 서로 다른 가지들은 독립적으로 처리된다.
다음 단계의 다수의 노드를 포함하는 노드는 모든 다음 단계 노드가 처리되기 전에는 처리되지 않는다.
그러므로 제어 플로우 그래프는 실행되는 동안 단계적으로 재생된다.
각각의 실행단계 동안, 다음 노드는 이미 분석된 그래프 일부분에 합쳐진다. 이러한 재생은 방법의 실행동안 실행되어질 필요는 없으며, 단지 노드의 실행순서를 계산한다.
각각의 처리 단계에서 도출되는 이벤트 흐름은 이전 그래프의 일부분으로부터 규정된다.
예를 들면 계산시간의 형태, 이벤트가 발생하는지에 대한 정보 등 수행 값과 같은 노드 자체에 대한 정보와 이벤트 흐름은 이미 이용된 이전 노드를 결정한다. 다른 노드에 대한 정보 또는 현재까지 진행된 그래프의 일부분에 대한 정보 구조는 더 이상 관련이 없다.
본 방법은 다음과 같은 단계적인 처리과정을 위한 기본적 실행을 요구한다.
1. 현존하는 그래프의 일부에 노드를 연결하거나 (연결 작업)
2.그래프의 일부분에 두 개 또는 그 이상의 가지의 일부분을 통합한다. (단일화 작업)
이러한 케이스에서, 계산 방법은 지금부터 이미 형성된 그래프의 일부분을 위한 이전의 그래프의 일부분에 대한 유용한 정보로부터의 적절한 정보를 생성시키는데 필요하다.
여기에서 "정보(information)"는 그래프의 일부로부터 도출되는 이벤트 흐름의 최대치, 최소치와 그들의 계산을 위해 요구되는 이벤트 시퀀스를 의미하는 것으로 이해될 수 있다.
특별하게, 이벤트 시퀀스는 이벤트 시퀀스의 시작점, 이벤트 시퀀스의 종결점, 내부적 이벤트 시퀀스와 토털 이벤트 시퀀스를 뜻한다.토털 이벤트 시퀀스가 항상 필요한 것은 아니고, 토털 이벤트 시퀀스는 그들의 이벤트 시퀀스의 분석의 결과에 의해 정의된다.
"이벤트 시퀀스의 시작(start event sequence)"은 그래프 일부분의 첫 번째 노드의 활성화가 시작될 때의 그래프 일부분으로부터 이벤트 발생횟수를 발생시키는데 필요한 모든 가능한 이벤트 코스트를 말한다.
역으로 "이벤트 시퀀스의 종결(end event sequence)"은 어떤 이벤트 발생횟수가 발생 가능토록 하기 위해 계속적으로 요구되는 값인 일부 그래프의 마지막 노드의 종결을 추고하는 것을 말한다.
"내부적 이벤트 시퀀스(inner event sequence)"는 이런 이벤트 발생횟수를 발생시키는 일부 그래프를 통해서 코스트가 요구되는 모든 가능한 이벤트 발생횟수를 위한 최소값을 규정하는데 이용되며, 일부 그래프의 도출되는 이벤트 흐름에 일치한다.
"토털 이벤트 시퀀스(total event sequence)"는 시작 노드의 활성화로부터 종결 노드의 종결까지의 일부 그래프를 통한 모든 가능한 다수 이벤트의 최소치를 말한다.
이러한 관계에서, 단지 단조로운 값의 증가는 이벤트 발생횟수의 증가를 위한 것으로 고려되어야 한다.
만일 4개의 이벤트 세대의 값이, 예를 들면, 3개의 이벤트 세대를 위한 것보다 낮다면, 4개의 이벤트 값은 3개의 이벤트 세대를 위한 것으로 가정된다.
이러한 시퀀스는 예를 들면 이벤트 시퀀스의 형태에 의해 효율적으로 기술되고 계층적 이벤트 시퀀스 (HES)에 의해 유리하게 기술된다.
이러한 관계에서, 어떠한 이벤트도 발생시키지 않는 일부 그래프를 통한 포텐셜 경로 S의 값인 토털 이벤트 시퀀스(TS)에 있어서는, 이벤트 시퀀스에 부가하여 기억함이 적절하다. (TS=(a,Θ))
토털 이벤트 시퀀스는 루프 구조의 고려하는 동안 중요한 역할을 한다.
이러한 관계에서 루프 구동의 최대치와 최소치사이의 모든 가능한 발생횟수는 고려되어지고, 단지 실행 가능한 루프 구동의 최대치만을 의미하는 것은 아니다.
제어 플로우 그래프를 통해 고려되어야 하는 가장 작은 가능한 유닛은 단일 노드이다. 제어 플로우 그래프의 개개의 노드는 그 자체로 그래프로 고려된다. 이러한 노드는 시작점, 종결점, 내부적 이벤트 시퀀스와 토털 이벤트 시퀀스에 의해 특징지어진다.
이러한 관계에서, 이벤트 시퀀스의 두 개의 서로 다른 시작점은 노드가 이벤트를 생성하는지 아닌지에 의존하여 존재한다.
이벤트를 발생시키는 노드를 위한 이벤트 시퀀스의 시작은 다음과 같다.
StS = {(∞,k,1,e)}, ES = {(∞,0,1,e)}, IS = {(∞,0,1,e)}
and TS = (k,(∞,k,1,e)).
이러한 관계에서 StS는 이벤트시퀀스의 시작을 ES는 이벤트 시퀀스의 종결을, Is는 내부적 이벤트 시퀀스를, TS는 토털 이벤트 시퀀스를 나타낸다. 여기서 K값은 노드의 값이다. 이벤트 밀도의 최대치를 규정하기 위해, 노드의 최소 실행값이 여기에 요구된다.
Ts는 이벤트 세대와 이벤트 시퀀스를 갖지 않는 최소부분의 값으로부터 나오는 세트로 기술될 수 있다.
다음의 초기 이벤트 시퀀스는 이벤트를 발생시키지 않는 하나의 노드로 귀결된다. : StS={}, ES={}, IS={} and TS=(k,{}).
이것은 통상적인 응용 가능성을 방해하지 않고, 이벤트 세대는 단지 노드의 종결점에서 일어난다는 것을 기억해야 한다.
이러한 이벤트 시퀀스로부터 도출되는 복잡한 그래프를 위한 이벤트 시퀀스를 단계적으로 정하기 위해서는, 본 방법은 일부 그래프의 통일화 (통일화 작업)와 일부 그래프의 노드를 연결화하는 것이(연결화작업) 필요하다.
이제부터 어떻게 이벤트 흐름이 제어 플로우 그래프로부터 도출되는가를 나타내는 것은 배타적으로 전술한 이벤트 시퀀스와 두 가지의 방법과 함께 규정될 수 있다.
첫째로, 하나의 케이스는 태스크가 단지 이벤트에 의해 활성화 되어지는 경우를 고려할 수 있다.
모든 노드가 일부 그래프로 고려되어질 수 있다면, 이러한 방법(일)의 각 단계는 두 개의 일부 그래프를 포함하는 하나의 새로운 일부 그래프 속으로 두 개의 일부 그래프를 통일화 하는 것이다.
문제는 어떻게 도출되는 부분그래프의 이벤트 시퀀스를 부분 그래프의 이벤트 시퀀스로부터 계산할 수 있는 가의 문제를 줄이는 것이다.
개개의 부분그래프는 동일한 이벤트 발생횟수가 일어나는 제어 플로우 그래프를 통한 다른 경로를 포함할 수 있다.
부분 그래프의 통일화는 다음의 부가적인 경로를 이끌어낼 수 있다.
이러한 부가적인 경로들은 서로 다른 값을 이끌어 낼 수 있다.
통합된 부분 그래프의 이벤트 시퀀스는 부분 그래프의 최대값 또는 최소값과, 통일화로부터 산출되는 부가적인 경로를 모두 포함하여야 한다.
두 개의 부분 그래프 A와 B의 연결 또는 연쇄적 처리와 관련하여,부분 그래프 C를 도출하는 이벤트 시퀀스는 다음과 규정할 수 있다.
C의 이벤트 시퀀스의 시작은 B의 이벤트 시퀀스의 시작을 갖는 A의 토털 이벤트 시퀀스의 연결점을 갖는 A의 이벤트 시퀀스의 시작점의 통합으로부터 산출된다.
C의 이벤트 시퀀스의 종결점은, A의 이벤트 시퀀스의 종결점과 B의 토털 이벤트 시퀀스의 연결점을 갖는 B의 이벤트 시퀀스의 종결점의 통합에 의해 규정된다. 내부적 이벤트 시퀀스는 3개의 이벤트 시퀀스의 단계적 통합으로부터 산출된다.
이것은 한편으로는, 부분 그래프 A와 B의 내부적 이벤트 시퀀스이며, 다른 한편으로는 B의 이벤트 시퀀스의 시작점을 갖는 A의 이벤트 시퀀스의 종결점의 연결로부터 산출되는 이벤트 시퀀스이다.
C의 토털 이벤트 시퀀스는 단지 A와 B의 토털 이벤트 시퀀스의 연결에 불과하다.
부분 그래프의 통일화는 단지 다른 부분 그래프의 각각 일치하는 이벤트 시퀀스를 갖는 하나의 부분 그래프의 개개의 이벤트 시퀀스의 통일화에 불과하다.
그러므로, 모든 시작점과 종결점, 내부적 이벤트 시퀀스와 토털 이벤트 시퀀스는 각각 서로 통합된다. 모든 그래프의 도출되는 내부적 이벤트 시퀀스는 모든 그래프의 도출되는 이벤트 시퀀스와 일치한다.
효율적인 작업의 수행을 위해서는 계층적 이벤트 시퀀스가 적어도 큰 범위에서 분리조건을 만족시키는 때가 유리하다.
두 개 또는 그 이상의 계층적 이벤트 시퀀스의 통합작업을 위한 실행 가능한, 구체적인, 효율적인 구현은 지금부터 상세히 기술될 것이다. 이것은 계층적 이벤트 흐름에 의존하여 설명되어질 것이고, 그러나 또한 단순한 이벤트 흐름으로 단순화한 형태에 대해서도 응용될 수 있다.
더 나아가 , 단지 최대 이벤트 밀도를 위한 이벤트 시퀀스는 고려되어질 것이고, 하기 설명은 모든 이벤트들은 이러한 발생패턴의 최대치에 일치하여 일어난다는 가정하에 설명된다. 그렇지만, 이것은 제한이 없다.
실제 시스템에서, 만일 이벤트 시퀀스에 의해 지정되는 이벤트 밀도의 최대치 또는 최소치가 전보다 과도하지 않다면, 이벤트는 보다 적은 시간의존적 밀도와 더불어 발생한다.
도출되는 통합된 이벤트 시퀀스는 통합작업에 도달한 이벤트 시퀀스의 발생 가능한 각각의 이벤트 발생횟수의 최대치의 모든 간격 값을 포함한다.
실행 가능한 최적의 이벤트 시퀀스를 위한 작업수행은 유사하다.
도달하는 이벤트 시퀀스가 이벤트 흐름 특성(property)를 수행하는 경우, 통합작업의 구현으로부터 도출되는 이벤트 시퀀스는 또한 이벤트 흐름 특성(property)를 수행한다.
그러므로, 통합작업은 이러한 특성을 부여받는다.
두 개의 이벤트 시퀀스의 통합은 부분지역을 지배하는 개개의 이벤트 시퀀스의 단계적 규정에 의해 제안된 구현 속에서 수행된다.
하나의 이벤트 시퀀스는 그것이 동일한 간격 안에서 보다 더 많은 이벤트를 발생시킬 때 또 다른 이벤트 시퀀스를 지배한다.
만일 이것이 동일한 수량의 이벤트를 발생시킨다면, 두 개의 이벤트 시퀀스 중 하나는 지배자로 고려될 수 있다.
발생 가능한 이벤트 발생횟수의 완료된 범위는 하나의 도달하는 이벤트 시퀀스가 완전히 지배하는 개개의 부분 지역으로 나뉘어진다.
이러한 개개의 영역은 "지배영역(dominating sections)"이라 부르기로 한다.
지배하고 있는 또한 도달한 이벤트 시퀀스로부터의 적절한 요소는 지금부터 각각의 지배영역을 위한 도출되는 이벤트 시퀀스로 전이될 수 있다.
이러한 관계에서 ,특별히 시작 거리와 생성 가능한 다수 이벤트의 최대치와 같은 매개변수는, 이벤트가 단지 지배영역 안에서 일어날 수 있는 이러한 요소로부터 발생될 수 있도록 하기 위해 유리하게 조정되어야 한다.
도 3은 지배적 시퀀스의 효율적인 계산의 위한 처리과정을 설명하고 있다.
첫째로, 단순한 설명의 목적을 위해서는, 단지 각각의 단순한 이벤트 시퀀스 요소가 고려될 수 있다. 이러한 것들은 하나의 주기와 하나의 초기거리에 의해 각각 결정될 수 있다.
어떠한 이벤트 발생횟수(이벤트 기능)가 일어나는 요소를 위한 간격의 최대치 또는 최소치를 지정하는 기능은 선형방정식에 의해 규정될 수 있다. 라인의 시작값은 주기에 의해 지정되는 초기거리와 기울기이다.
서로 다른 이벤트 시퀀스의 두 개의 서로 다른 이벤트 시퀀스 요소의 비교는 그러므로 두 라인의 최소 증가분을 감소시킨다.
이러한 관계에서 여기에 두 개의 가능한 예가 있다. 라인이 교차하거나 그렇지 않는 경우이다.
만일 그들이 교차하지 않는다면, 하나의 라인은 모든 생성 가능한 이벤트 발생횟수에 걸쳐 최소치를 창출하고, 그러므로 이러한 라인을 규정하는 이벤트 시퀀스 요소는 생성 가능한 모든 다수 이벤트의 다른 요소를 지배한다.
이러한 케이스에서 도출되는 이벤트 시퀀스는 단지 이러한 지배하는 요소에 의해 생성된다.
만일 라인이 교차한다면, 지배는 이러한 교차에 의해 변화한다. 도출되는 이벤트 시퀀스는, 그러면 적어도 두 개의 요소로부터 생성된다. 이러한 것들은 초기거리의 조절에 의한 개개의 지배영역에 의해 조정되는 부분적 영역에서의 지배요소와 한 주기 안에서 생성되는 다수 이벤트의 최대치로부터 산출된다.
첫 번째 요소는 다수 이벤트의 최대치에 관해 리미트로 주어지는데, 이것은 단지 이벤트가 교차점에 종속하여 생성되도록 발생될 수 있다.
두 번째 요소는 단지 교차점을 향해 또는 그 아래의 세대만을 허용하는 초기거리를 제공한다. 두 번째 요소의 리미트는 생성될 수 있는 모든 다수 이벤트가 과도하게 생성되지 않도록 하는 방법으로 조정될 수 있다. 이것 때문에 분리조건은 도출되는 이벤트 시퀀스 내에서 유지된다.
하나의 교차점은 하나의 요소가 다른 요소보다는 큰 주기를 가지나, 작은 초기거리를 가질 때 생성된다.
이벤트 시퀀스가 하나의 요소보다 많은 요소로 이루어질 때, 적절한 분리된 라인들이 개개의 요소로부터 도출되는 분리영역을 위해 각각 산출된다.
이것은 다수의 시간을 변화시키는 지배로 기인할 수 있다.
작업에서 제안된 구현에 의할 때, 분리된 이벤트 시퀀스 요소는 각각의 지배영역을 위한 도출되는 이벤트 시퀀스 안에 삽입된다.
그렇지만, 이것들 중 일부는 정확한 또는 대략적인 압축(요약) 방법으로 다시 결합될 수 있다.
예를 들면, 인접한 요소가 동일한 주기를 가졌을 때, 이것들은 이 주기를 가지는 하나의 요소에 결합될 수 있다.
이러한 개개 영역에서의 토털 이벤트 시퀀스 요소는 항상 , 각기 동일한 다수 이벤트를 도출할 수 있는 이벤트 시퀀스 요소 상호간 비교된다.
이벤트 시퀀스 요소가 주기적으로 반복될 때, 이것은 영역에서 계속적으로 반복되는 변화를 기인하게 한다.
예를 들면 다음의 단순한 이벤트 시퀀스가 이것을 가리킨다.
Θ1={(∞,0,200,e)},Θ2={(∞,0,100,e)}, Θ3={(25,0,1,e),(25,1,1,e)} 및 Θ4={(12,0,1,e)}
이러한 예에서, 지배의 제한에 대한 3번째 이벤트의 시작에서, 지배는 Θ3의 요소와 Θ3 의 요소 사이에서 계속적으로 변화한다.
좀 더 명확한 지배를 찾기 위해서, 동일한 다수 이벤트를 도출하는 이러한 요소들은 상호간 필적한다.
게다가 영향 받은 이벤트 시퀀스의 영향 받은 요소들은 상호간을 조정한다.
이것은 예를 들면, 토털 이벤트 시퀀스 속의 요소의 개수를 취함으로써 행하여질 수 있고, 그들에게 개개의 이벤트 시퀀스의 요소의 개수의 가장 적은 공통의 요소의 세트를 공급함으로써 행하여질 수 있다.
하나의 이벤트 시퀀스의 요소의 개수는 주기의 증가에 의해 증가하며, 그리고 보상을 위한 잃어버린 이벤트는 부가적인 요소에 의해 생성된다.
Θ4와 관련하여, 요소의 개수는 주기를 24로 2배로 하고, 부가적인 요소 (24, 12, 1, e)를 삽입함으로써 두 배로 증가된다.
이러한 이벤트 시퀀스를 위한 이벤트는 하나의 요소가 아닌 두 개의 요소에 의해 교대로 생성된다.
서로 다른 이벤트 시퀀스의 영향 받은 요소의 개수에 공통의 지배자가 주어질 때, 동일한 이벤트 발생횟수를 도출하는 각각의 일치하는 요소들은 직접적으로 상호간에 비교될 수 있다.
개개의 이벤트 시퀀스 요소의 주기는 여기에 관련되지 않는다.
예를 들면, 상기한 예에서, 각각의 첫 번째 요소는 이벤트 발생횟수의 홀수인 1,3,5,7 ... 등을 위한 간격을 규정하며, 두 번째 요소는 이벤트 발생횟수의 짝수인 2,4,6,8 ... 등을 위한 간격을 규정한다.
이것은 적어도 요소의 개수의 조정 후와 생성되는 초기거리에 의한 요소의 어떤 분류 후에 적용된다.
이러한 지배간격은 지금부터 각각의 이러한 요소를 독립적으로 규정하며, 적절한 이벤트 시퀀스 요소는 도출되는 이벤트 시퀀스 내에 삽입될 수 있다.
다수의 회귀하는 단계에서 보다 더 복잡한 이벤트 시퀀스와 관련하여, 예를 들면, 각각의 이벤트 시퀀스는 동일한 구조로 확장될 것과, 그리고 나서 지배법칙을 통해 상호간 단계적으로 통합될 것이 제안된다.
다음에 소개된 예인 이벤트 시퀀스인 Θ3 및 Θ4 은 확장 후에는 다음과 같이 될 것이다.
Θ3={(25,0,1,e),(25,1,1,e)} 및 Θ4={(24,0,1,e),(24,12,1,e)}.
도 4는 이러한 두 개의 이벤트 시퀀스의 지배 그래프를 보여준다. 도출되는 이벤트 시퀀스는 다음과 같이 기술할 수 있다.
Θr={(∞,0,50,{(24,0,1,e)}),(∞,0,11,{(25,0,1,e)}),(∞,264,39,{(24,12,1,e)}), (∞,188,50,Θ3)}.
단순화 이후, 도출되는 이벤트 흐름은 다음과 같이 기술된다.
Θr={(∞,0,22,{(24,0,1,e),(25,1,1,e}),∞,264,78,{(12,0,1,e)}),(∞,1188,100,Θ3)}
라인영역은 모든 이벤트 발생횟수의 제한에 의해 중지될 수 있다.
이런 경우, 남아있는 하나의 라인이 그 이후를 지배한다. 예를 들면, 이것은 100 이벤트에서 시작하는 이벤트의 모든 발생횟수인 경우이다.
첫 번째 100이벤트의 영역에서, Θ3 의 첫 번째 요소는 이벤트의 홀수 발생횟수를 지배하고, Θ4 의 두 번째 요소는 이벤트의 짝수 발생횟수를 지배한다.
11이벤트 후에, 지배는 Θ3의 두 번째 요소에서 변화한다. 100이벤트 이후에 단지 Θ3 의 요소만이 계속 지배한다.
모범적인 구현은 연결작업을 위해 나타내진다. 이것은 주로 내부적 이벤트 시퀀스를 규정하기 위해 필요하다.
통합작업을 위한 구현에 있어, 관련된 이벤트 시퀀스의 요소들 중 하나는 독립적으로 다른 하나와 비교된다.
연결작업에 있어, 하나의 이벤트 시퀀스의 요소는 개개의 서로 다른 이벤트 시퀀스의 요소에 의해 보충된다.
이것은 개개의 이벤트 발생횟수를 위한 더욱 많은 조합 가능성을 이끌어 낸다. 많은 이벤트 발생횟수들은, 개개의 다른 이벤트 시퀀스가 일치하는 요소와 더불어 적절히 보충될 때, 관련된 이벤트 시퀀스의 각각의 요소에 의해 생성된다.
연결작업에 있어, 도출되는 이벤트 시퀀스는 오로지 가능한 이벤트 간격 속의 이벤트 시퀀스 사이의 교차점을 항상 포함하는 간격을 포함한다.
각기 다른 요소의 조합은 서로 다른 이벤트 발생횟수의 최소치를 도출한다.
각각의 조합에 있어, 두 개의 관련된 요소의 초기거리의 합으로부터 도출되는 초기거리가 존재한다.
이러한 조합은 두 방향의 최대치 속에서 주기적으로 계속될 수 있다.
통합작업에 일치하기 위해, 단지 조합들은 조합이 계속되는 동안 동일한 이벤트 발생횟수를 이끄는 또 다른 하나와 비교된다.
가능한 지배영역은 이것으로부터 다시 도출된다.
이러한 조합들은 그들의 초기거리와 주기의 두 가지 차원에서 상호간에 비교된다.
만일 하나의 조합이 주기적으로 두 가지 방향으로 계속된다면, 조합은 이러한 비교 속에서 두 배로 포함된다. 조합의 다수가 두 가지 값에서 동일하다면, 그들 중 어떠한 하나도 선택될 수 있다.
다른 조합들보다 기껏해야 동일하게 좋거나 나쁜 기준(특징)을 모두 갖는 그러한 조합은 도출되는 이벤트 시퀀스와 관련이 없다.
이러한 관계에서, 보다 짧은 초기거리(initial distance)를 갖는 조합은 보다 긴 초기거리를 갖는 조합보다 낫고, 짧은 주기를 갖는 조합은 긴 주기를 갖는 조합보다 낫다.
각각의 조합은 조합안의 초기거리가 항상 같다는 전제하에, 짧은 주기를 갖는 이벤트 시퀀스 요소와 함께 계속된다.
여분의 조합과 관련하여, 지배영역과 교차점은, 통합작업을 통해서, 선형방정식과 그들의 초기거리와 리미트를 규정짓는 도출되는 이벤트 시퀀스 요소로부터 다시 계산된다.
연결작업의 두드러진 특징은, 이벤트 발생횟수의 리미트가 이벤트 시퀀스 요소에 도달될 때, 조합이 조합의 리미트가 도달하기 전에 이벤트 시퀀스 요소와 일치하여 계속된다는 점이다.
이와 대조적으로, 두 개의 이벤트 시퀀스 요소의 가능한 이벤트의 최대치의 한 부분에 대한 중간의 조합은 포함되며, 관련이 없다.
예를 들면, 하나의 이벤트 시퀀스가 5개 이벤트의 최대치를 생성할 때와 이벤트 시퀀스가 8개의 이벤트의 최대치를 생성하여 조합될 때 , 두 개의 이벤트 시퀀스의 조합인 2,3,4,5,6의 발생횟수는 두 개의 시퀀스 중 하나는 오로지 하나의 이벤트를 생성하는 것으로 고려될 수 있다.
다른 모든 조합에 있어, 하나의 조합을 예를 들면, 두 개의 이벤트를 생성하는 하나의 이벤트 시퀀스와 3개의 이벤트를 생성하는 하나의 이벤트 시퀀스 (중간적 조합) 는, 동일하거나 보다 큰 사이즈의 간격을 도출하고, 따라서 발생패턴의 최대치의 생성과 관련이 없다.
가장 짧은 주기의 방향으로 계속되는 것은 동일한 초기거리기 사용된 이후로 동일한 발생횟수의 이벤트를 위한 보다 짧은 간격을 이끌어낸다.
이러한 작업은 앞으로 도 4에서 나타낸 것과 같은 예에 기초하여 논의될 것이다.
Θ1={(∞,0,200,{(25,0,1,e),(25,1,1,e})
및 Θ2={(∞,0,100,{(24,7,1,e),(24,19,1,e}).
Θ1은 마지막 이벤트 시퀀스이고 Θ2 은 시작되는 이벤트 시퀀스이다.
ω1,1 을 Θ1의 첫 번째 이벤트 시퀀스 요소라고 하고, ω1,2 을 Θ1의 두 번째 이벤트 시퀀스 요소라 하고, ω2,1 을 Θ2 의 첫 번째 이벤트 시퀀스 요소라 하고, ω2,2 을 Θ2의 두 번째 이벤트 시퀀스 요소라 하자.
두 개의 이벤트 시퀀스의 연결에 있어, 두 개의 이벤트 결과를 위한 초기거리는 이벤트 시퀀스의 초기 거리들의 합산에 의해 계산되는 거리로 귀결된다.
각각의 관련되는 이벤트 시퀀스에 대해, 이것은 그들의 토털 이벤트 시퀀스 요소의 가장 짧은 초기거리다.
이와 같은 예에서, 이것이 7이라 한다면, 0의 초기거리를 가지는 이벤트 시퀀스 요소 ω1,1 와 7의 초기거리를 가지는 ω2,1로부터 산출된다.
만일 이벤트 시퀀스 요소가 짧아진다면, 각각의 첫 번째 요소는 항상 두 개의 이벤트의 이 거리에서 생성된다.
이러한 결과는 연결되는 도출되는 이벤트 시퀀스의 비주기적 시작부분으로서 이벤트 시퀀스 요소인 (∞,0,1,e) 및 (∞,7,1,e) 를 이끌어낸다.
3,5,7,9,...등을 가지는 이벤트 발생횟수는 이벤트 시퀀스 요소 ω1,2 및 ω2,1 의 조합에 의하거나 또는 요소 ω1,1 및 ω2,2 의 조합에 의해 생성될 수 있다.
두 개의 조합이 두 개의 각각의 관련된 이벤트 시퀀스 요소에 의해 주기적으로 계속된 이후로, 3,5,7,9의 네 개의 가능성 있는 모든 이벤트들이 결과로서 생성된다.
이러한 가능성들은 초기거리, 주기, 이미 결정된 지배 조합과 같은 매개변수를 통해서 상호간 비교된다.
이러한 예에서, 가능성들은 요소 ω2,1 에 의해 주기적으로 계속되는 이벤트 시퀀스 요소 ω1,2 및 ω2,1 의 조합이다. 가능성의 리미트(limit)가 도달하기 전이라는 것은 가능성의 리미트가 또한 도달하기 전에 또 다른 요소에 의해 조합은 계속된다는 것을 의미한다.
4,6,8,10...등의 이벤트 발생횟수는 이벤트 시퀀스 요소 ω1,2 및 ω2,2 의 조합에 의해 도달하거나 또는 요소 ω1,1 및 ω2,1 의 요소의 조합에 의해 도달된다.
두 번째 조합에 있어, 주기는 적절한 이벤트 발생횟수를 찾기 위해서 조합의 초기거리를 포함한다. 이러한 주기의 포함으로 인해 적절한 리미트는 다음단계의 분석을 위한 것에 의해 감소되어져야 한다.
따라서, 리미트 없이 아래와 같은 가능한 조합의 요소가 도출된다.
(25, 20, 1, e), (24, 20, 1, e), (25, 25, 1, e) 및 (24, 24, 1, e). 두 번째 조합은 첫 번째를 지배한다.
동일한 24 주기는 하나의 계층적 이벤트 시퀀스 요소 속의 이러한 요소들의 조합을 허용하는 요소를 처음으로 지배하는 결과가 된다.
이러한 원리에 의해, 이와 같은 조합은 하나의 요소가 다른 요소를 구동하게 되는 위치에 관한 서로 다른 주기를 위해 가능하고, 따라서 이벤트를 발생시키는 요소가 있는 시퀀스는 바뀌게 된다.
그러므로 이벤트 시퀀스 요소 (24, 8, 1, e) 와 (24, 20, 1, e) 는 도출되는 이벤트 시퀀스를 위한 리미트의 고려 없이 산출된다.
이것들은 동등한 요소인 (12, 8, 1, e). 속에서 조합될 수 있다.
리미트의 포함과 개개의 서로 다른 부분적 요소와 그것의 리미트의 고려에 의한 조합의 주기적 계속의 가능성으로 결과됨을 전제할 때, 반복되는 이벤트 시퀀스 {(∞,0,1,e), (∞,7,1,e), (∞,8,98,ΘA), (∞,1220,200,ΘB)} 는 결과로서 산출되는 이벤트 시퀀스 ΘA ={(12,0,1,e)} 와 ΘB={(25,0,1,e),(25,1,1,e)} 에 삽입된다.
위의 예에서 이미 보았듯이, 기재의 복잡성을 산출하는 유출되는 이벤트 시퀀스의 효율적인 결정을 가능하게 하는 연결작업의 디자인 형태는 리미트 안에서 지속되며, 그러므로 앞으로의 효율적인 처리과정을 위해 사용되어 질 수 있다.
루프의 조정의 가능성은 그것들을 뽑아내는 것과 그리고 나서 소개된 방법에 의한 그래프의 결과를 분석하는 것이다.
이러한 관계에서, 부분 그래프와 그것의 이벤트 시퀀스를 향한 그것을 감소시키기 위해 미리 루프의 몸통을 분석하는 것이 가능하다. 이것들을 분석하는 것이 다른 것들과 연결시키기 위해 계속되는 동안,그런 점에서 반복되는 발생횟수의 최대치 아래에서의 루프의 가능한 붕괴는 또한 고려되어야 한다.
정규적인 구조를 위해, 루프 해석은 구조의 정규성과 이벤트의 발생패턴을 이용하는 것에 의한 이미 소개된 방법을 이용하여 보다 적은 노력으로 수행될 수 있다.
본 방법은 이벤트 시퀀스들의 최대치의 규정을 위해 기술되었다. 그렇지만, 이것은 이벤트 시퀀스들의 최소치 또는 평균의 규정을 위해 이에 상응하여 이용될 수도 있다.
태스크가 다수의 이벤트에 의해 활성화될 때, 예를 들면 이것은 태스크의 제어 플로우 그래프의 계속적인 연결에 의해 그 자체로 모델링 될 수 있다. 이런 관계에서 최소 분리 거리 와 시간 리미트는 포함될 수 있고, 태스크라 불리우는 이벤트 시퀀스는 루프 구축 속으로 전이될 수 있다. 이러한 방법은 컴퓨터와 컴퓨터 프로그램과 함께 수행될 수 있다.
도 1은 태스크(task)의 한가지 모델인 상호간 의사소통의 예이다.
도 2는 태스크 그래프를 통한 단계적 실행을 설명이다. 여기에서 제어 플로우 그래프는 태스크의 제어 데이터 흐름을 나타낸다.
도 3은 지배적 시퀀스의 효율적인 계산의 위한 처리과정의 설명이다.
도 4는 이벤트 시퀀스인 Θ3 및 Θ4 은 확장 후, 이러한 두 개의 이벤트 시퀀스의 지배 그래프이다.
본 발명은 시스템, 특별히 컴퓨터 시스템의 리얼 타임 용량을 테스트하기 위한 방법과 관련이 있다. 이러한 리얼 타임 시스템의 정확한 기능과 관련하여, 정확성 뿐만 아니라 계산 결과의 시기 적절한 결정이 요구되는데, 본 발명과 같은 임베디드 리얼 타임 시스템의 시간의존적 행위의 분석은 임베디드 리얼 타임 시스템의 개발을 자동화하기 위해 요구된다.
상기 시스템의 일례로서, 에어벡 제어(air-bag control) 또는 모터 제어(motor control) 분야등을 들 수 있는데, 본 발명은 이와 같은 산업 분야에 이용 될 수 있다.

Claims (20)

  1. 서로 다른 태스크들(different tasks) τ 의 하나의 세트가 제공되고,
    상기 태스크들 τn 은 적어도 시스템에 의해 부분적이고 반복적으로 요청되어 처리되거나,
    혹은 요청에 의해 상기 시스템의 부분적인 구성에 대한 이벤트(event)를 반복적으로 발생하고,
    분석하는 동안 상기 태스크 또는 상기 태스크에 의해 발생된 이벤트를 요청하는,
    이벤트의 발생 패턴(occurrence pattern)이 적어도 부분적으로 이벤트 밀도(event density)의 설명(description)에 의해 나타나고,
    이것은 상기 이벤트 발생 패턴의 일부를 각각 설명하는 한 세트의 요소로 구성되며,
    그것에 의해 나타나는 상기 발생 패턴의 설명을 위한 적어도 두 가지 요소는 추가 세트의 추가 요소를 구성하고,
    상기 추가 세트와 그것에 의해 설명되는 추가 발생 패턴은 서로 상이한 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  2. 제 1항에 있어서,
    상기 요소는 적어도 거리 a 및 리미트(limit) n에 의해 적어도 부분적으로 특징지어지는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  3. 제 2항에 있어서,
    상기 요소는 주기 p로 부분적으로 표시되는 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  4. 제 3항에 있어서,
    상기 리미트는 상기 요소의 일 주기 내에 발생 패턴에서 일어나는 이벤트의 최대수인 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  5. 제 1항 내지 제 4항 중 어느 하나의 항에 있어서,
    상기 리미트는 이벤트 수인 것을 특징으로 하는 시스템의 리얼 타임 분석 방 법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  6. 제 1항 내지 제 4항 중 어느 하나의 항에 있어서,
    상기 리미트는 간격 길이(interval length)인 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  7. 제 1항 내지 제 6항 중 어느 하나의 항에 있어서,
    적어도 하나의 요소는 초기 거리(Initial distance), 리미트 및 주기인 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  8. 제 1항 내지 제 7항 중 어느 하나의 항에 있어서,
    일부 요소가 하나의 이벤트를 나타내는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  9. 제 1항 내지 제 8항 중 어느 하나의 항에 있어서,
    동일한 요소들은 복수의 계층적 단계에서 일 요소 ω에 의해 나타내어지는 발생 패턴을 설명하는데 이용되는 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  10. 제 1항 내지 제 9항 중 어느 하나의 항에 있어서,
    개별 요소들에 의해 발생되는 전체 발생 패턴의 일부분들은 거의 중첩되지 않는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  11. 제 1항 내지 제 10항 중 어느 하나의 항에 있어서,
    개별 요소들에 의해 발생되는 발생 패턴의 일부분들은 중첩되지 않는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  12. 제 12항에 있어서,
    요소들의 세트 θ 에 의해 정의되는 간격 I 구간 동안 일어나는 이벤트 수는 하기 식으로 결정되는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
    Figure 112009006710513-PCT00002
  13. 서로 다른 태스크들 τ의 하나의 세트가 제공되고,
    상기 태스크들 τn 은 적어도 부분적으로 반복적으로 시스템에 의해 요청되어 처리되거나,
    혹은 요청에 의해 상기 시스템의 부분 구성에 대한 이벤트를 반복적으로 발생하고,
    적어도 하나의 태스크는 그 활성화 동안 복수의 이벤트를 발생하고,
    상기 태스크의 내부 행위는 제어 플로우 그래프(control flow graph)에 의해 나타내어지는 제어 흐름으로 정의되고,
    상기 제어 플로우 그래프의 복수의 관련 부분 그래프 또는 노드를 위해 결정되는 이벤트 발생 패턴으로부터, 추가 발생 패턴이 이들 부분 그래프와 노드를 포함하는 추가 제어 플로우 그래프를 위해 결정되며,
    이러한 결정을 위해 적어도 부분적으로 상기 부분 그래프의 이벤트의 부가적인 발생 패턴이 사용되고,
    이러한 부가적인 발생 패턴은 상기 부분 그래프의 소정의 플로우 경로 지점(flow path points)에 시간 기반 의존적인 이벤트의 가능한 발생 패턴을 나타내는 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  14. 제 13항에 있어서,
    상기 고려되어지는 이벤트의 부가적인 발생 패턴 중 하나는,
    적시에 회귀하는 부분 그래프의 종결 노드(end node)를 관통하는 것으로 규정되는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  15. 제 13항 또는 제 14항에 있어서,
    상기 고려되어지는 이벤트의 부가적인 발생 패턴 중 하나는,
    부분 그래프의 출발 노드(starting node)를 관통하는 것으로 규정되는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  16. 제 13항 내지 제 15항 중 어느 하나의 항에 있어서,
    상기 고려되어지는 발생 패턴 중 하나는,
    가능한 간격 길이의 경우 상기 길이의 간격 동안 상기 부분 그래프 내에서 발생하는 이벤트의 최대수를 나타내는 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법
  17. 제 13항 내지 제 16항 중 어느 하나의 항에 있어서,
    상기 고려되어지는 발생 패턴 중 하나는, 가능한 간격 길이의 경우 상기 길이의 간격 동안 상기 부분 그래프 내에서 발생하는 이벤트의 최대수를 나타내고,
    출발 노드의 플로우 경로 지점 및 종결 노드의 플로우 경로 지점은 상기 간격 이내에 존재하는 것을 특징으로 하는 상기 고려되어지는 발생 패턴 중 하나는,
    가능한 간격 길이의 경우 상기 길이의 간격 동안 상기 부분 그래프 내에서 발생하는 이벤트의 최대수를 나타내는 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  18. 제 17항에 있어서,
    적어도 모든 발생 패턴이 제 14항 내지 제 17항에 따른 하나의 부분 그래프에 대한 하나의 단계로 규정되는 것을 특징으로 하는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  19. 제 13항 내지 제 18항 중 어느 하나의 항에 있어서,
    상기 발생 패턴은 제 1항 내지 제 12항 중 어느 하나의 항에서 제안된 설명 가능성(description possibilities)에 의해 적어도 부분적으로 정의되는 시스템의 리얼 타임 분석 방법, 특히 컴퓨터 시스템의 리얼 타임 분석 방법.
  20. 제 1항 내지 제 19항 주 어느 하나의 항에 따른 방법을 수행하기 위하여,
    프로그램 코딩 수단을 가지고 복합 시스템의 시간 행동(time behavior)을 분석하는 컴퓨터 프로그래밍 장치.
KR1020097002242A 2006-07-03 2007-06-28 시스템의 리얼 타임 용량을 테스트하기 위한 방법 KR20090040312A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102006031013.6 2006-07-03
DE102006031013 2006-07-03

Publications (1)

Publication Number Publication Date
KR20090040312A true KR20090040312A (ko) 2009-04-23

Family

ID=38704666

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097002242A KR20090040312A (ko) 2006-07-03 2007-06-28 시스템의 리얼 타임 용량을 테스트하기 위한 방법

Country Status (7)

Country Link
US (1) US8306784B2 (ko)
EP (2) EP2044541A2 (ko)
JP (1) JP2009541876A (ko)
KR (1) KR20090040312A (ko)
CA (1) CA2656673C (ko)
IL (1) IL196155A0 (ko)
WO (1) WO2008003427A2 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110124309A (ko) 2009-02-16 2011-11-16 인크론 지엠비에이치 시스템의 실시간 성능을 분석하기 위한 방법
GB0912507D0 (en) * 2009-07-17 2009-08-26 Skype Ltd Reducing processing resources incurred by a user interface
JP2011138194A (ja) * 2009-12-25 2011-07-14 Sony Corp 情報処理装置、情報処理方法およびプログラム
EP2354949A1 (de) 2010-01-29 2011-08-10 Inchron GmbH Verfahren zur Analyse des zeitlichen Verhaltens des Datenflusses von verteilten, eingebetteten Systemen
US8595750B2 (en) * 2010-11-30 2013-11-26 Microsoft Corporation Adaptive tree structure for visualizing data
US9477537B2 (en) 2010-12-13 2016-10-25 Microsoft Technology Licensing, Llc Reactive coincidence
CN107391715A (zh) * 2017-07-31 2017-11-24 山东科技大学 一种自由单循环结构的过程挖掘方法
BR112022026674A2 (pt) 2020-07-03 2023-01-24 Woodwelding Ag Fabricação de um conjunto de um primeiro e de um segundo objeto
US11635949B2 (en) * 2021-12-17 2023-04-25 Intel Corporation Methods, systems, articles of manufacture and apparatus to identify code semantics

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223188B1 (en) * 1996-04-10 2001-04-24 Sun Microsystems, Inc. Presentation of link information as an aid to hypermedia navigation
JP3457520B2 (ja) * 1997-09-05 2003-10-20 Necエレクトロニクス株式会社 リアルタイムos上のタスク実行制御方式
US6397371B1 (en) * 2000-04-20 2002-05-28 Cadence Design Systems, Inc. Procedure for worst-case analysis of discrete systems
DE102004053979A1 (de) * 2004-05-11 2005-12-08 Inchron Gmbh Verfahren zur Prüfung der Echtzeitfähigkeit eines Systems

Also Published As

Publication number Publication date
CA2656673A1 (en) 2008-01-10
WO2008003427A2 (de) 2008-01-10
US8306784B2 (en) 2012-11-06
WO2008003427A3 (de) 2008-06-19
JP2009541876A (ja) 2009-11-26
EP2044541A2 (de) 2009-04-08
EP2306349A1 (de) 2011-04-06
IL196155A0 (en) 2009-09-22
CA2656673C (en) 2016-02-23
US20100017168A1 (en) 2010-01-21

Similar Documents

Publication Publication Date Title
KR20090040312A (ko) 시스템의 리얼 타임 용량을 테스트하기 위한 방법
Ciardo et al. SPNP: Stochastic Petri Net Package.
Peng et al. Modeling of concurrent task execution in a distributed system for real-time control
Weijters et al. Rediscovering workflow models from event-based data
US7254646B2 (en) Analysis of causal relations between intercommunicating nodes
JP5404060B2 (ja) 時間制御される分散型コンピュータシステムのための最適化された流れ図を生成する方法
CN110233802B (zh) 一种构建一主链多侧链的区块链架构的方法
JP6222225B2 (ja) 仮想マシン配置決定装置、仮想マシン配置決定方法および仮想マシン配置決定プログラム
US8443073B2 (en) Automated performance prediction for service-oriented architectures
Sánchez et al. Event correlation: Language and semantics
Wang et al. Task construction for model-based design of embedded control software
CN113064674B (zh) 一种扩展状态机逻辑的方法、装置、存储介质和电子装置
US20210279393A1 (en) Tool and method for designing and validating a data flow system by a formal model
US8341596B2 (en) Method and system for controlling the re-execution of a rule branch
Myter et al. Handling partial failures in distributed reactive programming
Teruel et al. Well-defined generalized stochastic Petri nets: A net-level method to specify priorities
Müller et al. Enabling fluid analysis for queueing petri nets via model transformation
CN115729961A (zh) 数据查询方法、装置、设备和计算机可读存储介质
CN112418796B (zh) 子流程任务节点激活方法、装置、电子设备及存储介质
Hassine et al. Abstract operational semantics for use case maps
Lei et al. Reachability testing of semaphore-based programs
Bruno et al. Scheduling hard real time systems using high-level petri nets
US20220250560A1 (en) System for formally supervising communications
Mumme et al. An efficient fully symbolic bisimulation algorithm for non-deterministic systems
Amer et al. Software Performance Evaluation: Graph grammar-based Transformation of UML design models into performance models

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application