of logical spaces obtained by this dividing process as different logical units lun 0 lun 1 and lunk within the logical space managing table 24 the logical space managing table 24 manages as a logical space list information on the number of logical blocks in which data is written that is used logical blocks the number of unused logical blocks correspondences between logical block addresses 0 1 and m and luns lun 0 lun 1 and lunk the number of logical units logical unit numbers lun a used space of the logical space a free space of the logical space and the like in addition the logical space managing table 24 associates the logical block addresses given to the logical blocks 222 as objects of data processing with the physical block addresses given to the physical blocks 221 and manages the logical block addresses and the physical block addresses the memory controlling unit 23 controls the managing operation of such a logical space managing table 24 for example when the memory controlling unit 23 receives a command get lun list requesting obtainment of a logical block list within the flash memory 22 from the host device 10 via the host interface unit 21 the memory controlling unit 23 transmits information of the logical block list to the host device 10 when the memory controlling unit 23 receives a command requesting reading writing erasing or the like of data stored in the flash memory 22 from the host device 10 via the host interface unit 21 the memory controlling unit 23 refers to the logical space managing table 24 converts the logical block address of a logical block.