why is the internal storage mmc and not sd?
I’ve been researching the difference bewteen sd and mmc after noticing that openwrt (and other distributions) name the internal storage that contains the system as mmcblk and other disks that live in external sd card readers as sd.
The thing that is confusing me is that the internal memory is also an sd card. So why does the system say that it is mmc? Is it because the reader is an mmc reader or is it some kind of emulation to make it compatible with the rest of the system?
/dev/sdX indeed once meant SCSI disk, but nowadays it covers anything with a SCSI-like interface, including SATA, USB storage and even old PATA when libata drivers are used. Some actually have suggested reinterpreting it just as storage device.
The MMC memory card specification was introduced in 1997, and SD cards were introduced in 1999 as an improvement over the MMC specification. So you can think of MMC as the "basic" form of the SD/MMC memory cards and SD as a subtype or specific form of it. This is of course a simplification, as both specifications evolved in parallel after their initial introduction.
The major "improvement" of SD over MMC initially was actually the inclusion of Digital Rights Management features to the specification, to placate music suppliers’ concerns about piracy, and so encourage SD cards as a possible music distribution medium. (Didn’t exactly work out as expected.)
The SD card was also specified to be a bit thicker than MMC, so MMC found its niche in use cases where DRM was not required and thinness was important.
When you access a SD/MMC card using a USB-based card reader, it will usually appear as
/dev/sdX device, since the reader is being accessed with a SCSI-like protocol. But when a reader device that allows direct access to the "native" SD/MMC interface, a
/dev/mmcblkN device name is used.
/dev/mmcblkN device, you will be able to use the low-level tools of the
mmc-utils package and will be able to use some card functions that are not available with (most?) card readers that present a
The internal memory of openwrt devices (and similar) is often specifically an eMMC: a MMC card controller and memory card packaged as a single permanently soldered chip.