Proceedings of the 27th ACM Symposium on Operating Systems Principles 2019
DOI: 10.1145/3341301.3359631
|View full text |Cite
|
Sign up to set email alerts
|

SplitFS

Abstract: We present SplitFS, a file system for persistent memory (PM) that reduces software overhead significantly compared to state-of-the-art PM file systems. SplitFS presents a novel split of responsibilities between a user-space library file system and an existing kernel PM file system. The user-space library file system handles data operations by intercepting POSIX calls, memory-mapping the underlying file, and serving the read and overwrites using processor loads and stores. Metadata operations are handled by the… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
10
0
2

Year Published

2021
2021
2023
2023

Publication Types

Select...
3
3

Relationship

0
6

Authors

Journals

citations
Cited by 122 publications
(16 citation statements)
references
References 14 publications
0
10
0
2
Order By: Relevance
“…In cases of SATA/IDE, the target system employs a hardware controller (i.e., disk controller) to manage their storage interface protocol, so the interface driver usually handles I/O interrupt or system memory management. In contrast, in the case of NVMe, a kernel module (NVMe driver) [11], [54], [55] Arrakis [14], [15], [16] Ishiguro et al [29] Aerie [17] RUMA [56] NVMeDirect [12] Moneta-D [20] Direct-FUSE [18] Strata [30] Breeze [57] Simurgh [25] XFUSE [58] SplitFS [21] HyCache [59] Quill [26] Son et al [60], [61] ZoFS [22] Davram [62] vNVML [27], [28] EvFS [19] Kuco [63] DLFS [64] URFS [65] UMFS [31] DevFS [23] CrossFS [24] FSP [32] directly accesses the PCIe bus over a memory mapped I/O and issues the request to the target SSD by composing an nvme_rw_command.…”
Section: Os Storage Stackmentioning
confidence: 99%
See 4 more Smart Citations
“…In cases of SATA/IDE, the target system employs a hardware controller (i.e., disk controller) to manage their storage interface protocol, so the interface driver usually handles I/O interrupt or system memory management. In contrast, in the case of NVMe, a kernel module (NVMe driver) [11], [54], [55] Arrakis [14], [15], [16] Ishiguro et al [29] Aerie [17] RUMA [56] NVMeDirect [12] Moneta-D [20] Direct-FUSE [18] Strata [30] Breeze [57] Simurgh [25] XFUSE [58] SplitFS [21] HyCache [59] Quill [26] Son et al [60], [61] ZoFS [22] Davram [62] vNVML [27], [28] EvFS [19] Kuco [63] DLFS [64] URFS [65] UMFS [31] DevFS [23] CrossFS [24] FSP [32] directly accesses the PCIe bus over a memory mapped I/O and issues the request to the target SSD by composing an nvme_rw_command.…”
Section: Os Storage Stackmentioning
confidence: 99%
“…By examining prior file system designs with respect to the emerging storage techniques, we divide these works into two categories according to the roles of kernel. As shown in Figure 6, several designs [17], [21], [22], [30] rely on kernel to maintain metadata integrity, security, consistency and etc. The kernel is also in charge of performing permission checks on each data request sent from the user space.…”
Section: Comprehensive File System Designmentioning
confidence: 99%
See 3 more Smart Citations