Memory Technology Device

Type of device file in Linux for interacting with flash memory


Flash-EEPROM in a Router – a true MTD

A Memory Technology Device (MTD) is a type of device file in Linux for interacting with flash memory. The MTD subsystem was created to provide an abstraction layer between the hardware-specific device drivers and higher-level applications. Although character and block device files already existed, their semantics don't map well to the way that flash memory devices operate.

USB sticks, MMCs, SDs, CompactFlashes and other popular removable devices are not MTDs. Although they contain flash memory, this is hidden behind a block device interface using a Flash Translation Layer and not directly interfacing with the kernel.[1]

When using an MTD, the use of an MTD aware file system such as UBIFS, JFFS2 or YAFFS is recommended. The MTD subsystem exports block devices as well, which allows the use of common filesystem like ext4. However, using an MTD this way is not recommended since there is neither detection of bad blocks nor any kind of wear leveling.

MTDs don't address to the kernel like traditional storage devices (Solid State Drive, Hard Disk Drive...) using LBAs, but rather using offsets and sizes.

References

  1. ^ "Memory Technology Device Overview". Retrieved 1 September 2012.

Further reading

  • Christopher Hallinan (2010). Embedded Linux Primer: A Practical Real-World Approach (2nd ed.). chapter 10: Pearson Education. ISBN 978-0-13-706110-5.{{cite book}}: CS1 maint: location (link)

External links

  • http://www.linux-mtd.infradead.org
  • v
  • t
  • e
Linux kernel
Organization
Kernel
Support
Technical
Debugging
Startup
ABIs
APIs
Kernel
System Call
Interface
In-kernel
Userspace
Daemons,
File systems
Wrapper
libraries
Components
Variants
Virtualization
Adoption
Range
of use
Adopters
  • icon Linux portal
  •  Free and open-source software portal
  • Category


Stub icon

This computer-storage-related article is a stub. You can help Wikipedia by expanding it.

  • v
  • t
  • e