1. A method for segmenting a cache, comprising: dividing a first non-volatile memory to store cache information into a plurality of segments; and pinning a first type of software of a plurality of types of software to a first segment of the plurality of segments, wherein the first pinned segment stores the cache information associated with the first type of software.