交叉编译详解 二 从零制作交叉编译链

编译环境

主机硬件环境:

    $ uname -a
    Linux PC 4.4.0-42-generic #62-Ubuntu SMP Fri Oct 7 23:11:45 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

主机软件环境:

    $ cat /etc/issue
    Ubuntu 16.04.1 LTS

需要安装的工具:

    sudo apt-get install libncurses5-dev
    sudo apt-get install gperf
    sudo apt-get install bison
    sudo apt-get install flex
    sudo apt-get install texinfo
    sudo apt-get install help2man
    sudo apt-get install gawk
    sudo apt-get install libtool
    sudo apt-get install libtool-bin
    sudo apt-get install automake

libncurses5-dev: developer’s libraries for ncurses(执行 make menuconfig 时需要)

gperf: 一个完美的hash函数生成器。例子可以看这个帖子:
gperf 使用实例

bison: 一个语法分析器生成器。Bison 把一个关于“向前查看 从左到右 最右”(LALR) 上下文无关文法的描述转化成可以分析该文法的 C 或 C++ 程序。它也可以为二义文法生成 “通用的 从左到右 最右” (GLR)语法分析器

flex: 词法分析器

texinfo: 是Linux系统提供的另外一种格式的帮助信息。和man相比,textinfo具有更好交互功能。它支持链接跳转功能,通常使用info和pinfo命令来阅读textinfo文档

help2man: 一个可以自动为我们的程序生成man手册的工具

gawk: linux下用于查找替换的文本工具

libtool / libtool-bin: Generic library support script

automake: Tool for generating GNU Standards-compliant Makefiles

备注:

  • 不同的环境需要安装的工具不完全一致,出错时可以根据错误提示来排查
  • 各种工具的描述可以使用 apt-cache search XXX 命令去查询

配置全局变量

    export PRJROOT=/home/user/tool_prj1         # 修改为自己的工程所在的目录
    export TARGET=arm-none-linux-gnueabi
    export PREFIX=${PRJROOT}/tool-chain
    export TARGET_PREFIX=${PREFIX}/${TARGET}
    export PATH=${PREFIX}/bin:${PATH}
    export ARCH=arm
    export BINUTILS_VERSION=binutils-2.27
    export GCC_VERSION=gcc-5.4.0
    export GLIBC_VERSION=glibc-2.23
    export KERNEL_VERSION=linux-4.4.25

目录结构

    $ tree -L 2
    tool_prj1
    ├── build                       # src的编译目录
    ├── script                      # 脚本工具目录
    │   ├── toolchain_build.sh        # 自己写的自动化编译脚本,后续的命令都集成在了这个脚本中
    │   └── toolchain_config.lst      # 用于配置全局变量
    ├── setup                       # 保存下载的源码包
    │   ├── binutils-2.27.tar.bz2
    │   ├── gcc-5.4.0.tar.bz2
    │   ├── glibc-2.23.tar.bz2
    │   └── linux-4.4.25.tar.xz
    ├── src                         # 解压后的源码文件
    └── tool-chain                  # 工具链安装位置

源码包下载


                
  • 17
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
可以进行编辑,复制,打印的pdf 第1章 Linux快速入门 1 1.1 嵌入式Linux基础 1 1.1.1 Linux发展概述 1 1.1.2 Linux作为嵌入式操作系统的优势 2 1.1.3 Linux发行版本 3 1.1.4 如何学习Linux 4 1.2 Linux安装 5 1.2.1 基础概念 5 1.2.2 硬件需求 7 1.2.3 安装准备 7 1.2.4 安装过程 8 1.3 Linux文件及文件系统 11 1.3.1 文件类型及文件属性 11 1.3.2 文件系统类型介绍 13 1.3.3 Linux目录结构 14 1.4 实验内容——安装Linux操作系统 17 本章小结 17 思考与练习 18 第2章 Linux基础命令 19 2.1 Linux常用操作命令 19 2.1.1 用户系统相关命令 20 2.1.2 文件目录相关命令 27 2.1.3 压缩打包相关命令 38 2.1.4 比较合并文件相关命令 40 2.1.5 网络相关命令 45 2.2 Linux启动过程详解 50 2.2.1 概述 51 2.2.2 内核引导阶段 51 2.2.3 init阶段 52 2.3 Linux系统服务 54 2.3.1 独立运行的服务 55 2.3.2 xinetd设定的服务 56 2.3.3 设定服务命令常用方法 56 2.4 实验内容 57 2.4.1 在Linux下解压常见软件 57 2.4.2 定制Linux系统服务 58 本章小结 60 思考与练习 60 第3章 Linux下的C编程基础 61 3.1 Linux下C语言编程概述 61 3.1.1 C语言简单回顾 61 3.1.2 Linux下C语言编程环境概述 62 3.2 进入Vi 63 3.2.1 Vi的模式 63 3.2.2 Vi的基本流程 63 3.2.3 Vi的各模式功能键 65 3.3 初探Emacs 66 3.3.1 Emacs的基本操作 67 3.3.2 Emacs的编译概述 70 3.4 Gcc编译器 71 3.4.1 Gcc编译流程解析 71 3.4.2 Gcc编译选项分析 74 3.5 Gdb调试器 77 3.5.1 Gdb使用流程 78 3.5.2 Gdb基本命令 81 3.6 Make工程管理器 86 3.6.1 Makefile基本结构 86 3.6.2 Makefile变量 87 3.6.3 Makefile规则 90 3.6.4 Make管理器的使用 91 3.7 使用autotools 92 3.7.1 autotools使用流程 92 3.7.2 使用autotools所生成的Makefile 96 3.8 实验内容 98 3.8.1 Vi使用练习 98 3.8.2 用Gdb调试有问题的程序 99 3.8.3 编写包含多文件的Makefile 101 3.8.4 使用autotools生成包含多文件的Makefile 103 本章小结 105 思考与练习 105 第4章 嵌入式系统基础 106 4.1 嵌入式系统概述 106 4.1.1 嵌入式系统简介 106 4.1.2 嵌入式系统发展历史 107 4.1.3 嵌入式系统的特点 108 4.1.4 嵌入式系统的体系结构 108 4.1.5 几种主流嵌入式操作系统分析 109 4.2 ARM处理器硬件开发平台 111 4.2.1 ARM处理器简介 111 4.2.2 ARM体系结构简介 113 4.2.3 ARM9体系结构 113 4.2.4 S3C2410处理器详解 116 4.3 嵌入式软件开发流程 121 4.3.1 嵌入式系统开发概述 121 4.3.2 嵌入式软件开发概述 122 4.4 实验内容——使用JTAG烧写NAND Flash 128 本章小结 131 思考与练习 132 第5章 嵌入式Linux开发环境的搭建 133 5.1 嵌入式开发环境的搭建 133 5.1.1 嵌入式交叉编译环境的搭建 133 5.1.2 超级终端和Minicom配置及使用 135 5.1.3 下载映像到开发板 142 5.1.4 编译嵌入式Linux内核 145 5.1.5 Linux内核目录结构 149 5.1.6 制作文件系统 149 5.2 U-Boot移植 153 5.2.1 Bootloader介绍 153 5.2.2 U-Boot概述 155 5.2.3 U-Boot源码导读 156 5.2.4 U-Boot移植主要步骤 163 5.2.5 U-Boot常见命令 164 5.3 实验内容——移植Linux内核 164 本章小结 165 思考与练习 165 第6章 文件I/O编程 166 6.1 Linux系统调用及用户编程接口(API) 166 6.1.1 系统调用 166 6.1.2 用户编程接口(API) 167 6.1.3 系统命令 167 6.2 Linux中文件及文件描述符概述 168 6.3 不带缓存的文件I/O操作 168 6.3.1 open和close 168 6.3.2 read、write和lseek 170 6.3.3 fcntl 173 6.3.4 select 178 6.4 嵌入式Linux串口应用开发 183 6.4.1 串口概述 183 6.4.2 串口设置详解 184 6.4.3 串口使用详解 191 6.5 标准I/O开发 194 6.5.1 打开和关闭文件 194 6.5.2 文件读写 197 6.5.3 输入输出 198 6.6 实验内容 201 6.6.1 文件读写及上锁 201 6.6.2 多路复用式串口读写 204 本章小结 207 思考与练习 207 第7章 进程控制开发 208 7.1 Linux下进程概述 208 7.1.1 进程相关基本概念 208 7.1.2 Linux下的进程结构 210 7.1.3 Linux下进程的模式和类型 210 7.1.4 Linux下的进程管理 211 7.2 Linux进程控制编程 212 7.3 Linux守护进程 224 7.3.1 守护进程概述 224 7.3.2 编写守护进程 224 7.3.3 守护进程的出错处理 229 7.4 实验内容 232 7.4.1 编写多进程程序 232 7.4.2 编写守护进程 235 本章小结 238 思考与练习 239 第8章 进程间通信 240 8.1 Linux下进程间通信概述 240 8.2 管道通信 241 8.2.1 管道概述 241 8.2.2 管道创建与关闭 242 8.2.3 管道读写 244 8.2.4 标准流管道 246 8.2.5 FIFO 249 8.3 信号通信 253 8.3.1 信号概述 253 8.3.2 信号发送与捕捉 255 8.3.3 信号的处理 258 8.4 共享内存 264 8.4.1 共享内存概述 264 8.4.2 共享内存实现 265 8.5 消息队列 267 8.5.1 消息队列概述 267 8.5.2 消息队列实现 268 8.6 实验内容 272 8.6.1 管道通信实验 272 8.6.2 共享内存实验 275 本章小结 277 思考与练习 278 第9章 多线程编程 279 9.1 Linux下线程概述 279 9.1.1 线程概述 279 9.1.2 线程分类 280 9.1.3 Linux线程技术的发展 280 9.2 Linux线程实现 281 9.2.1 线程基本操作 281 9.2.2 线程访问控制 288 9.3 实验内容——“生产者消费者”实验 298 本章小结 302 思考与练习 303 第10章 嵌入式Linux网络编程 304 10.1 TCP/IP协议概述 304 10.1.1 OSI参考模型及TCP/IP参考模型 304 10.1.2 TCP/IP协议族 305 10.1.3 TCP和UDP 306 10.2 网络基础编程 308 10.2.1 socket概述 308 10.2.2 地址及顺序处理 309 10.2.3 socket基础编程 314 10.3 网络高级编程 322 10.4 ping源码分析 326 10.4.1 ping简介 326 10.4.2 ping源码分析 327 10.5 实验内容——NTP协议实现 345 本章小结 352 思考与练习 352 第11章 嵌入式Linux设备驱动开发 353 11.1 设备驱动概述 353 11.1.1 设备驱动简介及驱动模块 353 11.1.2 设备文件分类 354 11.1.3 设备号 355 11.1.4 驱动层次结构 355 11.1.5 设备驱动程序与外界的接口 355 11.1.6 设备驱动程序的特点 356 11.2 字符设备驱动编写 356 11.3 LCD驱动编写实例 363 11.3.1 LCD工作原理 363 11.3.2 LCD驱动实例 365 11.4 块设备驱动编写 374 11.4.1 块设备驱动程序描述符 374 11.4.2 块设备驱动编写流程 375 11.5 中断编程 381 11.6 键盘驱动实现 382 11.6.1 键盘工作原理 382 11.6.2 键盘驱动综述 383 11.6.3 键盘驱动流程 384 11.7 实验内容——skull驱动 394 本章小结 398 思考与练习 399 第12章 Qt图形编程 400 12.1 嵌入式GUI简介 400 12.1.1 Qt/Embedded 401 12.1.2 MiniGUI 401 12.1.3 Microwindows、Tiny X等 402 12.2 Qt/Embedded开发入门 402 12.2.1 Qt/Embedded介绍 402 12.2.2 Qt/Embedded信号和插槽机制 405 12.2.3 搭建Qt/Embedded开发环境 409 12.2.4 Qt/Embedded窗口部件 410 12.2.5 Qt/Embedded图形界面编程 414 12.2.6 Qt/Embedded对话框设计 416 12.3 实验内容——使用Qt编写“Hello,World”程序 420 本章小结 428
9 2.1.2 ARM处理器体系结构........................................................................................ 10 2.1.3 Linux 与ARM处理器........................................................................................ 12 2.2 ARM指令集................................................................................................................... 13 2.2.1 ARM微处理器的指令集概述............................................................................ 13 2.2.2 ARM指令寻址方式............................................................................................ 15 2.2.3 Thumb 指令概述................................................................................................. 17 2.3 典型ARM处理器简介.................................................................................................. 17 2.3.1 Atmel AT91RM9200............................................................................................ 17 2.3.2 Samsung S3C2410 ............................................................................................... 18 2.3.3 TI OMAP1510/1610 系列................................................................................... 19 2.3.4 Freescale i.Max21 ................................................................................................ 22 2.3.5 Intel Xscale PXA系列......................................................................................... 23 2.4 三星S3C2410开发板.................................................................................................... 24 2.4.1 三星S3C2410开发板介绍................................................................................. 24 2.4.2 众多的开发板供应商.......................................................................................... 26 第3 章 Linux 编程环境................................................................................................................ 28 ║2 嵌入式系统开发技术详解——基于ARM 3.1 Linux 常用工具.............................................................................................................. 28 3.1.1 Shell简介............................................................................................................ 28 3.1.2 常用Shell命令.................................................................................................... 30 3.1.3 编写Shell脚本.................................................................................................... 38 3.1.4 正则表达式.......................................................................................................... 42 3.1.5 程序编辑器.......................................................................................................... 44 3.2 Makefile .......................................................................................................................... 48 3.2.1 GNU make ........................................................................................................... 48 3.2.2 Makefile规则语法.............................................................................................. 49 3.2.3 Makefile文件中变量的使用.............................................................................. 51 3.3 进制代码工具的使用................................................................................................. 52 3.3.1 GNU Binutils工具介绍....................................................................................... 52 3.3.2 Binutils工具软件使用........................................................................................ 54 3.4 编译器GCC的使用....................................................................................................... 54 3.4.1 GCC编译器介绍................................................................................................. 54 3.4.2 GCC编译选项解析............................................................................................. 56 3.5 调试器GDB的使用技巧.............................................................................................. 60 3.5.1 GDB调试器介绍................................................................................................ 60 3.5.2 GDB调试命令.................................................................................................... 61 3.6 Linux 编程库.................................................................................................................. 66 3.6.1 Linux 编程库介绍............................................................................................... 66 3.6.2 Linux 系统调用................................................................................................... 67 3.6.3 Linux 线程库....................................................................................................... 70 第4 章 交叉开发环境.................................................................................................................. 73 4.1 交叉开发环境介绍......................................................................................................... 73 4.1.1 交叉开发概念模型.............................................................................................. 73 4.1.2 目标板与主机之间的连接.................................................................................. 75 4.1.3 文件传输.............................................................................................................. 76 4.1.4 网络文件系统...................................................................................................... 77 4.2 安装交叉编译工具......................................................................................................... 78 4.2.1 获取交叉开发工具.......................................................................................... 78 4.2.2 主机安装工具.................................................................................................. 79 4.3 主机开发环境配置......................................................................................................... 80 4.3.1 主机环境配置...................................................................................................... 80 4.3.2 串口控制台工具.................................................................................................. 81 4.3.3 DHCP服务.......................................................................................................... 84 4.3.4 TFTP服务........................................................................................................... 85 4.3.5 NFS服务............................................................................................................. 86 第1 章 目录 3║ 4.4 启动目标板..................................................................................................................... 88 4.4.1 系统引导过程...................................................................................................... 88 4.4.2 内核解压启动...................................................................................................... 89 4.4.3 挂接根文件系统.................................................................................................. 90 4.5 应用程序的远程交叉调试............................................................................................. 91 4.5.1 交叉调试的模型.................................................................................................. 91 4.5.2 交叉调试程序实例.............................................................................................. 92 第5章 交叉开发工具.............................................................................................................. 94 5.1 工具软件..................................................................................................................... 94 5.1.1 相关软件工程...................................................................................................... 94 5.1.2 软件版本的匹配.................................................................................................. 95 5.1.3 工具制作流程.................................................................................................. 97 5.2 制作交叉编译器............................................................................................................. 98 5.2.1 准备编译环境...................................................................................................... 98 5.2.2 编译binutils......................................................................................................... 99 5.2.3 编译GCC的辅助编译器.................................................................................. 100 5.2.4 编译生成glibc库.............................................................................................. 101 5.2.5 编译生成完整的GCC编译器.......................................................................... 105 5.3 制作交叉调试器........................................................................................................... 106 5.3.1 编译交叉调试器................................................................................................ 106 5.3.2 编译gdbserver ................................................................................................... 106 第6章 Bootloader..................................................................................................................... 108 6.1 Bootloader ..................................................................................................................... 108 6.1.1 Bootloader 介绍................................................................................................. 108 6.1.2 Bootloader 的启动............................................................................................. 109 6.1.3 Bootloader 的种类..............................................................................................111 6.2 U-Boot编程...................................................................................................................113 6.2.1 U-Boot工程简介................................................................................................113 6.2.2 U-Boot源码结构................................................................................................113 6.2.3 U-Boot的编译....................................................................................................114 6.2.4 U-Boot 的移植....................................................................................................117 6.2.5 添加U-Boot命令...............................................................................................118 6.3 U-Boot的调试.............................................................................................................. 121 6.3.1 硬件调试器........................................................................................................ 121 6.3.2 软件跟踪............................................................................................................ 121 6.3.3 U-Boot启动过程............................................................................................... 123 6.3.4 U-Boot 与内核的关系....................................................................................... 128 ║4 嵌入式系统开发技术详解——基于ARM 6.4 使用U-Boot.................................................................................................................. 133 6.4.1 烧写U-Boot 到Flash ........................................................................................ 134 6.4.2 U-Boot的常用命令........................................................................................... 134 6.4.3 U-Boot的环境变量........................................................................................... 141 第7 章 配置编译内核................................................................................................................ 143 7.1 Linux 内核特点............................................................................................................ 143 7.1.1 Linux 内核版本介绍......................................................................................... 143 7.1.2 Linux 内核特点................................................................................................. 143 7.1.3 Linux 2.6 内核新特性....................................................................................... 144 7.2 配置编译内核源码....................................................................................................... 147 7.2.1 内核源码结构.................................................................................................... 148 7.2.2 内核配置系统.................................................................................................... 150 7.2.3 Kbuild Makefile ................................................................................................. 157 7.2.4 内核编译............................................................................................................ 169 7.2.5 内核编译结果.................................................................................................... 179 7.3 内核配置选项............................................................................................................... 180 7.3.1 使用配置菜单.................................................................................................... 180 7.3.2 基本配置选项.................................................................................................... 181 7.3.3 驱动程序配置选项............................................................................................ 183 第8 章 内核移植浅析................................................................................................................ 185 8.1 移植内核源码............................................................................................................... 185 8.1.1 移植前的准备工作............................................................................................ 185 8.1.2 开发板内核移植................................................................................................ 186 8.1.3 移植后的工作.................................................................................................... 194 8.2 Linux 内核启动过程分析............................................................................................ 194 8.2.1 内核启动流程源代码分析................................................................................ 194 8.2.2 内核自引导程序................................................................................................ 195 8.2.3 内核vmlinux入口............................................................................................ 199 8.2.4 Linux 系统初始化............................................................................................. 201 8.2.5 挂接根文件系统................................................................................................ 206 8.2.6 初始化设备驱动................................................................................................ 208 8.2.7 启动用户空间init进程..................................................................................... 209 第9 章 内核调试技术................................................................................................................ 212 9.1 内核调试方法............................................................................................................... 212 9.1.1 内核调试概述.................................................................................................... 212 9.1.2 学会分析内核源程序........................................................................................ 213 第1 章 目录 5║ 9.1.3 调试方法介绍.................................................................................................... 213 9.2 内核打印函数............................................................................................................... 216 9.2.1 内核映像解压前的串口输出函数.................................................................... 216 9.2.2 内核错误报告子程序........................................................................................ 218 9.2.3 内核打印函数.................................................................................................... 220 9.3 获取内核信息............................................................................................................... 227 9.3.1 系统请求键........................................................................................................ 227 9.3.2 通过/proc接口................................................................................................... 228 9.3.3 通过/sys 接口..................................................................................................... 229 9.3.4 通过ioctl方法................................................................................................... 232 9.4 处理出错信息............................................................................................................... 233 9.4.1 oops信息........................................................................................................... 233 9.4.2 panic ................................................................................................................... 234 9.5 内核源码调试............................................................................................................... 236 9.5.1 KGDB调试内核源代码.................................................................................... 236 9.5.2 BDI2000 调试内核源代码................................................................................ 237 第10 章 制作Linux根文件系统............................................................................................... 242 10.1 根文件系统目录结构................................................................................................. 242 10.1.1 FHS目录结构................................................................................................. 243 10.1.2 文件存放规则.................................................................................................. 246 10.2 添加系统文件............................................................................................................. 247 10.2.1 添加共享接库.............................................................................................. 247 10.2.2 添加内核模块.................................................................................................. 249 10.2.3 添加设备文件.................................................................................................. 251 10.3 init系统初始化过程.................................................................................................. 253 10.3.1 inittab 文件....................................................................................................... 253 10.3.2 System V init启动过程................................................................................... 256 10.3.3 Busybox init启动过程分析............................................................................ 258 10.4 定制文件系统............................................................................................................. 260 10.4.1 定制应用程序.................................................................................................. 260 10.4.2 配置应用程序自动启动.................................................................................. 260 第11 章 充分利用开源软件...................................................................................................... 262 11.1 开放源代码工程介绍................................................................................................. 262 11.1.1 Linux 系统和开源软件................................................................................... 263 11.1.2 开源软件的特点.............................................................................................. 264 11.2 Busybox使用.............................................................................................................. 265 11.2.1 Busybox工程介绍........................................................................................... 265 ║6 嵌入式系统开发技术详解——基于ARM 11.2.2 配置编译Busybox........................................................................................... 265 11.3 X11 图形系统............................................................................................................. 270 11.3.1 X Windows介绍.............................................................................................. 270 11.3.2 Tiny-X 介绍..................................................................................................... 270 11.3.3 GTK 图形库..................................................................................................... 271 11.4 Qt图形库.................................................................................................................... 277 11.4.1 Qt介绍............................................................................................................. 277 11.4.2 Qt/Embedded介绍........................................................................................... 278 11.4.3 Qt/Embedded架构........................................................................................... 280 11.4.4 Qt/Embedded软件包与安装........................................................................... 281 11.5 MiniGUI图形系统..................................................................................................... 283 11.5.1 MiniGUI图形系统概述.................................................................................. 283 11.5.2 MiniGUI移植.................................................................................................. 285 11.6 MicroWindows图形系统........................................................................................... 290 11.7 Linux 下的网络应用.................................................................................................. 292 11.7.1 嵌入式设备的网络化...................................................................................... 292 11.7.2 TCP/IP协议概述............................................................................................. 292 11.7.3 Linux 下的Socket编程.................................................................................. 294 11.8 嵌入式Linux 的串行通信......................................................................................... 304 11.8.1 Linux 下的串口操作....................................................................................... 304 11.8.2 Linux 串口编程实例....................................................................................... 309 第12 章 系统集成测试.............................................................................................................. 314 12.1 系统集成测试............................................................................................................. 314 12.1.1 系统集成测试概述.......................................................................................... 314 12.1.2 系统集成测试要求.......................................................................................... 315 12.2 系统跟踪工具............................................................................................................. 315 12.2.1 为什么需要跟踪工具...................................................................................... 315 12.2.2 Strace................................................................................................................ 316 12.2.3 Ltrace ............................................................................................................... 316 12.2.4 LTT................................................................................................................... 317 12.3 系统性能测量工具..................................................................................................... 321 12.3.1 代码效率测量.................................................................................................. 321 12.3.2 LTP................................................................................................................... 324 12.3.3 LMbench .......................................................................................................... 325 12.4 测量内存泄漏............................................................................................................. 326 12.4.1 mtrace............................................................................................................... 326 12.4.2 dmalloc............................................................................................................. 327 12.4.3 memwatch ........................................................................................................ 328 第1 章 目录 7║ 12.4.4 YAMD.............................................................................................................. 330 第13 章 部署Linux系统........................................................................................................... 333 13.1 部署Linux系统概述................................................................................................. 333 13.1.1 部署Linux系统的基本流程.......................................................................... 333 13.1.2 部署Linux系统的关键问题.......................................................................... 334 13.2 文件系统类型............................................................................................................. 335 13.2.1 EXT2/EXT3 ..................................................................................................... 335 13.2.2 JFS.................................................................................................................... 337 13.2.3 cramfs............................................................................................................... 339 13.2.4 JFFS/JFFS2 ...................................................................................................... 340 13.2.5 YAFFS.............................................................................................................. 341 13.3 存储设备..................................................................................................................... 343 13.3.1 MTD 类型设备................................................................................................ 343 13.3.2 磁盘类型设备.................................................................................................. 344 13.4 部署Linux系统......................................................................................................... 346 13.4.1 安装MTD 工具............................................................................................... 346 13.4.2 使用磁盘文件系统.......................................................................................... 347 13.4.3 使用RAMDISK 设备..................................................................................... 348 13.4.4 使用MTD 设备和JFFS2文件系统............................................................... 349 13.4.5 系统启动和升级.............................................................................................. 351 第14 章 系统设计开发实例...................................................................................................... 352 14.1 需求分析..................................................................................................................... 352 14.2 系统硬件设计............................................................................................................. 354 14.3 系统软件设计............................................................................................................. 364 14.4 系统集成与部署......................................................................................................... 366

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值