A Road to a Formally Verified General-Purpose Operating System
نویسنده
چکیده
Methods of formal description and verification represent a viable way for achieving fundamentally bug-free software. However, in reality only a small subset of the existing operating systems were ever formally verified, despite the fact that an operating system is a critical part of almost any other software system. This paper points out several key design choices which should make the formal verification of an operating system easier and presents a work-in-progress and initial experiences with formal verification of HelenOS, a state-of-the-art microkernel-based operating system, which, however, was not designed specifically with formal verification in mind, as this is mostly prohibitive due to time and
منابع مشابه
Microkernel Verification Down To Assembly Extending the seL4 verification
When constructing systems with high assurance requirements, it is desirable to build on a formally verified trusted computing base, such as the seL4 microkernel [4]. The verification of seL4 guarantees correctness down to the kernel’s C implementation and relies on the correctness of the C compiler used. CompCert, a verified C compiler [2, 5], has the potential to extend these guarantees to the...
متن کاملExtracting a formally verified, fully executable compiler from a proof assistant
Compilers that have been formally verified in theorem provers are often not directly usable because the formalization language is not a general-purpose programming language or the formalization contains non-executable constructs. This paper takes a comprehensive, even though simplified model of Java, formalized in the Isabelle proof assistant, as starting point and shows how core functions in t...
متن کاملA Formally Verified Geometric Modelling Core
A geometric modeller is a piece of software allowing to create, manipulate and modify geometric objects. Modern geometric modellers usually use a mathematical model to represent objects and are developed around a kernel that proposes basic operations to create and manipulate objects called by high level operations. Because of these proceedings, the context is a priori in favour of the use of fo...
متن کاملKernel Development for High Assurance
In the paper we examine one of the issues in designing, specifying, implementing and formally verifying a small operating system kernel — how to provide a productive and iterative development methodology for both operating system developers and formal methods practitioners. We espouse the use of functional programming languages as a medium for prototyping that is readily amenable to formalisati...
متن کاملFormally Verified System Initialisation
The safety and security of software systems depends on how they are initially configured. Manually writing program code that establishes such an initial configuration is a tedious and error-prone engineering process. In this paper we present an automatic and formally verified initialiser for component-based systems built on the general-purpose microkernel seL4. The construction principles of th...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2010