to—it gets written back every 30 seconds
or so when the OS feels like it. We write
only file metadata to disk synchronously.
In terms of architectural fundamentals,
think about the difference between
all the inherent buffering and explicit
exception handling, and a statement like
int x = 10;. We base our language
and API designs on this dichotomy—RAM
their own acronyms based on their
particular technology. Some use the
acronym NVRAM, but I don’t need to
belabor the random-access aspect, do I?
Presumably, generations to come will just
call it “memory”—after all, memory by
definition is something that is persistent.
Now, global companies like IBM, Toshiba,
HP and Samsung, and startups like
Everspin, Crocus and Hynix, are all building
and shipping NVM products, primarily
used by embedded systems markets.
is fast, reliable but transient; disk writes
are slow, error-prone, but persistent.
The Next Revolution
For the past decade, several technologies
have been in development that provide
the read and write latency and reliability
of RAM with the transaction-level
persistence of disks.
Here, I’ll call this technology NVM
for non-volatile memory. RAM, of
course, means random access memory,
which doesn’t even mention its lack
of persistence. Newer products use
108 / SEPTEMBER 2012 / WWW.LINUXJOURNAL.COM
building and shipping NVM products,
primarily used by embedded systems
markets. Industries, such as automotive,
aerospace and others require very
reliable persistence in small form
factors. And cameras, phones, RAID
controllers, network routers and other
tech manufacturers are using NVM
under the covers.
■ Magneto-Resistive RAM: stores bits as
magnetic moments in ferromagnetic
areas built in to transistor arrays. Rather