fn assign_blocks(n: usize) -> Vec<Block> {
    // 1. find free blocks and get their logical addr and ref
    // 2. mark them as being used and delete them from extent tree
    // 3. return the data
    vec![]
}
// add an unused block
// always add in multiples of BLOCK_SIZE. So if a file needs +300 extra bytes
// and BLOCK_SIZE = 512B, then we assign 512B for the write (save)
add an unused block
always add in multiples of BLOCK_SIZE. So if a file needs +300 extra bytes
and BLOCK_SIZE = 512B, then we assign 512B for the write (save)
add an unused block always add in multiples of BLOCK_SIZE . So if a file needs + 300 extra bytes and BLOCK_SIZE = 512B then we assign 512B for the write ( save )
fn assign_blocks(n: usize) -> Vec<Block> {
    // 1. find free blocks and get their logical addr and ref
    // 2. mark them as being used and delete them from extent tree
    // 3. return the data
    vec![]
}
fn assign_blocks ( n : usize ) -> Vec < Block > { // 1. find free blocks and get their logical addr and ref // 2. mark them as being used and delete them from extent tree // 3. return the data vec ! [ ] }
add an unused block
always add in multiples of BLOCK_SIZE.
add an unused block always add in multiples of BLOCK_SIZE .
n
usize
n
usize