Patent ID: 7305502

Claim:
In a computing environment, a system comprising: a non-volatile storage mechanism; a non-volatile storage mechanism controller configured to write data to the non-volatile storage mechanism; a DMA controller connected to the non-volatile storage mechanism controller, the DMA controller configured to access memory of the computing device and direct the non-volatile storage mechanism controller to write data at the accessed memory to the non-volatile storage mechanism; a compression engine configured to compress data from one memory location to an output buffer; and a hibernation engine configured to direct the compression engine to compress an amount of uncompressed hibernation-related data to the output buffer, to communicate with the DMA controller to request a write of compressed data from the output buffer when compressed data in the output buffer is ready for writing, to request a status of the write operation that is present in a status register, and to communicate with the compression engine to compress another amount of uncompressed data to the output buffer while the status indicates that the requested write is pending.