 It does this by copying "valid" nodes to a new block and skipping "obsolete" ones.That done, it erases the "dirty" block and tags it with a special marker designating it as a "free" block (to prevent confusion if power is lost during an erase operation).To make wear-levelling more even and prevent erasures from being too concentrated on mostly-static file systems, the garbage collector will occasionally also consume "clean" blocks.