What is garbage collecting? Do I need to worry about it wearing out my flash memory?
Garbage collecting refers to reorganizing the flash memory. Each time a new file is placed in flash memory, it is stored after the end of the last file. If a file is removed from flash, it is marked as deleted, but the space it occupied will not be reused immediately. Unlike RAM, which is moved around to have no "gaps" in used space whenever a file is deleted or resized, the flash memory will only be rearranged once it is all full. When this happens, the calculator will ask if you want to garbage collect the memory. Generally you should always choose "Yes" as otherwise the memory access will fail. Unfortunately this process can take a while.
If running assembly programs from a shell, you may need to do this often; in order to save any changes to the data in the program, the shell will normally delete the program and copy the (possibly modified) program back to flash memory after you exit. If you run the program many times, this will "use" all the space in the flash memory, making garbage collection necessary. Some people seem to worry that this will wear out the flash memory, since it requires erasing blocks of it so that they can be written to again, and the memory is only designed to be erasable a limited number of times. However, this probably not a realistic concern, as the flash memory can be erased at least 100,000 times.