有关linux内核移植时的裁剪涉及哪些内容

有关linux内核移植时的裁剪涉及哪些内容,第1张

嵌入式Linux系统的移植主要有U-Boot、Linux内核文件系统这三部分。

Uboot是在系统上电时开始执行,初始化硬件设备,准备好软件环境,然后才调用Linux *** 作系统内核。文件系统是Linux *** 作系统中用来管理用户文件的内核软件层。文件系统包括根文件系统和建立于Flash内存设备之上文件系统。根文件系统包括系统使用的软件和库,以及所有用来为用户提供支持架构和用户使用的应用软件,并作为存储数据读写结果的区域。

可将Linux系统移植过程大致需要分成6个步骤:

1) 准备工作,包括下载源码、建立交叉编译环境等。交叉开发是指在开发主机上安装开发工具,编辑、编译目标板的引导程序、内核和文件系统,使其能在目标板上运行。

2) 配置和编bootloader(引导装载程序)。通过这段小程序,可以初始化硬件设备、建立内存空间的映射表,从而建立适当的系统硬件环境,为最终调用 *** 作系统内核做好准备。

3) 配置和编译Linux内核,对其进行相应的裁剪,修改内核以支持相关的硬件设备。

4) 为大容量NAND Flash移植YAFFS文件系统,并将该文件系统加入Linux内核中;

5) 制作RAMdisk来挂载根文件系统。Linux系统中的文件和设备是通过文件系统来组织的。文件系统的存在使得数据和设备可以被有效而透明地存取访问。一个linux的最简根文件系统应该包括支持linux系统正常运行的基本内容,包括系统使用的软件和库,以及所有用来为用户提供基本支持的架构和指令。

6) 烧写、调试系统;如果调试出错,则需要重新配置,返回上述步骤(2)。

第一步,为这个新创建的文件系统(/dev/sdb1)创建挂载点目录,一般是在根文件系统的mnt目录(即:/mnt)下建立挂载目录,也可以在其他位置建立挂载目录,这里我们在根目录下建立新的挂载目录(如:/extdsk),使用命令 # mkdir /extdsk (目录名称可自定)。

第二步,确定挂载目录后,需要为新文件系统/dev/sdb1增加磁盘标志,这个标志很重要,当需要自动挂载此文件系统时,默认的/etc/fstab文件会使用磁盘标志,而分区命令fdisk以及格式化命令mkfs都不增加此标志,这个标志应该是挂载目录的完整路径名,此处应该用命令 #e2label /dev/sdb1 /extdsk 完成此 *** 作,命令中的/extdsk就是磁盘标志名称。

第三步,使用mount命令这个新文件系统/dev/sdb1挂载到挂载目录/extdsk,

命令格式为:#mount–t ext3 /dev/sdb1 /extdsk在此步骤中应该说明:如果在/etc/filesystems文件中包含了ext3文件系统格式,命令中的“-t ext3”参数可以省略不写,命令会自动找出与/dev/sdb1分区相应的格式。

第四步,将这个新创建文件系统/dev/sdb1加入到/etc/fstab文件中,设置成开机自动加载,可以免去每次重启系统都手动加载该文件系统的麻烦。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8300925.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存