Linux嵌入式系统开发从小白到大牛

Linux嵌入式系统开发从小白到大牛

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

紧跟书中内容的安排顺序并结合具体案例进行学习,带你独立编写个人的嵌入式Linux系统。

内容简介

全书共16章,在章节安排上本着由易到难、深入浅出的原则,具体内容如下。

第1~3章主要介绍Linux嵌入式开发的基础知识;第4、5章分别从硬件角度和软件角度分析嵌入式Linux学习的相关工具;第6~9章是本书的重点,分别对Makefile、U-boot、内核和根文件系统进行了详细介绍。第10~12章介绍了Linux的驱动开发,是本书的难点内容,也是嵌入式Linux系统工程师必须掌握的内容。第13~16章结合当下物联网、车联网等热门技术领域知识,完成了4个综合项目案例。

本书适合广大从事嵌入式Linux系统开发的技术人员、嵌入式Linux系统开发爱好者以及大中专院校相关专业的学生阅读,相关培训院校及高校教师亦可将本书作为教材或参考书。

章节目录

版权信息

前言

第1章 Linux嵌入式系统入门

1.1 小白也要懂——嵌入式系统的应用和发展

1.2 嵌入式系统与嵌入式操作系统

1.2.1 什么是嵌入式系统

1.2.2 什么是嵌入式操作系统

1.3 嵌入式系统的分类与特点

1.3.1 嵌入式系统的分类

1.3.2 嵌入式系统的特点

1.4 嵌入式操作系统架构

1.5 Linux系统版本

1.5.1 Linux系统分类

1.5.2 Ubuntu操作系统的版本

1.6 【案例实战】Linux系统环境搭建

1.6.1 虚拟机安装Ubuntu操作系统

1.6.2 树莓派安装Ubuntu操作系统

1.7 要点巩固

1.8 技术大牛访谈——嵌入式系统的一般开发流程

第2章 Linux操作系统基础知识

2.1 小白也要懂——操作系统的功能

2.2 Linux操作系统基本命令

2.2.1 Linux操作系统权限管理

2.2.2 Linux常用基本命令

2.3 Linux操作系统下的vi和vim编辑器

2.3.1 vi的基本操作

2.3.2 vim的基本操作

2.4 链接文件

2.5 跨平台的文件传输协议

2.5.1 什么是FTP

2.5.2 虚拟机Linux系统启用FTP服务

2.6 【案例实战】Hello World! 两种编程方式

2.7 要点巩固

2.8 技术大牛访谈——Linux操作系统架构

第3章 Linux嵌入式系统下编程

3.1 小白也要懂——C语言的发展过程

3.2 Linux系统下C语言的编程基础

3.2.1 记住标识符

3.2.2 C语言中的数据

3.2.3 运算符和表达式

3.2.4 C语言的三种基本结构

3.3 Linux系统下C语言的进阶编程

3.3.1 C语言的数组

3.3.2 C语言的指针

3.3.3 C语言的函数

3.3.4 C语言的构造数据类型

3.4 Linux系统下C语言的高阶编程

3.4.1 C语言的文件操作

3.4.2 C语言的队列操作

3.4.3 C语言的链表操作

3.4.4 C语言的排序算法

3.5 【案例实战】学生成绩信息管理系统

3.6 要点巩固

3.7 技术大牛访谈——GNU C和标准C的差异

第4章 Linux嵌入式硬件系统

4.1 小白也要懂——微处理器字节序列存储的大小端模式

4.2 嵌入式微处理器的系统架构

4.2.1 冯·诺依曼计算机系统

4.2.2 指令系统

4.2.3 微处理器的内核架构

4.3 嵌入式硬件系统的基本组成部分

4.3.1 时钟系统

4.3.2 中断系统

4.3.3 总线

4.3.4 存储系统

4.3.5 嵌入式微处理器片上外部设备

4.4 【案例实战】微处理器的两种编程方式

4.4.1 微处理器裸机系统的GPIO操作

4.4.2 微处理器移植Linux系统的GPIO操作

4.5 要点巩固

4.6 技术大牛访谈——嵌入式系统微处理器选型方案

第5章 Linux嵌入系统之交叉编译

5.1 小白也要懂——gcc编译器的工作流程

5.2 Linux下gcc编译器的使用方法

5.3 gdb调试工具的使用方法

5.4 什么是交叉编译

5.5 构建交叉编译工具链

5.6 【案例实战】交叉编译工具链的下载与安装

5.7 要点巩固

5.8 技术大牛访谈——编译器和解释器的区别

第6章 Makefile的基础知识

6.1 小白也要懂——make命令的执行过程

6.2 Makefile语法基础

6.3 Makefile一般书写格式

6.4 Makefile变量的引用与赋值

6.5 Makefile模式规则与自动变量

6.6 Makefile伪目标

6.7 Makefile条件判断

6.8 【案例实战】编写自己的Makefile文件

6.9 要点巩固

6.10 技术大牛访谈——Makefile函数的使用

第7章 Linux嵌入系统之U-boot

7.1 小白也要懂——Bootloader与U-boot的区别

7.2 U-boot概述

7.2.1 选择正确的U-boot版本

7.2.2 查看U-boot目录结构

7.3 关于U-boot的源代码编译与GUI界面

7.3.1 编译U-boot

7.3.2 U-boot的GUI界面

7.4 U-boot的Makefile代码分析

7.5 U-boot启动流程

7.5.1 U-boot启动阶段1

7.5.2 U-boot启动阶段2

7.6 【案例实战】IMX6 ULL开发板移植U-boot

7.7 要点巩固

7.8 技术大牛访谈——U-boot在实际项目中的作用

第8章 Linux嵌入式系统之内核

8.1 小白也要懂——关于Linux体系结构和内核结构

8.2 Linux内核的子系统

8.2.1 虚拟文件系统

8.2.2 进程管理子系统

8.2.3 进程通信子系统

8.2.4 内存管理子系统

8.2.5 设备驱动子系统

8.3 Linux内核的配置和编译

8.3.1 选择正确的Linux内核

8.3.2 编译Linux内核

8.3.3 查看Linux内核的目录结构

8.3.4 Linux内核的GUI界面

8.3.5 Linux内核的镜像与Makefile

8.4 Linux内核的启动过程

8.5 【案例实战】IMX6 ULL移植Linux内核

8.6 要点巩固

8.7 技术大牛访谈——浅析init进程

第9章 构建嵌入式Linux根文件系统

9.1 小白也要懂——Linux系统中的文件系统

9.2 根文件系统概述

9.3 Busybox安装与编译过程

9.3.1 Busybox简介

9.3.2 Busybox的安装与配置

9.3.3 Busybox的编译

9.4 构建根文件系统

9.4.1 需要的库文件

9.4.2 添加其他的文件操作

9.4.3 优化根文件系统

9.5 【案例实战】根文件系统的移植测试

9.6 要点巩固

9.7 技术大牛访谈——其他根文件系统的构建工具

第10章 Linux嵌入式系统之设备驱动

10.1 小白也要懂——设备驱动分类

10.2 字符设备驱动的理论基础

10.2.1 字符设备驱动的一般流程

10.2.2 设备号

10.3 编写字符设备驱动程序

10.3.1 旧版本字符设备驱动程序

10.3.2 新版本字符设备驱动程序

10.3.3 字符设备驱动程序的通用操作

10.4 【案例实战】字符设备驱动的移植测试

10.5 要点巩固

10.6 技术大牛访谈——块设备驱动概述

第11章 Linux嵌入式系统之设备树

11.1 小白也要懂——设备树的基础知识

11.2 设备树的基础语法

11.2.1 设备树节点

11.2.2 节点属性

11.2.3 设备树常用的操作函数

11.3 基于设备树的pinctrl和gpio子系统

11.3.1 pinctrl子系统

11.3.2 gpio子系统

11.4 基于设备树的platform设备驱动

11.4.1 platform驱动模型

11.4.2设备树下platform驱动的编写

11.5 【案例实战】基于设备树的platform设备驱动移植

11.6 要点巩固

11.7 技术大牛访谈——设备驱动的分层和分离思想

第12章 Linux嵌入式系统之驱动技术

12.1 小白也要懂——Linux系统下驱动程序框架概述

12.1.1 驱动程序与系统的接口

12.1.2 驱动程序加载到内核的流程

12.2 Linux异常处理——中断处理

12.2.1 中断API函数功能

12.2.2 Linux内核中断机制

12.3 Linux并发与竞争

12.3.1 原子操作

12.3.2 自旋锁

12.3.3 信号量

12.3.4 互斥体

12.4 Linux阻塞和非阻塞IO

12.4.1 阻塞IO策略的实现——等待队列

12.4.2 非阻塞IO策略的实现——轮询

12.5 【案例实战】按键中断实验

12.6 要点巩固

12.7 技术大牛访谈——file_operations结构体代码分析

第13章 自动控制系统应用实例——自动浇灌系统

13.1 小白也要懂——自动浇灌系统项目背景介绍

13.2 自动浇灌系统的功能设计

13.3 自动浇灌系统的硬件设计与实现

13.4 自动浇灌系统的软件设计与实现

13.4.1 驱动程序

13.4.2 应用程序的编写

13.5 自动浇灌系统的联合调试

13.6 要点巩固

13.7 技术大牛访谈——自动化控制系统的组成部分

第14章 物联网应用实例——智能快递柜系统

14.1 小白也要懂——智能快递柜系统项目背景

14.2 智能快递柜系统的功能设计

14.3 智能快递柜系统的硬件设计与实现

14.4 智能快递柜系统的软件设计与实现

14.5 智能快递柜系统的联合调试

14.6 要点巩固

14.7 技术大牛访谈——Linux嵌入式开发板串口驱动框架

第15章 车联网应用实例——车身控制系统

15.1 小白也要懂——车身控制系统项目背景

15.2 车身控制系统的功能设计

15.3 车身控制系统的硬件设计与实现

15.4 车身控制系统的软件设计与实现

15.5 车身控制系统的联合调试

15.6 要点巩固

15.7 技术大牛访谈——Linux系统下的CAN驱动框架

第16章 人工智能应用实例——语音识别控制系统

16.1 小白也要懂——语音识别技术

16.2 语音识别控制系统的功能设计

16.3 语音识别控制系统的硬件设计与实现

16.4 语音识别控制系统的软件设计与实现

16.5 【案例实战】语音识别控制系统的联合调试

16.6 要点巩固

16.7 技术大牛访谈——ReSpeaker 2-Mics Pi HAT驱动环境的安装

Linux嵌入式系统开发从小白到大牛是2021年由机械工业出版社出版,作者赵凯。

得书感谢您对《Linux嵌入式系统开发从小白到大牛》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
嵌入式操作系统.Linux篇:微课版 电子书
本书较为全面地介绍了嵌入式操作系统,全书共10章,分别为嵌入式Linux操作系统简介、嵌入式Linux操作系统的使用、Linux软件管理、Linux用户管理、Linux文件系统、Linux网络配置管理、嵌入式Linux编程环境、Shell编程环境、中断与设备管理、正则表达式,书中还提供了练习题和配套视频。本书可以作为高等院校嵌入式相关专业和计算机相关专业的教材,也可以作为计算机软硬件培训班教材,还
文秘商务办公全能一本通:从职场小白到商务精英 电子书
  1.案例驱动,将枯燥的理论融入案例,生动易懂。   2.提供经典电影电视剧相关片段,直观视听感受。   3.晦涩难懂的理论有图表辅助理解。   4.全面介绍文秘工作,无论是在文秘岗位还是想了解文秘工作的读者,都可以阅读参考。
从小白到高手LogicProX快速上手教程 电子书
基于新版Logic Pro X编写,玩转新版本的实用功能;从软件的选择与下载安装讲起,零基础也能轻松上手。
嵌入式Linux C语言应用开发教程(移动学习版 第2版) 电子书
本书重点介绍嵌入式Linux应用开发的基本概念和核心理论。全书分为10章,包括嵌嵌入式系统基础、嵌入式LinuxC语言程序开发工具、嵌入式LinuxC语言基础、嵌入式Linux开发环境的搭建、嵌入式Linux文件I/O编程、嵌入式Linux多任务编程、嵌入式Linux网络编程、嵌入式Linux设备驱动编程、Qt图形编程和综合案例——仓库信息处理系统。本书在讲解中给出了翔实的实例,并在部分章节后详细
嵌入式Linux与物联网软件开发——C语言内核深度解析 电子书
  针对性强:面向嵌入式Linux内核源码、底层驱动软件开发等技术方向。   精华原创:凝结作者多年研发及教学经验,帮助读者真正深度理解难点。   求职必读:详解常见面试题,完全应对 “嵌入式软件工程师”岗位需求。