Patent ID: 8260818

Claim:
A method for storing a variable in a non-volatile memory of a computing system executing an extensible firmware interface (EFI) firmware, the method comprising performing computer-implemented operations for: receiving a request to store a variable in the non-volatile memory; in response to the request, determining whether a full record or a data only record should be stored in the non-volatile memory for the variable; in response to determining that the full record should be stored in the non-volatile memory for the variable, creating a new full record for the variable in the non-volatile memory, the full record comprising a header and record information, wherein the header comprises a data field initialized to an erase polarity value of the non-volatile memory for storing a byte offset to a data only record associated with the full record and wherein the record information comprises a data field for storing either a GUID or an index to a second data field containing the GUID, a data field for storing a name for the variable, and a data field for storing a value for the variable; and in response to determining that the data only record should be stored in the non-volatile memory for the variable, creating a new data only record in the non-volatile memory comprising a header and record information including a data field for storing a value for the variable and modifying the data field in the full record for storing the byte offset to an offset of the new data only record.