Patent ID: 6938184

Claim:
A file server for serving data of a client from a network comprising: disk means for storing the data, the disk means includes a disk array; means for receiving the data from the network and sending an acknowledgment that the data has been stored to the client through the network but before the data has been stored in the disk means, the receiving means in communication with the disk means; a memory for storing the data until the data is stored in the disk means, the receiving means is in communication with the memory, the memory includes NVRAM, the receiving means includes a request manager which separates the write data from other information received from a client and sends that data to the NVRAM; a first power source for providing electricity to the disk means, the memory and the receiving means, the first power source in electrical communication with the disk means, the memory and the receiving means; and a second power source that provides electricity to the memory when the first power source fails, the second power source in communication with the memory, the receiving means receives data in any order from the client and prevents the data from being incorrectly overwritten in the memory when the data has been received out of order, and the first power source has failed before the data is stored in the memory, the request manager has a private list that identifies the data in the order a write request from a client is completed by the receiving means, the private list is used by the request manager to ensure the data is restored in the order in the memory even if the requests were processed out of order, and the first power source has failed before the data is written to the disk array.