Lines Matching refs:a
6 up with better software designs. It should not be thought of as a strictly
10 [NAND Flash](https://en.wikipedia.org/wiki/Flash_memory) memory. At a
11 very high level, this media has a few important properties:
15 * Flipping a bit is a highly asymmetric process. Flipping it one way is
22 bit-granularity once. In order to write to the erase block a second time, the
24 0). This is the asymmetry part from above. Erasing a block causes a measurable
25 amount of wear and each block may only be erased a limited number of times.
28 drive is composed of a set of fixed size **logical blocks** which are usually
30 device firmware and they do not statically map to a location on the backing
31 media. Instead, upon each write to a logical block, a new location on the NAND
33 physical location is updated. The algorithm for choosing this location is a
41 developers - imagine they are simply logging to a RAID volume and updating an
46 fact, there is a command that clears the translation for a block. In NVMe,
48 is called trim. When a user attempts to read a block that doesn't have a
49 mapping to a physical location, drives will do one of two things:
56 Choice #1 is much more common and performing reads to a fully deallocated
68 1. Selecting a target erase block (a good mental model is that it picks the least recently used era…
69 2. Walking through each entry in the erase block and determining if it is still a valid logical blo…
70 3. Moving valid logical blocks by reading them and writing them to a different erase block (i.e. th…
79 the blocks on the device in sequential order in a circular pattern, throwing
84 The amount of over-provisioning a device has can dramatically impact the
87 simply reserving a given amount of space on the device in software. This
94 finish. For a highly detailed description of exactly how to force an SSD into
95 a known state for benchmarking see this