Rethinking Memory Management in Modern Operating System : Horizontal, Vertical or Random?