学习过程中的一些细节
2、SD0通道,即inand
SD2通道,即SD卡插槽2
3、SD卡分区的知识点在
内核移植章节
4、SMDKV210是三星利用s5pv210弄出的官方开发板
5、嵌入式产品的研发过程
(1)让操作系统在硬件上跑起来(系统移植)
(2)基于操作系统来开发应用程序,实现产品的功能。
6、挂载的含义
a、挂载就是将某个未使用的空间或可移动设备的存储空间指向一个目录。这样,通过该目录就可以访问你的空间了。
b、在DOS/Windows中,C盘和D盘是并列的最顶级目录,但Linux中没有C盘D盘E盘的概念,整个文件系统就只有一个顶级的根目录(/),所有的物理磁盘都是根目录(/)下的一个子目录而已。所以,如果你要给现在的系统加快硬盘或添加分区,就先创建一个目录,然后用MOUNT和相应的格式参数把硬盘或分区挂载到你创建的那个目录中去,成功后,访问那个目录既是访问你加上的硬盘或分区。
c、挂载它,即可以访问它。
d、挂载到mnt,即创建一个挂钩mnt,可以通过mnt访问被挂载的东西(可能是硬盘,也可能是另一个目录)
e、aa被xx挂载,即xx挂载aa,即可以通过xx目录访问aa的内容。
7、dd if=/dev/zero of=rootfs.ext2 bs=1024 count=10240
(1)/dev/zero,是一个输入设备,用它来初始化文件(用于向设备或文件写入字符串0),/dev/zero主要的用处是用来创建一个指定长度的用于初始化的空文件。
- 该设备无穷尽地提供0。
(2)bs表示每个块有多少个字节
(3)count表示有多少个块。
8、在挂载目录里卸载,会提示device busy.
卸载的时候,应该卸载挂载点
9、在mnt/……winshare目录下解压三星的uboot时,提示找不到符号连接,把三星uboo压缩文件放在别的目录/root/下解压可以成功。
因此提示我们,Windows不支持符号连接,要在非winshare目录下解压
10、解压tar.bz2,一般用tar -jxvf ,如果用tar -zxvf会报错。
11、SD卡,一般用来烧录裸机程序、uboot;
fastboot工具,一般用来将windown主机上的文件,比如uboot,kernel,rootfs,烧录至inand的对应分区。
也可以把镜像文件放在ubuntu的目录下,配置好服务器和开发板的相关内容,通过开发板这个客户端去取服务端的内容,比如内核镜像,比如根文件系统。
12、待X210完全启动后,在SecureCRT中输入命令:
busybox dd if=/dev/zero of=/dev/block/mmcblk0 bs=512 seek=1 count=1 conv=sync
13、IROM自带的代码中,自己到IRAM的SD卡拷贝函数的地址处,传参1扇区开始, 读取SD卡的前8K内容(多少扇区来着?),完成从SD第1扇区开始的前8K的内容(即BL1)复制到IRAM的操作。之后IRAM中的8K内容,又到IRAM的SD卡拷贝函数的地址处(这个要自己写代码,之前的是厂家自带的),传参49扇区开始,读取SD卡的第49扇区开始的一些内容,到DRAM中,然后从IRAM中跳转到DRAM中运行。
14、内置的IROM是norflash,无需初始化就能被cpu存取内容。
IROM之所以能从外界的nandflash或SD卡(这些都需要初始化才能存取)中拷贝数据,应该是IROM中对这些进行了初始化。后面又进行了初始化?是的,不过是说uboot又进行了一次初始化。而我们普通的裸机程序里面就没有第二部初始化。
15、确认自己制作的rootfs并启动
(1)busybox交叉编译
(2)启动后直接nfs方式挂载文件夹形式的rootfs,测试ok后再做成镜像烧录
(3)挂载参数bootargs:(这里有分号才会加单引号)
setenv bootargs root=/dev/nfs nfsroot=192.168.1.141:/root/rootfs ip=192.168.1.10:192.168.1.141:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC2,115200
set bootcmd 'tftp 30008000 zImage; bootm 30008000'