Patent ID: 7120773

Claim:
A memory management apparatus for accessing a physical page mapped according to mapping information to a logical page that includes a logical address specified by an access request, the mapping information showing a one-to-one mapping between a plurality of logical pages and a plurality of physical pages, the logical pages being defined by dividing a logical address space by a predetermined size, each of the physical pages functioning to physically retain data of the predetermined size and degrading in storage performance each time an access is made thereto, the apparatus comprising: an access frequency index storage unit operable to store an access frequency index for each logical page, the access frequency index indicating an occurrence frequency of an access request specifying a logical address included in a corresponding logical page; a degradation index storage unit operable to store a degradation index for each physical page, the degradation index indicating a degree of degradation in storage performance of a corresponding physical page; a degradation leveling unit operable to (i) exchange retained data between a first physical page and a second physical page, the first physical page being mapped according to the mapping information to a specific logical page of which the access frequency index is greater than or equal to a first threshold, and the second physical page having the degradation index that is less than or equal to a second threshold, and (ii) update the mapping information so as to show that the specific logical page is mapped to the second physical page; a cache storage unit operable to store, for each of up to a predetermined number of the physical pages, cache data that is a copy of data retained in a corresponding physical page and that is accessed instead of the original data, and to write, if cache data has been modified as a result of a subsequent access, the modified cache data back to a corresponding physical page; a degradation index updating unit operable to add a first value to a degradation index of each physical page that retains original data of cache data stored in the cache storage unit, and add a second value to a degradation index of each physical page to which modified cache data has been written back; and an access frequency index updating unit operable to add the first value to the access frequency index of a logical page that is mapped according to the mapping information to each physical page retaining original data of cache data stored in the cache storage unit, and to add the second value to the access frequency index of a logical page that is mapped according to the mapping information to each physical page to which modified cache data has been written back.