1. An OS-based memory management apparatus associated with main memory, comprising: a memory allocation controller configured to control a first memory region within the main memory such that the first memory region is used as a buffer cache depending on whether an input/output device is active or not in order to use the first memory region, allowing memory reservation for the input/output device, in the OS, wherein the memory allocation controller controls the first memory region such that the first memory region is used as an eviction-based cache.