Memory management is a way of controlling data in memory to ensure efficient utilization of memory. For example, data is arranged in sequences that make a system easy to manage, and unnecessary data is erased so that new data can be arranged efficiently. Although memory management is one function of an operating system (OS), using an application programming interface (API) provided by the OS makes it possible to explicitly manage memory via software.