Bcachefs based on bcache
Bcachefs is a copy-on-write (COW) file system for Linux-based operating systems. Its primary developer, Kent Overstreet, first announced it in 2015, and efforts are ongoing to have it included in the mainline Linux kernel. It is intended to compete with the modern features of ZFS or Btrfs, and the speed and performance of ext4 or XFS. It self-describes as "stable", as of December 2022.Features
Bcachefs is a copy-on-write (COW) file system for Linux-based operating systems. Features include caching, full file-system encryption using the ChaCha20 and Poly1305 algorithms, native compression via LZ4, gzip and Zstandard, snapshots, CRC-32C and 64-bit checksumming. It can span block devices, including in RAID configurations.Earlier versions of Bcachefs provided all the functionality of Bcache, a block-layer cache system for Linux, with which Bcachefs shares about 80% of its code. As of December 2021, the block-layer cache functionality has been removed.On a data structure level, bcachefs uses B-trees like many other modern file systems, but with an unusually large node size defaulting to 256 KiB. These nodes are internally log-structured, forming a hybrid data structure, reducing the need for rewriting nodes on update. Snapshots are not implemented by cloning a COW tree, but by adding a version number to filesystem objects. The COW feature and the bucket allocator enables a RAID implementation with neither write hole nor IO fragmentation.