Both memory allocation and disk space allocation result in fragmentation because the space available for a program or file is not normally the same as the size of the file or program that will use the space. In both cases, compaction can be used to collect the available spaces together for more efficient use. Discuss the similairities and differences between memory management compaction and disk compaction.