f2fs中有对一个bitmap进行操作的函数,感觉很巧妙,和大家分享一下:

1333 static inline void f2fs_change_bit(unsigned int nr, char *addr)
1334 {
1335 int mask; //addr是bitmap的首地址,由于每一个bit表示的是一个block的信息
1336
1337 addr += (nr >> 3); // nr>>3, 跳过8个字节,先让addr跳到属于这个block的那个字节去
1338 mask = 1 << (7 - (nr & 0x07)); //然后在这个自己中找,这个block到底是哪一个bit
1339 *addr ^= mask;
1340 }

相关文章:

  • 2021-11-20
  • 2021-05-27
  • 2021-08-05
  • 2021-10-25
  • 2021-08-04
  • 2022-02-17
  • 2021-06-09
  • 2021-07-23
猜你喜欢
  • 2021-09-13
  • 2022-01-15
  • 2021-07-10
  • 2022-02-09
  • 2021-11-11
  • 2022-01-03
相关资源
相似解决方案