Not logged in
Log in now
Create an account
Subscribe to LWN
LWN.net Weekly Edition for May 23, 2013
An "enum" for Python 3
An unexpected perf feature
LWN.net Weekly Edition for May 16, 2013
A look at the PyPy 2.0 release
Media that stores electronic information that used to spin but now doesn't is a closer parallel with RAM. Optimzations for "disk" IO need to follow a similar path as OS/kernels when dealing with RAM.
Solid-state storage devices and the block layer
Posted Oct 22, 2010 22:04 UTC (Fri) by eds (guest, #69511)
1. Addressing: DRAM is byte/word addressable; NAND flash is not. NAND flash pages are currently 4KB in size and must be read/written
2. Flash management: flash sucks. It has long erase times, needs wear-leveling, needs lots of ECC and redundancy to be reliable. Dealing with flash requires a lot of careful management that nobody's going to want on a DRAM-like path.
3. Speed: flash is a lot faster than disk. But it's still a lot slower than DRAM (a write to a busy NAND part may have to wait up to 1ms).
4. Size: it's very expensive to try to address a terabyte of DRAM. 64-bit CPUs don't actually implement a full 64-bit address space. It's much cheaper to just address huge storage devices in blocks, like a disk.
If in a few more years phase-change memory becomes big and cheap enough to give NAND flash a run for its money, then it may be time to start treating nonvolatile memory sort of like DRAM. But that day isn't quite here yet.
Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds