pub trait BlockDevice:
Send
+ Sync
+ Any {
// Required methods
fn read_block(&self, block_id: usize, buf: &mut [u8]);
fn write_block(&self, block_id: usize, buf: &[u8]);
}Expand description
教程说明: 这是 EasyFS 与具体硬件/驱动之间的最小抽象边界。 文件系统只依赖“按块读写”,不关心块设备底层是 virtio、内存盘还是其他介质。 Trait for block devices which reads and writes data in the unit of blocks
Required Methods§
Sourcefn read_block(&self, block_id: usize, buf: &mut [u8])
fn read_block(&self, block_id: usize, buf: &mut [u8])
Read data form block to buffer
Sourcefn write_block(&self, block_id: usize, buf: &[u8])
fn write_block(&self, block_id: usize, buf: &[u8])
Write data from buffer to block