MSMP: A Centralized Shared-memory Management for Building Efficient and Reliable File Systems on Microkernels
Traditional microkernel-based operating systems are popular in embedded and safety-critical applications due to their advantages in security, reliability, and scalability. In recent years, some OS projects like LionsOS and the Hong-Meng microkernel have focused on developing general-purpose operating systems based on microkernels. However, the strong isolation mechanisms of microkernel architectures often lead to performance degradation when implementing user-space system services. This is particularly evident in file systems, where data may need to be transferred across multiple system services, resulting in redundant data copying. To address this issue, this paper proposes a microkernel file system architecture based on a multi-server memory proxy, which reduces redundant data copying across processes in a multi-server design through centralized shared memory. Additionally, this architecture effectively abstracts the use of Direct Memory Access (DMA), allowing any process to securely and conveniently utilize DMA for zerocopy operations. Considering the high-reliability requirements of system services, we implemented the overall design using the Rust programming language, thus avoiding the security issues typically associated with traditional languages like C. Experimental results indicate that our design can enhance file buffered I/O throughput performance by 43%.
Authors
- Rui Hou (ORCID: https://orcid.org/0000-0002-9215-7632)
- Dan Meng (ORCID: https://orcid.org/0000-0001-6654-8552)
- Shijun Zhao
- Feng He (ORCID: https://orcid.org/0000-0002-1158-2734)
Institutions
- Chinese Academy of Sciences (CN)
- Institute of Information Engineering (CN)
Publication Details
- Published
- 2024-12-17
- DOI
- https://doi.org/10.1109/trustcom63139.2024.00034
- Primary Topic
- Advanced Data Storage Technologies
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- National Natural Science Foundation of China