Publications

Detailed Information

Formal Verification Framework for Cyber-Physical Systems on PALSware : 사이버 물리 시스템을 위한 PALSware 시스템 엄밀 검증 프레임워크

DC Field Value Language
dc.contributor.advisor허충길-
dc.contributor.author김윤승-
dc.date.accessioned2022-04-05T05:56:17Z-
dc.date.available2022-04-05T05:56:17Z-
dc.date.issued2021-
dc.identifier.other000000168363-
dc.identifier.urihttps://hdl.handle.net/10371/177762-
dc.identifier.urihttps://dcollection.snu.ac.kr/common/orgView/000000168363ko_KR
dc.description학위논문(박사) -- 서울대학교대학원 : 공과대학 전기·컴퓨터공학부, 2021.8. 김윤승.-
dc.description.abstractAchieving high-level safety guarantees for cyber-physical systems has always been
a key challenge, since many of those systems are safety-critical so that their failures
in the actual operation may bring catastrophic results. Many cyber-physical systems
have real-time and distributed features, which increase the complexity of the system
an order of magnitude higher.
In order to tame the complexity, a middleware called PALSware has been pro-
posed. It provides a logically synchronous environment to the application layer on
top of physically asynchronous underlying network and operating systems. The com-
plexity of a system can be significantly reduced in a synchronous environment.
However, a bug in PALSware may have destructive effects since it exposes every
application system to runtime failures. Moreover, finding bugs in PALSware can be
very challenging in some cases, for various reasons.
To solve this problem, we present VeriPALS, a formally verified C implementation
of PALSware together with a verification framework for application systems. Espe-
cially, the framework provides an executable model as an efficient random testing
tool. As case studies, we developed two application systems, and applied VeriPALS
to demonstrate effectiveness of the framework in both testing and formal verification.
-
dc.description.abstract사이버 물리 시스템의 안전성을 높이는 일은 항상 중요한 연구 주제가 되어왔다. 그 이유
는 많은 사이버 물리 시스템이 안전 우선 시스템이기 때문인데, 이는 실제 시스템 구동
중에 오류가 발생할 경우 큰 사고로 직결될 수 있음을 의미한다. 더욱이, 사이버 물리
시스템이 가지는 실시간성, 분산성이 시스템의 복잡도를 높여 위험성을 증가시키므로
안전성을 높이는 일은 매우 중요하다.
시스템의 복잡도 문제를 해결하기 위해, PALSware라는 미들웨어가 고안되었다. 이
미들웨어는 비동기식으로 동작하는 네트워크와 운영체제 환경 위에서 가상의 동기식 환
경을 애플리케이션 층에 제공하는 역할을 한다. PALSware를 사용하면 시스템을 동기식
환경에서 디자인할 수 있게 되어, 시스템의 복잡도를 크게 낮추는 것이 가능해진다.
하지만, PALSware에 버그가 있을 경우 그 악영향이 매우 크게 나타날 수 있다. 우선
이 미들웨어를 사용하는 모든 애플리케이션 시스템에 버그가 존재하게 된다. 또한, 미들
웨어의 버그를 찾는 일은 일반 프로그램의 버그를 찾는 것보다 매우 어려운 문제가 될
수 있다.
이 문제를 해결하기 위해, 우리는 VeriPALS라는 프레임워크를 개발하였다. 이 프레
임워크는 수학적으로 엄밀하게 검증한 PALSware의 C 구현체를 포함하고 있어 안전한
시스템 구현을 돕는다. 또한, 애플리케이션 시스템을 Coq 위에서 수학적으로 엄밀히
검증할 수 있는 기능을 지원한다. 더 나아가서, 이 프레임워크는 실행 가능한 모델을
효율적인 랜덤 테스팅 툴로서 제공한다. 우리는 이 프레임워크 위에서 두 종류의 애플리
케이션 시스템을 개발하고 테스팅 및 엄밀 검증하여 이 프레임워크의 유용성을 보였다.
-
dc.description.tableofcontentsChapter 1 Introduction 1
Chapter 2 Preliminaries 8
2.1 PALSware 8
2.1.1 PALSware in A Distributed System 9
2.1.2 Correctness of Synchronization on Reliable Network 10
2.1.3 Implementation of PALSware 11
2.2 Interaction Trees 14
Chapter 3 Overview 16
3.1 Framework 16
3.2 Key Ideas 21
3.2.1 Concurrent Executions of Nodes 21
3.2.2 Global Clock vs. Local Clock 22
3.2.3 Real-time Local Executions of Node Model 23
3.2.4 Time Constraint on Network Transmission Times 24
3.2.5 Time Constraint on Program Executions 25
3.2.6 Observable Behaviors of a Real-Time Distributed System 26
Chapter 4 Formalization 28
4.1 General Definitions 28
4.2 Application System of the Framework 31
4.3 Real-World Model 34
4.3.1 Network Model 34
4.3.2 Generic System Model On Network 35
4.3.3 Operating System Model 37
4.4 Executable Abstract Synchrous Model 41
4.5 Result 42
Chapter 5 Refinement Proof using Intermediate Models 44
5.1 Refinement 1: Abstraction of C programs 44
5.2 Refinement 2: Abstract PALSware 47
5.3 Refinement 3: Abstraction of Network 48
5.4 Refinement 4: Synchronous Execution 51
5.5 Refinement 5: Making It Executable 54
Chapter 6 Case Study 1: Active-Standby Resource Scheduling System 55
6.1 High-Level Description 56
6.2 Implementation 59
6.3 Formally Verified Properties 62
6.3.1 Correctness of Implementation 62
6.3.2 Abstraction To Single-Controller System 63
Chapter 7 Case Study 2: Synchronous Work Assignment System 68
7.1 High-Level Description 69
7.2 Implementation 70
Chapter 8 Results 75
8.1 Development 75
8.2 Experimental Results 77
Chapter 9 Related Work 80
9.1 PALS Pattern and PALSware Verification 80
9.2 Verification Frameworks for Distributed Systems 81
9.3 Verifying C Programs 83
Chapter 10 Conclusion and Future Work 85
Bibliography 88
초록 92
Acknowledgements 93
-
dc.format.extentvii, 93-
dc.language.isoeng-
dc.publisher서울대학교 대학원-
dc.subjectformal verification-
dc.subjectdistributed systems-
dc.subjectreal-time systems-
dc.subjectsynchronous systems-
dc.subjecttheorem proving-
dc.subject정형 검증-
dc.subject분산 시스템-
dc.subject실시간 시스템-
dc.subject동기식 시스템-
dc.subject정리 증명-
dc.subject.ddc621.3-
dc.titleFormal Verification Framework for Cyber-Physical Systems on PALSware-
dc.title.alternative사이버 물리 시스템을 위한 PALSware 시스템 엄밀 검증 프레임워크-
dc.typeThesis-
dc.typeDissertation-
dc.contributor.AlternativeAuthorKim Yoonseung-
dc.contributor.department공과대학 전기·컴퓨터공학부-
dc.description.degree박사-
dc.date.awarded2021-08-
dc.identifier.uciI804:11032-000000168363-
dc.identifier.holdings000000000046▲000000000053▲000000168363▲-
Appears in Collections:
Files in This Item:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share