KR20220063528A - Embedded control program verification method and device - Google Patents
Embedded control program verification method and device Download PDFInfo
- Publication number
- KR20220063528A KR20220063528A KR1020200149499A KR20200149499A KR20220063528A KR 20220063528 A KR20220063528 A KR 20220063528A KR 1020200149499 A KR1020200149499 A KR 1020200149499A KR 20200149499 A KR20200149499 A KR 20200149499A KR 20220063528 A KR20220063528 A KR 20220063528A
- Authority
- KR
- South Korea
- Prior art keywords
- verification
- model
- scenario
- control program
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/368—Test management for test version control, e.g. updating test cases to a new software version
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Abstract
Description
본 발명은 내장형 제어 프로그램에 관한 것으로, 특히 운영체제와 어플리케이션 모두를 고려하여 내장형 제어프로그램을 검증하되 CEGAR(Counterexample-guided abstraction refinement) 검증 기법을 사용함으로써 검증 복잡도를 낮추면서 검증할 수 있는 방법 및 장치에 관한 것이다. The present invention relates to a built-in control program, and in particular, to a method and apparatus that can verify the built-in control program in consideration of both the operating system and the application, while reducing the verification complexity by using the CEGAR (Counterexample-guided abstraction refinement) verification technique. it's about
내장형 프로그램은 일반적으로 운영체제와 어플리케이션을 포함하는 구성이다. 그리고 이러한 내장형 제어 프로그램은 여러 태스크(task)가 번갈아 수행되며, 여러 태스크의 실행순서를 정확하게 파악하기 위해서는 운영체제의 스케줄링 정보 및 작업 우선순위뿐만 아니라, 운영체제의 구성요소인 리소스, 이벤트, 인터럽트 등의 행위를 모두 반영한 운영체제가 있어야 한다. An embedded program is a component that generally includes an operating system and an application. In addition, in this built-in control program, several tasks are performed alternately, and in order to accurately grasp the execution order of several tasks, not only scheduling information and task priority of the operating system, but also actions such as resources, events, and interrupts, which are components of the operating system, are performed. There must be an operating system that reflects all of them.
이러한 제어 프로그램의 동작을 정확하게 분석하는 작업은 중요하다. 제어 프로그램은 내장된 소프트웨어를 생성하기 위해 운영체제와 함께 컴파일되기 때문에 운영체제와 밀접하게 결합되어 있기 때문이다. 운영체제의 동작을 고려하지 않고서는 이러한 제어 프로그램의 동작을 분석할 수 없다. It is important to accurately analyze the operation of such a control program. This is because the control program is tightly coupled with the operating system because it is compiled with the operating system to create embedded software. It is impossible to analyze the operation of such a control program without considering the operation of the operating system.
종래에 제어 프로그램의 검증방법은 운영체제와 어플리케이션을 따로 검증하는 방법이 있었다. 그러나 운영체제와 어플리케이션을 각각 검증하는 경우 나머지 하나의 행위를 확인할 수 없어 정확한 검증이 어려운 문제가 있다. 그래서 운영체제와 제어 프로그램 모두를 고려한 검증방법이 사용되기도 하였다. 그러나 상기와 같이 운영체제와 제어 프로그램 모두의 행위를 고려한 검증 방법은 매우 복잡도가 커질 뿐만 아니라 막대한 검증 비용이 발생하는 문제가 있다. Conventionally, as a method of verifying a control program, there is a method of separately verifying an operating system and an application. However, when verifying the operating system and the application separately, there is a problem in that it is difficult to accurately verify the behavior of the other one. Therefore, a verification method that considers both the operating system and the control program was used. However, as described above, the verification method in consideration of the actions of both the operating system and the control program has a problem in that the complexity increases and a huge verification cost occurs.
또 운영체제를 고려하지 않고 검증하기도 하는데, 예를 들어 운영체제를 추상화하여 검증할 경우 실제 프로그램 상에서 실행 가능하지 않은 높은 비율의 오경보가 발생하기도 한다. 이러한 검증방법은 작업간의 잘못된 실행순서를 기반으로 주어진 검증 속성을 반박할 가능성이 높아, 예를 들면 낮은 우선 순위 작업이 제어 프로그램에서 높은 우선 순위 작업에 선점될 수 있는 문제를 초래하기도 한다. In addition, verification is performed without considering the operating system. For example, if the operating system is abstracted and verified, a high rate of false alarms that are not executable in the actual program may occur. This verification method is highly likely to refute a given verification attribute based on the wrong execution order between tasks, and for example, a low-priority task may be preempted by a high-priority task in the control program.
본 발명의 목적은, 잘못된 오경보의 비율을 낮추도록 하며 검증 정확도를 향상시키면서 검증 비용을 줄일 수 있도록 하는 내장형 제어 프로그램 검증 방법 및 그 장치를 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a built-in control program verification method and apparatus capable of lowering the rate of false false alarms and reducing verification cost while improving verification accuracy.
본 발명은 OiL-CEGAR(OS-in-the-Loop Counterexample-Guided Abstraction Refinment)라는 CEGAR의 변형이 적용된 내장형 제어 프로그램 검증 방법 및 그 장치를 제공하는 것이다.An object of the present invention is to provide a method and apparatus for verifying a built-in control program to which a modification of CEGAR called OS-in-the-Loop Counterexample-Guided Abstraction Refinment (OiL-CEGAR) is applied.
이와 같은 목적을 달성하기 위한 본 발명은, 추상화된 제어 프로그램과 정형 운영체제 모델을 통합하는 통합 단계; 상기 통합된 운영체제 모델을 검증하는 검증 단계; 상기 검증 결과 속성 위반을 포함하는 반례가 도출되는 도출 단계; 검증 결과에 따라 보고된 반례의 스케쥴링 정보를 활용한 운영체제와 제어프로그램 상에서 보고된 시나리오의 실행 가능성을 판단하는 판단 단계; 및 실행 가능성이 불가능한 경우, 상기 시나리오를 통합 모델로부터 제거하는 제거 단계;를 포함하여 수행되는 것을 특징으로 하는 내장형 제어 프로그램의 검증 방법을 제공한다. The present invention for achieving the above object, the integration step of integrating the abstract control program and the formal operating system model; a verification step of verifying the integrated operating system model; a derivation step of deriving a counterexample including a violation of an attribute as a result of the verification; A determination step of determining the feasibility of executing the reported scenario on the operating system and the control program using the scheduling information of the reported counterexample according to the verification result; and a removal step of removing the scenario from the integrated model when feasibility is not possible.
상기 제거 단계 이후에, 상기 시나리오가 제거된 통합 모델을 다시 검증하고, 제어 프로그램의 안전성이 증명되거나 실행 가능한 안전 속성 위반 시나리오가 보고될 때까지 반복 수행하는 단계를 더 포함한다. After the removal step, the method further includes re-verifying the integrated model from which the scenario has been removed, and repeatedly performing until the safety of the control program is verified or an actionable safety property violation scenario is reported.
상기 판단 단계는 상기 검증 단계에서 검증된 결과가 실제로 발생가능한지 판단하는 것이다.The determination step is to determine whether the result verified in the verification step can actually occur.
상기 검증 방법은, OiL-CEGAR(OS-in-the-Loop Counterexample-Guided Abstraction Refinment) 방법이다. The verification method is an OS-in-the-Loop Counterexample-Guided Abstraction Refinment (OiL-CEGAR) method.
본 발명의 다른 특징에 따르면, 어플리케이션을 추상화하는 추상화부; 추상화된 어플리케이션 모델과 운영체제 모델을 통합하는 모델 통합부; 통합된 모델을 검증하는 모델 검증부; 상기 모델 검증부의 검증 결과에 따라 시나리오의 실행 가능성을 판단하는 판단부를 포함하여 구성되는 것을 특징으로 하는 내장형 제어 프로그램의 검증 장치를 제공한다. According to another feature of the present invention, an abstraction unit for abstracting an application; a model integration unit that integrates the abstracted application model and the operating system model; a model verification unit that verifies the integrated model; It provides a verification apparatus for a built-in control program, characterized in that it comprises a determination unit that determines the feasibility of the scenario according to the verification result of the model verification unit.
상기 판단부의 판단 결과, 실행 불가능한 시나리오인 경우 통합 모델에서 제거하는 제거부를 더 포함하고, 실행 불가능한 시나리오가 제거된 통합모델은 다시 상기 모델 검증부로 전달된다. As a result of the determination of the determination unit, the apparatus further includes a removal unit that removes from the integrated model if the scenario is not executable, and the integrated model from which the impossible scenario is removed is transmitted to the model verification unit again.
상기 모델 검증부는, 통합 모델이 안전 속성을 준수하는지 검증한다.The model verification unit verifies whether the integrated model complies with the safety attribute.
상기 판단부는, 실행 가능한 안전 속성 위반 시나리오가 보고될 때까지 상기 모델 검증부가 제공하는 안전 속성 위반 시나리오를 판단한다. The determination unit determines the safety attribute violation scenario provided by the model verification unit until an executable safety attribute violation scenario is reported.
이상과 같은 본 발명의 내장형 제어 프로그램 검증 방법 및 그 장치에 따르면, 운영체제 모델과 어플리케이션을 함께 검증함으로써 종래보다 더 정확하게 내장형 제어 프로그램을 검증할 수 있다.According to the method and apparatus for verifying the embedded control program of the present invention as described above, by verifying the operating system model and the application together, it is possible to verify the embedded control program more accurately than in the prior art.
또 본 발명은 모델 추상화를 이용하기 때문에 검증의 복잡도를 낮출 수 있고 이에 따라 검증 비용도 절감할 수 있는 효과가 있다.In addition, since the present invention uses model abstraction, the complexity of verification can be lowered, and thus the verification cost can be reduced.
도 1은 본 발명의 실시 예에 따른 내장형 제어 프로그램 검증장치를 나타낸 구성도
도 2는 도 1의 내장형 제어 프로그램 검증장치를 이용한 검증방법을 설명하는 흐름도1 is a block diagram showing a built-in control program verification apparatus according to an embodiment of the present invention;
2 is a flowchart illustrating a verification method using the built-in control program verification device of FIG. 1
본 발명의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.Objects and effects of the present invention, and technical configurations for achieving them will become clear with reference to the embodiments described below in detail in conjunction with the accompanying drawings. In the description of the present invention, if it is determined that a detailed description of a well-known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted.
그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다.And the terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to intentions or customs of users and operators.
그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. Only the present embodiments are provided so that the disclosure of the present invention is complete, and to completely inform those of ordinary skill in the art to which the present invention belongs, the scope of the invention, the present invention is defined by the scope of the claims will only be Therefore, the definition should be made based on the content throughout this specification.
이하에서는 도면에 도시한 실시 예에 기초하면서 본 발명에 대하여 더욱 상세하게 설명하기로 한다. Hereinafter, the present invention will be described in more detail based on the embodiments shown in the drawings.
도 1은 본 발명의 실시 예에 따라 내장형 제어 프로그램을 검증하는 장치(100)를 나타낸 구성도이다. 도 1에 도시한 바와 같이 어플리케이션을 추상화하는 추상화부(110)가 구비된다. 내장형 제어프로그램의 검증 시점에서 어플리케이션을 추상화하는 이유는 검증 복잡도를 낮추기 위한 것이다. 1 is a block diagram illustrating an
그리고 추상화된 어플리케이션 모델과 운영체제 모델을 통합하는 모델 통합부(120)와, 모델 통합부(120)에 의해 통합된 모델을 검증하는 모델 검증부(130)가 구비된다. 모델 검증부(130)는 검증시점에서 어플리케이션을 추상화했기 때문에 실제로 발생 가능하지 않은 시나리오가 안전 속성 위반 시나리오로써 발생할 수 있다. 이러한 모델 검증부(130)의 검증 결과는 제어 프로그램이 안전 속성을 준수함을 증명 또는 안전 속성을 위반하는 시나리오로 구분할 수 있다.In addition, the
그리고 상기 모델 검증부(130)의 검증 결과에 따라 시나리오의 실행 가능성을 판단하는 판단부(140)가 구비된다. 앞서 언급한 바와 같이 어플리케이션을 추상화했기 때문에 시나리오가 실제로 발생할 수 있는 행위인지 또는 실제로 발생할 수 없는 행위인지를 알수 없기 때문에 시나리오의 실행 가능성을 판단할 필요가 있기 때문이다. 다시 말해 어플리케이션의 추상화에 따라 아주 다양한 경우의 수가 존재할 가능성이 있으며, 따라서 각각의 시나리오가 실제로 실행될 수 있는가를 판단해야 하는 것이다. 판단부(140)는 실행 가능한 안전 속성 위반 시나리오 또는 실행 불가능한 시나리오를 판단할 수 있다. In addition, a
상기 실행 불가능한 시나리오인 경우 통합 모델에서 이를 제거하는 시나리오 제거부(150)가 더 구비된다. 그리고 시나리오 제거부(150)에 의하여 실행 불가능한 시나리오가 제외된 통합모델은 다시 상기 모델 검증부(130)로 제공되며, 모델 검증부(130)에 의해 프로그램의 안전성이 증명되거나, 그러지 못할 경우 판단부(140)로 제공되어 실행 가능한 안전성 위반 시나리오가 보고될 때까지 상기한 과정을 반복 수행하게 된다.In the case of the impossible scenario, a
다음에는 이와 같이 구성된 검증장치의 검증방법을 도 2를 참조하여 살펴보기로 한다. Next, a verification method of the verification apparatus configured as described above will be described with reference to FIG. 2 .
제어 프로그램의 안전성 여부를 정확하게 검증하기 위하여 운영체제와 어플리케이션을 구비한 제어 프로그램에서, 추상화부(110)는 그 제어프로그램의 검증 시점에 어플리케이션을 추상화하는 과정을 우선적으로 수행한다(s100). 추상화는 특정 조건에서 실행 가능한 경우가 복수 개 존재한다는 것을 의미한다. 이와 같이 어플리케이션을 추상화하면 특정 조건에서 발생할 수 있는 경우의 수의 전부를 각각 분석하지 않아도 되기 때문에(즉 연산량을 줄일 수 있게 된다), 종래 검증방법과 비교하면 운영체제와 어플리케이션을 같이 검증하면서도 복잡도를 낮추고 검증비용을 줄일 수 있게 된다. In order to accurately verify whether the control program is safe, in a control program including an operating system and an application, the
모델 통합부(120)는 추상화한 어플리케이션 모델과 운영체제 모델을 통합하고(s110), 모델 검증부(130)는 이렇게 통합된 모델에 대한 제어프로그램의 안전성 여부를 검증하게 된다(s120). 모델 검증부(130)가 검증하는 이유는 상기와 같이 어플리케이션을 추상화했기 때문에 실제로 발생하지 않는 시나리오가 나올 수 있기 때문이다. 상기 모델 검증부(130)의 검증결과는 2가지다. 상기 실제로 실행 가능한 시나리오인 경우는 안전 속성을 위반하지 않은 시나리오로서 제어프로그램이 안전하다고 검증된 제1 경우와, 실제로 일어나지 않은 시나리오가 발생한 제2 경우다. 모델 검증부(130)는 상기 제2 경우를 발견하기 위한 것이라 할 수 있다. 실질적으로 모델 검증부(130)는 속성 위반을 포함하는 반례를 도출하는 과정이라 할 수도 있다. The
상기 모델 검증부(130)의 검증 결과, 상기한 바와 같이 제1 경우가 발생하면 해당 모델은 제어프로그램의 안전성이 증명됐다고 할 수 있다. 반면 제2 경우가 발생하면 판단부(140)는 상기 시나리오의 실행 가능성을 판단해야 한다. As a result of the verification of the
판단부(140)의 상기 시나리오의 실행 가능성 판단은(s130), 검증 결과에 따라 보고된 반례의 스케줄링 정보를 이용하여 만든 추상화된 운영체제에서 어플리케이션을 실행함으로써 시나리오의 실행 가능성을 판단할 수 있다. 판단 결과는 실제 어플리케이션이 실행되면 실제로도 실행 가능한 오류 시나리오로 해석하여 안전성을 위반한 시나리오(즉 안전 속성 위반 시나리오)로 보고한다(s140의 '예'). 반대로 어플리케이션이 실행할 수 없는 경우이면(s140의 '아니오'), 그 시나리오를 제거한 후 다시 검증과정을 수행해야 한다. 상기와 같이 어플리케이션이 실행할 수 없는 경우는 어플리케이션을 추상화했기 때문에 발생하는 것이다. In determining the feasibility of the scenario by the determination unit 140 (s130), it is possible to determine the feasibility of the scenario by executing the application in the abstracted operating system created using the scheduling information of the counterexample reported according to the verification result. When the actual application is executed, the determination result is interpreted as an error scenario that can be actually executed and reported as a scenario in which safety is violated (that is, a scenario in which safety properties are violated) ('Yes' in s140). Conversely, if the application cannot be executed ('No' in s140), the verification process must be performed again after removing the scenario. If the application cannot be executed as described above, it occurs because the application is abstracted.
이처럼 실행 불가능한 시나리오가 확인되면 시나리오 제거부(150)는 통합 모델에서 상기 실행 불가능하다고 보고된 시나리오를 제거한 후 이를 다시 모델 검증부(130)로 전달한다(s150).When an impossible scenario is identified as described above, the
그러면 모델 검증부(130)는 다시 해당 통합 모델의 검증과정을 수행하고, 안전속성이 준수된 경우와 반대의 경우를 검증하며, 안전속성이 위반된 경우 판단부(140)가 실행 가능한 시나리오인지를 판단하는 과정을 계속 수행하게 된다. 즉 상기 판단부(140)는 안전성 위반 시나리오가 보고될 때까지 제어프로그램의 안전성을 검증하는 과정을 계속해서 수행하는 것이다. Then, the
이와 같이 본 발명은 운영체제와 어플리케이션 모두를 고려하여 내장형 제어프로그램을 검증하는 것이고, 나아가 제어 프로그램의 검증은 개선된 CEGAR 검증 기법을 적용하여 종래보다 검증 복잡도 및 비용을 낮추면서 수행하게 됨을 알 수 있다.As described above, it can be seen that the present invention verifies the built-in control program in consideration of both the operating system and the application, and furthermore, the verification of the control program is performed while reducing the verification complexity and cost compared to the prior art by applying the improved CEGAR verification technique.
이상과 같이 본 발명의 도시된 실시 예를 참고하여 설명하고 있으나, 이는 예시적인 것들에 불과하며, 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자라면 본 발명의 요지 및 범위에 벗어나지 않으면서도 다양한 변형, 변경 및 균등한 타 실시 예들이 가능하다는 것을 명백하게 알 수 있을 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 청구범위의 기술적인 사상에 의해 정해져야 할 것이다.Although described with reference to the illustrated embodiments of the present invention as described above, these are merely exemplary, and those of ordinary skill in the art to which the present invention pertains can use various functions without departing from the spirit and scope of the present invention. It will be apparent that modifications, variations and equivalent other embodiments are possible. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the appended claims.
110: 추상화부
120: 모델 통합부
130: 모델 검증부
140: 판단부
150: 제거부110: abstract painting
120: model integration part
130: model verification unit
140: judgment unit
150: removal unit
Claims (8)
상기 통합된 운영체제 모델을 검증하는 검증 단계;
상기 검증 결과 속성 위반을 포함하는 반례가 도출되는 도출 단계;
검증 결과에 따라 보고된 반례의 스케쥴링 정보를 활용한 운영체제와 제어프로그램 상에서 보고된 시나리오의 실행 가능성을 판단하는 판단 단계; 및
실행 가능성이 불가능한 경우, 상기 시나리오를 통합 모델로부터 제거하는 제거 단계;를 포함하여 수행되는 것을 특징으로 하는 내장형 제어 프로그램의 검증 방법.an integration step of integrating the abstract control program and the formal operating system model;
a verification step of verifying the integrated operating system model;
a derivation step of deriving a counterexample including a violation of an attribute as a result of the verification;
A determination step of determining the feasibility of executing the reported scenario on the operating system and the control program using the scheduling information of the reported counterexample according to the verification result; and
If feasibility is impossible, a removal step of removing the scenario from the integrated model;
상기 제거 단계 이후에, 상기 시나리오가 제거된 통합 모델을 다시 검증하고, 제어 프로그램의 안전성이 증명되거나 실행 가능한 안전 속성 위반 시나리오가 보고될 때까지 반복 수행하는 단계를 더 포함하는 내장형 제어 프로그램의 검증 방법.The method of claim 1,
After the removal step, re-verifying the integrated model from which the scenario is removed, and repeating until the safety of the control program is proven or an executable safety property violation scenario is reported. .
상기 판단 단계는 상기 검증 단계에서 검증된 결과가 실제로 발생가능한지 판단하는 내장형 제어 프로그램의 검증 방법.The method of claim 1,
The determining step is a verification method of a built-in control program for determining whether the result verified in the verification step can actually occur.
상기 검증 방법은, OiL-CEGAR(OS-in-the-Loop Counterexample-Guided Abstraction Refinment) 방법인 내장형 제어 프로그램의 검증 방법.The method of claim 1,
The verification method is a verification method of a built-in control program, which is an OS-in-the-Loop Counterexample-Guided Abstraction Refinment (OiL-CEGAR) method.
추상화된 어플리케이션 모델과 운영체제 모델을 통합하는 모델 통합부;
통합된 모델을 검증하는 모델 검증부; 및
상기 모델 검증부의 검증 결과에 따라 시나리오의 실행 가능성을 판단하는 판단부를 포함하여 구성되는 것을 특징으로 하는 내장형 제어 프로그램의 검증 장치. an abstraction unit that abstracts the application;
a model integration unit that integrates the abstracted application model and the operating system model;
a model verification unit that verifies the integrated model; and
and a judging unit judging the feasibility of the scenario according to the verification result of the model verification unit.
상기 판단부의 판단 결과, 실행 불가능한 시나리오인 경우 통합 모델에서 제거하는 제거부를 더 포함하고,
실행 불가능한 시나리오가 제거된 통합모델은 다시 상기 모델 검증부로 전달되는 내장형 제어 프로그램의 검증 장치. 6. The method of claim 5,
When the determination result of the determination unit is an impossible scenario, it further comprises a removal unit to remove it from the integrated model,
The integrated model from which the impossible scenario is removed is a verification device of the built-in control program that is transmitted back to the model verification unit.
상기 모델 검증부는,
통합 모델이 안전 속성을 준수하는지 검증하는 내장형 제어 프로그램의 검증 장치. 6. The method of claim 5,
The model verification unit,
Verification device of the built-in control program that verifies that the integrated model complies with the safety properties.
상기 판단부는,
실행 가능한 안전 속성 위반 시나리오가 보고될 때까지 상기 모델 검증부가 제공하는 안전 속성 위반 시나리오를 판단하는 내장형 제어 프로그램의 검증 장치. 6. The method of claim 5,
The judging unit,
A verification device of a built-in control program that determines the safety property violation scenario provided by the model verification unit until an executable safety property violation scenario is reported.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200149499A KR102471537B1 (en) | 2020-11-10 | 2020-11-10 | Embedded control program verification method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200149499A KR102471537B1 (en) | 2020-11-10 | 2020-11-10 | Embedded control program verification method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220063528A true KR20220063528A (en) | 2022-05-17 |
KR102471537B1 KR102471537B1 (en) | 2022-11-28 |
Family
ID=81803205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200149499A KR102471537B1 (en) | 2020-11-10 | 2020-11-10 | Embedded control program verification method and device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102471537B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110088016A1 (en) * | 2009-10-09 | 2011-04-14 | Microsoft Corporation | Program analysis through predicate abstraction and refinement |
JP2013206310A (en) * | 2012-03-29 | 2013-10-07 | Nec Corp | Model inspection device, model inspection method, and program |
KR101701800B1 (en) * | 2015-10-27 | 2017-02-02 | 경북대학교 산학협력단 | Method for task scheduling visualization for automotive control software, recording medium and device for performing the method |
-
2020
- 2020-11-10 KR KR1020200149499A patent/KR102471537B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110088016A1 (en) * | 2009-10-09 | 2011-04-14 | Microsoft Corporation | Program analysis through predicate abstraction and refinement |
JP2013206310A (en) * | 2012-03-29 | 2013-10-07 | Nec Corp | Model inspection device, model inspection method, and program |
KR101701800B1 (en) * | 2015-10-27 | 2017-02-02 | 경북대학교 산학협력단 | Method for task scheduling visualization for automotive control software, recording medium and device for performing the method |
Also Published As
Publication number | Publication date |
---|---|
KR102471537B1 (en) | 2022-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108509336B (en) | Operating system standard formalization verification and test method | |
US20060168480A1 (en) | Method and apparatus for enforcing safety properties of computer programs by generating and solving constraints | |
Rana et al. | Increasing efficiency of iso 26262 verification and validation by combining fault injection and mutation testing with model based development | |
CN108182359B (en) | Method, device and storage medium for testing API security in trusted environment | |
KR20090040017A (en) | System and method for vulnerability assessment of network based on business model | |
US20160304040A1 (en) | Vehicle control device | |
CN106845170A (en) | A kind of anti-debug method and system | |
Hamad et al. | Prediction of abnormal temporal behavior in real-time systems | |
Ruchkin et al. | Eliminating inter-domain vulnerabilities in cyber-physical systems: An analysis contracts approach | |
KR101428915B1 (en) | Feedback based application rewriting framework method and system for android security | |
CN112818569B (en) | Attribute-driven security protocol symbolization model detection method and system | |
Axer et al. | Stochastic response-time guarantee for non-preemptive, fixed-priority scheduling under errors | |
KR102471537B1 (en) | Embedded control program verification method and device | |
KR101701800B1 (en) | Method for task scheduling visualization for automotive control software, recording medium and device for performing the method | |
Oka | Fuzz testing virtual ECUs as part of the continuous security testing process | |
CN112685745B (en) | Firmware detection method, device, equipment and storage medium | |
CN111090575B (en) | Test method | |
CN111143305B (en) | Data storage method, device, equipment and medium based on distributed storage system | |
Möstl et al. | Synthesis of monitors for networked systems with heterogeneous safety requirements | |
Colombo et al. | Towards a Comprehensive Solution for Secure Cryptographic Protocol Execution based on Runtime Verification. | |
EP3091437A1 (en) | Method and apparatus for monitoring a control flow of a computer program | |
KR102348691B1 (en) | Method and apparatus for checking executability of application program, and recording media recorded program realizing the same | |
Frank et al. | Methods, tools and standards for the analysis, evaluation and design of modern automotive architectures | |
Shaaban et al. | An Automated Ontology-Based Security Requirements Identification for the Vehicular Domain. | |
Tigori et al. | Using formal methods for the development of safe application-specific RTOS for automotive systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |