`

嵌入式linux系统学习笔记

阅读更多

嵌入式linux内核制作


1 清除原有配置文件与中间文件
x86 make distclean
arm make distclean
2 配置内核
x86 make menuconfig
arm make menuconfig ARCH=arm
3 内核编译
x86 make bzImage
arm make uImage ARCH=arm CROSS_COMPILE=arm-linux-




根文件系统的制作
1 创建目录和文件
mkdir rootfs
cd rootfs
mkdir bin dev etc lib proc sbin sys usr mnt tmp var
mkdir usr/bin usr/lib usr/sbin lib/modules
2 创建设备文件
cd dev/
mknod -m 666 console c 5 1
mknod -m 666 null c 1 3
cd ..
3 安装/etc
tar etc.tar.gz -C /xxx/rootfs
4 编译内核模块
make modules ARCH=arm CROSS_COMPILE=arm-linux-
5 安装内核模块
make modules_install ARCH=arm INSTALL_MOD_PATH=/XXX/rootfs、
6 配置busybox
进入busybox目录执行
make menuconfig
a 进入busybox settings-->
build options-->
选中build busybox as a static binary (no shared libs)
选中cross corpiler prefix(arm-linux-)
installation options-->
选中don't use/usr
busybox installation prefix(/xxx/rootfs)
注明编译后的busybox的安装位置
7 编译安装
make ARCH=arm CROSS_COMPILE=arm-linux-
make install




嵌入式文件系统
linux支持的文件系统类型:
ext2 ext3 vfat jffs romfs nfs
虚拟文件系统VFS(virtual file system) 为各类文件系统提供一个统一的应用编


程接口


文件系统架构
目录树 用户层
-----------------------------
虚拟文件系统(vfs) 内核层


jffs2 yaffs ramfs
------------------------------
mtd字符设备 mtd块设备 底层驱动

mtd 设备驱动
-------------------------------
nor flash nand flash ram 硬件层






基于flash的文件系统


nor
jffs日志闪存文件系统2(journalling flash file system v2)
可读写、支持数据压缩的日志型文件系统


nand
yaffs/yaffs2(yet another flash file system)不支持数据压缩




cramfs 只读的压缩文件系统






基于ram的文件系统


ramdisk 将一部分固定大小的内存当作块设备为使用
initramfs 类似于tmpfs(产品发布阶段)
nfs(network file system) 通过网络共享文件(开发阶段)

分享到:
评论

相关推荐

    嵌入式linux学习笔记

    本文将围绕“嵌入式Linux学习笔记”这一主题,深入探讨BOOTLOADER、内核以及文件系统这三大核心概念。 首先,BOOTLOADER是系统启动过程中的第一步,它负责加载操作系统到内存并初始化必要的硬件。在嵌入式系统中,...

    嵌入式linux工程师修炼笔记

    《嵌入式Linux工程师修炼笔记》是一份针对嵌入式领域的专业学习资料,涵盖了嵌入式软件工程师所需的基础知识和进阶技能。这份资源旨在帮助读者从零开始,逐步成长为一名精通嵌入式Linux开发的专业人士。以下是其中...

    嵌入式LINUX入门笔记

    本入门笔记旨在为初学者提供一个清晰的学习路径,逐步掌握嵌入式Linux的基本知识和技能。 在PC机上熟悉Linux是学习嵌入式Linux的第一步。首先,你需要安装一个Linux发行版,如Ubuntu或Fedora,来体验Linux环境。...

    (自学笔记)最全嵌入式Linux学习手册.docx

    《(自学笔记)最全嵌入式Linux学习手册》是一本深入浅出的教程,旨在帮助初学者掌握嵌入式Linux系统开发的各个环节。书中详细介绍了从基础的Linux操作系统安装和工具使用,到复杂的硬件部件编程、内核移植以及GUI系统...

    学习嵌入式Linux系统的笔记和体会

    ### 嵌入式Linux系统的关键知识点 #### 1. 嵌入式Linux系统的基本构成 嵌入式Linux系统通常由三个主要的软件层组成:Linux内核、C库(如glibc)以及应用程序代码。 - **Linux内核**:这是系统的核心,负责管理和...

    s5pv210嵌入式linux学习笔记.pdf

    在深入了解s5pv210嵌入式Linux学习笔记之前,首先应掌握一系列的预备知识,这涉及到计算机系统结构的基础,包括IO与内存编址的区别、冯诺依曼结构和哈佛结构的特点、CPU与外部存储器接口的差异,以及ARM处理器的基本...

    嵌入式Linux+入门笔记.pdf

    嵌入式Linux是一种将Linux操作...通过“嵌入式Linux+入门笔记”这份教程,初学者可以系统地学习这些知识点,逐步建立起完整的嵌入式Linux开发框架。结合实践项目,将理论与实际相结合,将有助于更好地掌握这门技术。

    嵌入式linux入门笔记

    嵌入式Linux作为一门综合性极强的技术领域,...阿南的嵌入式Linux入门笔记可能涵盖了这些基础知识,通过深入学习和实践,初学者可以逐步掌握这个领域的核心概念和技术,为成为专业的嵌入式Linux开发者打下坚实基础。

    嵌入式Linux C开发学习笔记

    这是我的嵌入式Linux C开发学习笔记。 该笔记包括文件IO、标准IO、串口通讯、网络通讯的相关内容。 使用vim打开,格式为.h 文件遵循MIT Lisense

    嵌入式linux学习总结.zip

    以上各个知识点构成了一个全面的嵌入式Linux学习路径,从基础应用到系统级的深入开发,有助于开发者理解和掌握嵌入式系统的设计与实现。通过这些文档,学习者可以逐步建立自己的嵌入式Linux技能,为从事相关领域的...

    linux常用命令,嵌入式linux使用入门笔记,linux入门

    总的来说,这两份资源为初学者提供了一个全面的Linux学习路径,从基础的命令行操作到深入的嵌入式系统开发,都能得到充分的指导。学习和熟练运用这些知识,将使你在IT行业的道路上更进一步,特别是在当前高度依赖...

    linux嵌入式学习笔记更新中

    Linux 嵌入式学习笔记主要涵盖了Linux操作系统的基础知识以及C语言编程的相关内容。下面将对这些知识点进行详细的解析。 1. Linux基础操作: - 登录:在Linux系统中,用户通过`用户名:密码`的方式登录系统。 - ...

    嵌入式Linux学习笔记

    嵌入式Linux学习笔记,顾名思义,这是一份针对嵌入式Linux系统移植和开发的指南文档。在这份文档中,作者详细介绍了从基础的Linux系统安装,到嵌入式Linux系统移植的全过程。尤其对于初学者,文档的结构和内容编排...

    嵌入式Linux入门笔记(pdf,清晰)

    这份“嵌入式Linux入门笔记”针对初学者提供了全面的基础知识,帮助他们快速进入嵌入式系统的世界。以下是笔记中可能涵盖的一些关键知识点: 1. **嵌入式系统基础**:首先,你需要理解什么是嵌入式系统,它是指嵌入...

    嵌入式系统学习笔记(非常有帮助)

    ### 嵌入式系统学习笔记关键知识点解析 #### 一、嵌入式系统的软件环境:uClinux与GNU/Linux **知识点概述**: - **uClinux**:是一种为无MMU(Memory Management Unit,内存管理单元)的处理器设计的嵌入式Linux...

    嵌入式设备驱动学习笔记

    本学习笔记主要关注于如何开发这些驱动程序,涉及C和C++编程语言,系统编程,网络编程以及ARM架构的驱动开发。 首先,了解基本的数据结构对于开发设备驱动至关重要。数据结构是组织和存储数据的方式,它影响着算法...

Global site tag (gtag.js) - Google Analytics