US 9,811,261 B1
Dynamic buffer size
Ishwar VenkataManikanda Ramani, San Jose, CA (US); Michael Wendling, Woodside, CA (US); Mridula Karumuru, Milpitas, CA (US); and James Robert Wright, Bainbridge Island, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 13, 2015, as Appl. No. 14/852,603.
Int. Cl. G06F 12/00 (2006.01); G06F 3/06 (2006.01)
CPC G06F 3/0608 (2013.01) [G06F 3/0631 (2013.01); G06F 3/0673 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
determining, by a device, a minimum write speed associated with a storage component of the device;
determining a minimum free space buffer threshold associated with the storage component from configuration data;
determining a low storage threshold for the storage component of the device from a setting of an operating system of the device;
determining a write speed associated with the storage component, wherein determining the write speed comprises determining a larger of the minimum write speed and an observed write speed over a past time period;
determining a time interval at which the device determines a total amount of free storage space on the storage component;
multiplying the write speed by the time interval to determine a predicted storage space usage of the storage device in a future time period that corresponds to the time interval;
determining, by the device, a first value for a variable free space buffer threshold for a free space buffer of the device to be equal to the low storage threshold plus a larger of the minimum free space buffer threshold and the predicted storage space usage, wherein the free space buffer corresponds to a first area of the storage component; and
determining a size for an unsolicited content storage area on the storage component to be equal to the total amount of free storage space minus the first value for the variable free space buffer threshold, wherein the unsolicited content storage area corresponds to a second area of the storage component that is to be used for storage of unsolicited content.