To provide a storage device etc. for preventing a specified block from being deteriorated in a concentrated manner.
A controller 12 stores BSI(Block Search Index) for specifying the free block of a flash memory 11, and determines whether a pointer showing the physical block address of one free block is stored, and generates random numbers based on the BSI when the pointer is not stored, and determines the initial value of the pointer according to the random numbers, and stores the pointer showing the initial value. When user data to be written are supplied to itself, the controller 12 writes the user data in the free block shown by the pointer, and updates the pointer so as to show a free block having a physical block address following the block where the user data is written, and updates the BSI so as not to show that the block where the user data are written is the free block.
JP2004127185A | 2004-04-22 | |||
JP2006039886A | 2006-02-09 |