Patent ID: 8458393

Claim:
An operating system, comprising: a page table that stores virtual addresses and physical memory addresses; a processor that executes a virtual management component that maps the virtual addresses to the physical memory addresses that correspond to at least one FLASH memory device and at least one DRAM memory device employed for random access memory applications; an allocation component that allocates pages to at least one of the FLASH memory device or the DRAM memory device based on a type of page fault, wherein in response to a read major page fault, the allocation component allocates a page in marked with copy on write protection from a main storage device to the FLASH memory device, and wherein in response to a write major page fault, the allocation component allocates a page in from the main storage device to the DRAM memory device, and wherein in response to a minor page fault on an existing physical DRAM page, the virtual management component maps to the existing physical DRAM page; and a dynamically adjustable buffer component that temporarily stores a plurality of pages while the pages are being written to at least one of the DRAM or the FLASH devices and forwards the plurality of pages to a direct memory access controller in response to a page request during a write operation, wherein a size of the dynamically adjustable buffer component can be increased in response to a determination that the plurality of pages are greater than the size of the dynamically adjustable buffer component.