标题：MTD
MTD原始设备描述
所有组成MTD原始设备的Flash芯片必须是同类型（无论是interleave还是地址相连），在描述MTD原始设备数据结构中采用同一结构描述组成Flash芯片。每个MTD原始设备有一个mtd_info结构，其中的priv指针指向一个map_info结构，map_info结构中的fldrv_priv指向一个cfi_private结构，cfi_private结构的cfiq指针指向一个cfi_ident结构，chips指针指向一个flchip结构的数组。其中mtd_info、map_info和cfi_private结构用于描述MTD原始设备，因为组成MTD原始设备的NOR型Flash相同，cfi_ident结构用于描述Flash芯片信息；而flchip结构用于描述每个Flash芯片专有信息。
根文件系统
文件系统
字符设备节点
MTD字符设备
MTD块设备
MTD原始设备
FLASH硬件驱动
块设备节点
一、Flash硬件驱动层：硬件驱动层负责在init时驱动Flash硬件，Linux MTD设备的NOR　Flash芯片驱动遵循CFI接口标准，其驱动程序位于drivers/mtd/chips子目录下。NAND型Flash的驱动程序则位于/drivers/mtd/nand子目录下
二、MTD原始设备：原始设备层有两部分组成，一部分是MTD原始设备的通用代码，另一部分是各个特定的Flash的数据，例如分区。
用于描述MTD原始设备的数据结构是mtd_info，这其中定义了大量的关于MTD的数据和操作函数。mtd_table（mtdcore.c）则是所有MTD原始设备的列表，mtd_part（mtd_part.c）是用于表示MTD原始设备分区的结构，其中包含了mtd_info，因为每一个分区都是被看成一个MTD原始设备加在mtd_table中的，mtd_part.mtd_info中的大部分数据都从该分区的主分区mtd_part->master中获得。
在drivers/mtd/maps/子目录下存放的是特定的flash的数据，每一个文件都描述了一块板子上的flash。其中调用add_mtd_device()、del_mtd_device()建立/删除 mtd_info结构并将其加入/删除mtd_table（或者调用add_mtd_partition()、del_mtd_partition() （mtdpart.c）建立/删除mtd_part结构并将mtd_part.mtd_info加入/删除mtd_table 中）。
三、MTD设备层：基于MTD原始设备，linux系统可以定义出MTD的块设备（主设备号31）和字符设备（设备号90）。MTD字符设备的定义在mtdchar.c中实现，通过注册一系列file operation函数（lseek、open、close、read、write）。MTD块设备则是定义了一个描述MTD块设备的结构 mtdblk_dev，并声明了一个名为mtdblks的指针数组，这数组中的每一个mtdblk_dev和mtd_table中的每一个 mtd_info一一对应。
四、设备节点：通过mknod在/dev子目录下建立MTD字符设备节点（主设备号为90）和MTD块设备节点（主设备号为31），通过访问此设备节点即可访问MTD字符设备和块设备。
五、根文件系统：在Bootloader中将JFFS（或JFFS2）的文件系统映像jffs.image（或jffs2.img）烧到flash的某一个分区中，在/arch/arm/mach-your/arch.c文件的 your_fixup函数中将该分区作为根文件系统挂载。
六、文件系统：内核启动后，通过mount 命令可以将flash中的其余分区作为文件系统挂载到mountpoint上。
设备层和原始设备层的函数调用关系（红色部分需要我们实现）：
一个MTD原始设备可以通过mtd_part分割成数个MTD原始设备注册进 mtd_table，mtd_table中的每个MTD原始设备都可以被注册成一个MTD设备，其中字符设备的主设备号为90，次设备号为0、2、4、 6…（奇数次设备号为只读设备），块设备的主设备号为31，次设备号为0、1、2、3…
mtd_notifier mtd_notifier
字符设备 mtd_fops 块设备 mtd_fops
（mtdchar.c） （mtdblock.c） mtdblks
设备层
register_mtd_user()
get_mtd_device()
unregister_mtd_user()
put_mtd_device()
erase_info
mtd_notifiers
mtd_table
mtd_info
mtd_part
（mtdcore.c）
（mtdpart.c）
Your Flash
（your-flash.c）
add_mtd_partitions()
del_mtd_partitions()
原始设备层 add_mtd_device()
del_mtd_device()
mtd_partition
NOR型Flash芯片驱动与MTD原始设备
所有的NOR型Flash的驱动（探测probe）程序都放在 drivers/mtd/chips下，一个MTD原始设备可以由一块或者数块相同的Flash芯片组成。假设由4块devicetype为x8的 Flash，每块大小为8M，interleave为2，起始地址为0x01000000，地址相连，则构成一个MTD原始设备（0x01000000-0x03000000），其中两块interleave成一个chip，其地址从0x01000000到0x02000000，另两块interleave成一个chip，其地址从0x02000000到0x03000000。
请注意，所有组成一个MTD原始设备的Flash芯片必须是同类型的（无论是interleave还是地址相连），在描述MTD原始设备的数据结构中也只是采用了同一个结构来描述组成它的Flash芯片。
0x03000000
0x02000000
0x01000000
每个MTD原始设备都有一个mtd_info 结构，其中的priv指针指向一个map_info结构，map_info结构中的fldrv_priv指向一个cfi_private结构，cfi_private结构的cfiq指针指向一个cfi_ident结构，chips指针指向一个flchip结构的数组。其中mtd_info、 map_info和cfi_private结构用于描述MTD原始设备；因为组成MTD原始设备的NOR型Flash相同，cfi_ident结构用于描述Flash芯片的信息；而flchip结构用于描述每个Flash芯片的专有信息（比如说起始地址）
MTD医学热成像检测
温变早于病变，通过医用红外热像仪接收人体发出的远红外线，得到人体体表详细精确的温度信息，由计算机处理后组成人体的红外线热像图，为医生提供疾病诊断的重要依据。
医用红外热像仪（MTD俗称：“热CT”）介绍
温变早于病变，预警人体健康
  MTD照片1、红外热像仪的发展状况 
医用红外线热像仪同CT、核磁共振并列为医学八大影像诊断仪器之一。我国从1991年开始研究医用红外线，至今已经取得了显著成果，PLUS系列医用红外热像仪的精度，已由1991年的0.1℃发展到目前的0.01℃，空间分辨率也已由2MARO提高到0.5－0.8MARO，从模糊的红外热图到目前清晰的红外线热像图，被临床充分认可。2、红外热像仪的基本结构 
由摄像头部、处理器（计算机）和显示器三大部分组织。
3、红外热像仪的诊病原理 
零度以上的物体都是一个热能辐射源，不断向周围散发红外辐射。人体也是一样由于体内各组织的代谢功能不同，体表温度并不一致，当人体发生某种病变或生理变化时，该处温度亦会因其血流和代谢变化的异常温度而偏离正常。红外热像仪正是利用这一生理特征，通过热像仪镜头接收人体发出的8-14UM的远红外线，得到人体体表的详细精确的温度信息，这些温度数据由计算机处理后5秒钟即可扫描成为一幅人体的红外热图并以不同的颜色分布显示，临床工作者可以据以诊断疾病。
网络美图帝缩写
出现、也是最常用在美图秀秀贴吧中，MT是美图秀秀的简称，而美图帝是网友们对操作美图秀秀的大神的简称，后来渐渐演变成MTD。