不好意思,个人逻辑思维不太好,以下尽量采用形象的类比方式来解释,通俗但不一定确切。精确的描述还是要翻文档,仅以此抛砖引玉。

Q1:交叉编译器的用途是什么?
A1:就像操两种不同语言的人需要有一个翻译才能实现交流,交叉编译器就相当于翻译。呃,也不完全是这样。编译器的最终结果还是要给一揽子芯片伙伴使用,所以不管在win上运行还是arm上,linux上,都是二进制文件。但是这些二进制文件不可通用,因为大家体系结构不一样。就像都是压缩文件,不同的格式要不同的×××来处理。有了这货,可以在win系统下编写C程序,然后交叉编译成需要的二进制文件再下载到嵌入式硬件中执行。

Q2:嵌入式系统的学习方法?
A2:看过了不少的资料和经验总结,学习嵌入式系统和计算机软件设计一样,因为学习对象功能强大,初学时不可像学习其它技术一样,处处深究。凡事问到底,学到透更适应于研究型、学术型应用,如果是为了开发适用市场需要的产品,胜任岗位工作则更应注重如何利用现有的技术,常用的功能实现系统集成,在系统迭代的过程中针对性地对某一方面进行深入研究,以获得不断的改进。不要指望一次就能做出完美的系统,快速原型、注重迭代方可顺应时代潮流。

Q3:fastboot是用来做什么的?
A3:采用USB OTG方式连接电脑主机与嵌入式硬件,在电脑侧通过打开cmd控制台,输入相关指令实现uboot、内核及文件系统的下载(烧录/刷机/烧写)。下载前把需要下载的文件放到fastboot所在的文件夹里进行操作。

Q4:emmc是什么?
A4:一种适用于移动便携设备的,高速、低功耗存储器。e就是embedded,为嵌入式而生!详细描述见百度或三星产品说明,记住emmc的存储单位是block(块),1 block=512 byte.在格式化时注意声明类型:mmc.

Q5:Linux中与串口相关的称为"tty",而不是"UART","srp"或者其他字符?
A5:有点咬文嚼字钻牛角的感觉,还是简单提一下,方便记忆。tty就是teletypewrite(电传打字机),源于古老的Unix系统,上世纪穿孔计算机的输入方式。就像延用"火车"这种名称一样,虽然现在正常的客运火车都不烧煤了。