Next Article in Journal
Math for Everybody: A Sonification Module for Computer Algebra Systems Aimed at Visually Impaired People
Previous Article in Journal
Using Principal Component Analysis for Temperature Readings from YF3:Pr3+ Luminescence
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
This is an early access version, the complete PDF, HTML, and XML versions will be available soon.
Article

A Formal Verification Approach for Linux Kernel Designing

1
School of Cyber Science and Technology, Beihang Univeristy, Beijing 100191, China
2
School of Software, Beihang University, Beijing 100191, China
3
Hanzhou Innovation Institute, Beihang University, Hangzhou 310051, China
4
School of Computer Science and Engineering, Beihang University, Beijing 100191, China
*
Authors to whom correspondence should be addressed.
Technologies 2024, 12(8), 132; https://doi.org/10.3390/technologies12080132
Submission received: 28 April 2024 / Revised: 2 August 2024 / Accepted: 5 August 2024 / Published: 12 August 2024
(This article belongs to the Section Information and Communication Technologies)

Abstract

Although the Linux kernel is widely used, its complexity makes errors common and potentially serious. Traditional formal verification methods often have high overhead and rely heavily on manual coding. They typically verify only specific functionalities of the kernel or target microkernels and do not support continuous verification of the entire kernel. To address these limitations, we introduce LMVM (Linux Kernel Modeling and Verification Method), a formal method based on type theory that ensures the correct design of the Linux architecture. In the model, the kernel is treated as a top-level type, subdivided into the following sublevels: subsystem, dentry, file, struct, function, and base. These types are defined in the structure and relationships. The verification process includes checking the design specifications for both type relationships and the presence of each type. Our contribution lies primarily in the following two points: 1. This is a lightweight verification. As long as the modeling is complete, architectural errors in the design phase can be identified promptly. 2. The designed “model refactor” module supports kernel updating, and the kernel can be continuously verified by extending the kernel model. To test its usefulness, we develop a set of security communication mechanisms in the kernel, which are verified using our method.
Keywords: formal approach; type theory; Linux kernel; operating system security formal approach; type theory; Linux kernel; operating system security

Share and Cite

MDPI and ACS Style

Wang, Z.; Lan, Y.; He, X.; Lv, J. A Formal Verification Approach for Linux Kernel Designing. Technologies 2024, 12, 132. https://doi.org/10.3390/technologies12080132

AMA Style

Wang Z, Lan Y, He X, Lv J. A Formal Verification Approach for Linux Kernel Designing. Technologies. 2024; 12(8):132. https://doi.org/10.3390/technologies12080132

Chicago/Turabian Style

Wang, Zi, Yuqing Lan, Xinlei He, and Jianghua Lv. 2024. "A Formal Verification Approach for Linux Kernel Designing" Technologies 12, no. 8: 132. https://doi.org/10.3390/technologies12080132

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop