栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

wds - 根文件系统

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

wds - 根文件系统

关系链
  • uboot的目的是启动内核
  • 内核的目的是启动应用程序
  • 应用程序的位置,在根文件系统中

什么是根文件系统
  • 类似于win下的CDE盘,Linux将存储设备分为几个分区,不同分区存放不同类别的文件;
  • 然而,Linux中有些 必要的、基本的文件,它们合称为【根文件系统】
    • 比如内核映像文件、第一个程序init,shell,依赖的库等
文件类型:
用busybox制作根文件系统 什么的busybox?
  • 所谓【制作根文件系统】,其实就是【创建各种目录及文件】
  • Busybox就是这样的工具
步骤 步骤一、解压busybox源码 tar xjf busybox-1.7.0.tar.bz2 步骤二、配置busybox cd busybox-1.7.0 make menuconfig 参考【嵌入式linux应用开发完全手册】中的17.2.3章节
  • 配置交叉编译
  • tab
  • C库配置为使用动态库
  • 使能mdev
  • 。。。
make 步骤三、安装 【注意:这里不能直接make install,不然会直接安装到当前环境;破坏自己的Liunx环境】 需要新建一个目录,然后安装到该目录下 mkdir -p /kuan/first_fs make CONFIG_PREFIX=/kuan/first_fs install ————此时,我们就得到了一个文件系统的大概雏形———— 步骤四、 mkdir /kuan/first_fs/dev cd /kuan/first_fs/dev sudo mknod console c 5 1 sudo mknod null c 1 3 步骤五、 mkdir /kuan/first_fs/etc vi etc/inittab inittab中填入: console::askfirst:-/bin/sh 步骤六、安装C库 打开你的gcc交叉工具的安装地址,然后复制so动态库文件到first_fs中去 交叉工具安装参考: 20210804 - JZ2440开发板新上手
cd [your arm-linux-gcc path] mkdir /kuan/first_fs/lib cp *.so* mkdir /kuan/first_fs/lib -d 再完善: 步骤七、挂载proc(虚拟文件系统) mkdir /kuan/first_fs/proc vi /kuan/first_fs/etc/inittab 添加一句:执行一个脚本文件 ::sysinit:/etc/init.d/rcS mkdir /kuan/first_fs/etc/init.d vi /kuan/first_fs/etc/rcS 在rcS中加上: mount -t proc none /proc chomd +x /kuan/first_fs/etc/rcS ok!
做好的跟文件系统如何烧录到板子上? ——需要做一个映像文件 如何制作yaffs文件系统映像文件? 步骤一、解压 tar xjf yaffs_source_util_larger_small_page_nand.tar.bz2 步骤二、编译生成yaff2的工具——mkyaffs2image cd Development_util_ok/yaffs2/yaffs2 make sudo cp mkyaffs2image /usr/local/bin sudo chmod +x /usr/local/bin/mkyaffs2image 步骤三、生成映像文件 cd /kuan mkyaffs2image first_fs first_fs.yaffs2 ok!得到 first_fs.yaffs2映像文件。 步骤四、烧写到板子
内核怎么启动第一个应用程序? 1,打开设备
  • open(/dev/console)——创建控制台设备文件,设备描述符为0(stdin)
  • sys_dup(0)  ——复制,设备描述符为1(stdout)
  • sys_dup(0)  ——复制,设备描述符为2(stderr)
  • 所有标准输入、输出、错误,其实是同一个文件。
2,run_init_process——创建线程,如果创建成功,是不会返回的

最小的根文件系统包含哪些?
  1. dev/console dev/null
  2. init 就是busybox
  3. /etc/inittab
  4. 配置文件中指定的程序
  5. C库
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/289244.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号