Memory and File Systems
Download
Report
Transcript Memory and File Systems
Memory
CS423
Dick Steflik
DRAM
Dynamic Random Access Memory
each data bit is stored in a separate capacitive
element in the Integrated Circuit
Because capacitors leak their charge the memory
must be periodically refreshed, thus the name
Dynamic or Volatile
requires one transistor and one capacitor per bit
simple, allowing high packaging densities
refresh rate dependent on implementation
8 usec – 64 msec
includes DDR and SDRAM
SRAM
Static Random Access Memory
Static in the sense that it does not need refreshing
like DRAM, but is still considered volatile (loses its
memory when power is removed)
requires six transistors (multi ported memory may
require 8, 10 or more transistors per bit)
lower packaging density than DRAM
easier to interface with than DRAM because of
simplicity and no need to refresh
ROM
Read-only memory
mask ROM – non-volatile, permanently programed in the
manufacturing process
PROM – Programmable Read-Only Memory
essentially a fuse matrix in which programming is done by
blowing the fuses
EPROM – Erasable Programmable Read-Only Memory
Programmable once then unalterable, non-volatile
semi-permanent in that the memory can be erased (by
exposing to ultrviolet light) and reprogrammed, considered to
be non-volatile
EEPROM – Electronically Erasable Programmable Read-only
non-volatile, parallel and serial access.
serial access via SPI, I2C, 1-wire
Flash
Not an Acronym, just a name
stores one bit per cell, cells are floating gate MOSFETs
two types, NAND and NOR
NOR – used like traditional memory, execute-in-place
memory (DRAM, SRAM)
NAND – accessed like a block device (disk), used for
memory sticks, flash drived, MMC, CF
finite number of writes, unlimited reads
need wear leveling and bad block management
CF
Compact Flash
mostly NAND based, interface is smaller than, but
electrically identical to, the ATA interface.
appears to the host device as if it were a hard disk. The
CF device contains an ATA controller.
makes it easy to use CF to replace a small hard drive
used mostly in older digital cameras
convenient to use in ITX, mini-ITX systems that are
IDE/ATA based
MMC
MultiMedia card
NAND technology developed by Siemans and
SanDisk
been superseded by Secure Digital format
SD, SDHC
Secure Digital Card
NAND Flash
most commonly found in digital camera equipment
typically formatted as FAT, FAT32 by manufacturer
but can be reformatted to any file system (ext2, jffs,
cram,yaffs) for embedded systems use
MMC card can be used in SD slot but not viceversa
JFFS
Journaling Flash File System
log-structured file system for use on NOR flash
memory devices on the Linux operating system. It
has been superseded by JFFS2
enforces wear leveling by treating the flash device
as a circular log
At mount time, the file system driver must read the entire
chain and then keep it in memory
The circular log design means all data in the filesystem is
re-written, regardless of whether it is static or not. This
generates many unnecessary erase cycles and reduces
the life of the flash medium.
JFFS2
Journaling Flash File System (2)
includes support for NAND flash
better performance, JFFS treated the disk as a
circular log. This generated a great deal of
unnecessary I/O. The garbage collection algorithm
in JFFS2 makes this mostly unnecessary.
supports compression
supports hard links
part of Linux kernel since 2.4.10
YAFFS
Yet Another Flash File System
designed specifically for NAND flash cards
log structured, used both with embedded OSs and
systems with no OS. Simple OS interface
Compressed File Systems
FS decompresses data as it is retrieved and
may or may not compress as data is put into
storage
CramFS
e2compr
SquashFS
JFFS2
CramFS
read-only Linux file system
zlib-compressed one page at a time to allow
random read access, files are compressed,
meta-data is not
comes with a utility (mkcramfs) to pack files into
new cramfs images.
often used for initrd images
e2compr
set of patches for ext2 file system kernel driver
to make it work with compression
not a new file system, makes ext2 work with
both uncompressed and compressed data
meta data us left uncompressed (for safety)
doesn't require a separate partition for
compressed files
SquashFS
Compressed read-only file system
uses gzip compression (LZMA being worked on)
Live CDs
Ubuntu, Fedora, Gentoo
often used with UnionFS to provide read/write
environment for Live CDs
SLAX, Debian Live, Mandiva
UnionFS
allows several file systems to be mounted as a single file
system
allows files and directories of separate file systems, to be
transparently overlaid, forming a single coherent file
system.
Contents of directories which have the same path within
the merged branches will be seen together in a single
merged directory, within the new, virtual filesystem.
In the case of a union of a read-only and a writable FS
where an identical path is encountered the preference can
be given to the writable path.
Example: Knoppix Live CD with a USB memorystick