1. A method for expanding memory for a system on chip (SoC), the method comprising, the method comprising: detecting a memory card loaded in an expandable memory socket electrically coupled to a system on chip (SoC) via an expansion bus, the memory card comprising a first volatile memory device; in response to detecting the memory card, configuring an expanded virtual memory map comprising a first virtual memory space associated with the first volatile memory device and a second virtual memory space associated with a second volatile memory device electrically coupled to the SoC via a high-performance memory bus; relocating one or more peripheral images associated with the second virtual memory space and assigned only to hardware resources to a first portion of the first virtual memory space; and configuring a second portion of the first virtual memory space as a block device for performing swap operations associated with the second virtual memory space.