图书盲袋,以书为“药”
欢迎光临中图网 请 | 注册
> >>
嵌入式 Linux 软件开发从入门到精通

嵌入式 Linux 软件开发从入门到精通

作者:吕雪峰
出版社:清华大学出版社出版时间:2014-09-01
开本: 16开 页数: 392
中 图 价:¥25.5(5.2折) 定价  ¥49.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
本类五星书更多>

嵌入式 Linux 软件开发从入门到精通 版权信息

嵌入式 Linux 软件开发从入门到精通 本书特色

本书结合作者10多年的培训和实践经验,通过简明扼要的语言,以及实用的案例与方法,对嵌入式linux应用开发中的关键技术点进行了深入浅出的讲解。全书分为基础篇、应用进阶篇和实战提高篇。   本书内容从*简单的案例开始,始终保持实用、易懂的风格,每个章节都设置了实践操作案例,能够帮助读者快速掌握嵌入式linux应用软件的开发技能。   本书主要面向对嵌入式linux应用软件开发感兴趣的初学者,或需要进一步提升技能的开发者,也可作为高等院校计算机类、电子电气类、控制类专业学生学习嵌入式linux应用开发的教材。

嵌入式 Linux 软件开发从入门到精通 内容简介

本书结合作者10多年的培训和实践经验,通过简明扼要的语言,以及实用的案例与方法,对嵌入式Linux应用开发中的关键技术点进行了深入浅出的讲解。全书分为基础篇、应用进阶篇和实战提高篇。 本书内容从*简单的案例开始,始终保持实用、易懂的风格,每个章节都设置了实践操作案例,能够帮助读者快速掌握嵌入式Linux应用软件的开发技能。 本书主要面向对嵌入式Linux应用软件开发感兴趣的初学者,或需要进一步提升技能的开发者,也可作为高等院校计算机类、电子电气类、控制类专业学生学习嵌入式Linux应用开发的教材。

嵌入式 Linux 软件开发从入门到精通 目录

第1章 体验嵌入式系统的魅力
 1.1 嵌入式系统的定义
 1.2 嵌入式系统的历史与现状
  1.2.1 无操作系统阶段
  1.2.2 简单操作系统阶段
  1.2.3 实时操作系统阶段
  1.2.4 面向internet阶段
 1.3 嵌入式与非嵌入式的区别
 1.4 从事嵌入式软件开发的前景
  1.4.1 优势
  1.4.2 从事嵌入式软件开发的缺点
  1.4.3 技术基本要求
 1.5 嵌入式系统的体系结构
  1.5.1 嵌入式处理器
  1.5.2 嵌入式外围设备
  1.5.3 嵌入式操作系统
  1.5.4 嵌入式应用软件
 1
 1.7 延伸阅读:嵌入式系统面临的关键问题
 1.8 小结
第2章 嵌入式linux的前世今生
 2.1 嵌入式linux简介
  2.1.1 嵌入式linux的优势
  2.1.2 嵌入式linux面临的挑战
  2.1.3 发展前景
  2.1.4 a
 2.2 嵌入式linux系统的软件组成
  2.2.1 引导加载程序
  2.2.2 linux内核
  2.2.3 文件系统
  2.2.4 用户应用程序
 2.3 嵌入式系统软件研发的关键技术
  2.3.1 开发流程
  2.3.2 交叉编译和链接
  2.3.3 交叉调试
  2.3.4 系统测试
 2.4 系统启动过程
 2.5 延伸阅读:开源、gpl与posix简介
  2.5.1 开源
  2.5.
  2.5.3 
 2.6 小结
第3章 零基础安装虚拟机与linux操作系统
 3.1 vmware workstation的安装
 3.2 配置vmware workstation并便捷安装fedo
 3.3 配置vmware workstation手动安装fedo
 3.4 安装fedo
 3.5 vmware tools的安装
 3.6 使用已安装好操作系统的虚拟机
 3.7 延伸阅读:打开fedora 16的root账号
 3.8 小结
第4章 快速构建嵌入式linux开发环境
 4.1 安装交叉编译器
  4.1.1 安装交叉编译器
  4.1.2 建立链接
  4.1.3 查看交叉工具是否安装正确
 4.2 构建开发板运行所需的环境
  4.2.1 编译一级启动文件x-
  4.2.2 编译二级启动文件
  4.2.3 编译内核
  4.2.4 制作文件系统镜像
 4.3 更新系统文件
  4.3.1 更新文件从sd卡启动
  4.3.2 更新文件从nand flash启动
 4.4 小结
第5章 配置串口通信工具
5.1 配置windows xp的超级终端
5.2 串口信息的捕获
5.3 在linux中配置m
5.4 小结
第6章 配置nfs文件系统服务
 6.1 查看宿主机上的安装包
 6.2 配置网络文件系统
 6.3 启动nfs服务
  6.3.1 在fedora 16下面运行service nfs start命令失败
  6.3.2 在fedora 16下面运行service nfs-server start失败
 6.4 本机测试
 6.5 在开发板上测试
  6.5.1 常见的测试过程
  6.5.2 nfs无法挂载的问题分析
 6.6 小结
第7章 开始编写**个程序
 7.1 在宿主机上编写**个程序
 7.2 编写开发板上的上**个程序
 7.3 小结
第8章 linux开发入门**私房菜
 8.1 程序安装目录
 8.2 头文件
 8.3 库文件
 8.4 gcc简介
 8.5 make简介
 8.6 小结
第9章 shell:用户与linux沟通的桥梁
 9.1 shell是如何工作的
 9.2 shell的“兄弟姐妹”
 9.3 必须熟悉的shell命令
  9.3.1 命令行
  9.3.2 选项和参数
  9.3.3 命令行特征
 9.4 理解shell中的特殊字符
  9.4.1 通配符
  9.4.2 引号
  9.4.3 注释符
 9.5 畅通交流:标准输入/输出和重定向
  9.5.1 标准输入与输出
  9.5.2 输入重定向
  9.5.3 输出重定向
  9.5.4 管道
 9.6 命令替换
 9.7 实战体验:在bash中的操作
  9.7.1 命令和文件名扩展特性
  9.7.2 命令行编辑
  9.7.3 命令历史
  9.7.4 命令别名
 9.8 定制
 9.9 小结
第10章 文本编辑利器
  10.1 vi简介
  10.1.1 命令行模式
  10.1.2 文本输入模式
  10.1.3 末行模式
  10.1.4 模式之间的切换
  10.2 vi的进入与退出
  10.2.1 vi的进入
  10.2.2 退出
  10.3 vi中的行号
 10.4 光标移动操作
 10.5 按字移动光标
 10.5.1 w和w命令
 10.5.2 e和e命令
 10.5.3 b和b命令
 10.6 屏幕滚动
  10.6.1 滚屏命令
  10.6.2 分页命令
  10.6.3 状态命令
 10.7 屏幕调零命令
 10.8 文本插入操作
 10.8.1 插入(insert)命令
 10.8.2 打开(open)命令
 10.9 文本修改
 10.9.1 文本删除
 10.9.2 取消上一命令(
 10.9.3 重复命令(
  10.10 实现替换功能
  10.11 小结
第11章 应知应会的基本函数
 11.1 文件操作函数
  11.1.1 文件的创建与打开操作
  11.1.2 对文件进行读写
  11.1.3 文件的关闭操作
  11.1.4 改变文件读写偏移位置: ls
  11.1.5 实例:文件的打开关闭、读写 与设置文件读写指针
  11.1.6 文件描述符和流
  11.1.7 文件控制操作函数fc
  11.1.8 控制设备文件参数的函数 io
  11.1.9 文件的权限修改
  11.1.10 文件的属主与组群修改
  11.1.11 获得文件的状态
  11.1.12 文件的其他操作
 11.2 目录操作
  11.2.1 创建和删除目录的函数
  11.2.2 打开目录
  11.2.3 读取目录
  11.2.4 关闭目录
  11.2.5 改变工作目录的函数
  11.2.6 取得当前的工作目录
  11.2.7 实例:文件列表程序
 11.3 建立临时文件
 11.4 获取进程号
 11.5 获取节点信息
 11.6 小结
第12章 时间问题的处理
 12.1 时钟类型
  12.1.1 硬件时钟
  12.1.2 系统时钟
  12.1.3 系统时钟与硬件时钟的关系
 12.2 utc、cst与
 12.3 linux下常用的时间类型
  12.3.1 time_t时间类型
  12.3.2 struct tm时间类型
  12.3.3 struct timeval时间类型
  12.3.4 struct timespec时间类型
  12.3.5 struct tim
  12.3.6 获得自epoch以来的秒数
 12.4 获得与修改系统时间
 12.5 时间格式转换
  12.5.1 asctime函数
  12.5.2 ctime函数
  12.5.3 gmtime函数
  12.5.4 localtime函数
  12.5.5 mktime函数
 12.6 使线程睡眠的时间函数
  12.6.1 sleep函数
  12.6.2 usleep函数
  12.6.3 nanosleep函数
  12.6.4 示例:为nanosleep()函数指定秒数和纳秒数
  12.6.5 alarm函数
 12.7 延伸阅读:其他函数
 12.8 小结
第13章 简单的网络编程实战
 13.1 基础知识
  13.1.1 c/s与b/s结构
  13.1.2 udp/tcp协议
  13.1.3 什么是s
 13.2 udp套接字编程实例
  13.2.1 服务端
  13.2.2 客户端
  13.2.3 编译
  13.2.4 运行结果
  13.2.5 使用wireshark捕获数据包
  13.2.6 udp套接字网络编程涉及的系统调用过程
  13.2.7 建立s
  13.2.8 配置s
  13.2.9 数据传输
  13.2.10 延伸阅读:关闭s
 13.3 tcp套接字编程实例
  13.3.1 服务端
  13.3.2 客户端
  13.3.3 编译
  13.3.4 运行结果
  13.3.5 使用wireshark捕获数据包
  13.3.6 tcp套接字网络编程所涉及的系统函数
  13.3.7 建立连接
  13.3.8 数据传输
 13.4 小结
第14章 简单的线程操作实战
 14.1 为何嵌入式系统中进程不再是重点
  14.1.1 进程与线程
  14.1.2 线程的优势
  14.1.3 我们的问题
  14.1.4 进程通信的统一方式:socket通信
  14.1.5 简单的线程操作
 14.2 创建线程
 14.3 获得本线程的标识符
 14.4 结束线程
 14.5 延伸阅读:操作线程共享变量
 14.6 小结
第15章 重点剖析:线程同步实例
 15.1 互斥锁
  15.1.1 再谈线程共享变量的操作
  15.1.2 互斥锁的创建
  15.1.3 互斥锁的销毁
  15.1.4 互斥锁的操作
 15.2 读写锁
  15.2.1 读写锁实例
  15.2.2 读写锁的创建
  15.2.3 获取读写锁中的读锁
  15.2.4 获取读写锁中的写锁
  15.2.5 解除锁定的读写锁
  15.2.6 销毁读写锁
 15.3 条件变量
  15.3.1 忙等待
  15.3.2 条件变量
  15.3.3 条件变量的创建
  15.3.4 条件变量的销毁
  15.3.5 条件变量的等待和激发
  15.3.6 互斥锁和条件变量的结合使用
 15.4 线程死锁
 15.5 延伸阅读:解决死锁的方法
  15.5.1 解决方法一
  15.5.2 解决方法二
 15.6 小结
第16章 进阶私房菜:再谈线程
 16.1 线程参数的传递
  16.1.1 单个参数传递
  16.1.2 多个参数传递
 16.2 线程私有数据
  16.2.1 创建
  16.2.2 删除
  16.2.3 读写
 16.3 修改线程属性
  16.3.1 可以修改的线程属性
  16.3.2 修改线程参数示例
 16.4 延伸阅读:线程池
  16.4.1 为什么需要线程池
  16.4.2 构建线程池框架
  16.4.3 简单的线程池示例
 16.5 小结
第17章 进阶私房菜:再谈网络编程
 17.1 对sigpipe信号的处理
   17.1.1 示例1:sigpipe信号的默认处理
   17.1.2 示例2:重定义sigpipe信号的默认动作
   17.1.3 示例3:忽略sigpipe信号
   17.1.4 示例4:直接使用msg_nosignal标识
 17.2 修改socket缓冲区的大小
   17.2.1 setsockopt函数与getsockopt函数
   17.2.2 示例:修改socket缓冲区的大小
 17.3 检测服务器与客户端的连接是否有效
 17.4 服务器的多线程处理
   17.4.1 客户端
   17.4.2 服务器
 17.5 延伸阅读:重?
   17.5.1 time_wait的两个作用
   17.5.2 如何结束time_wait状态
   17.5.3 实现可立即重启的服务器
 17.6 小结
第18章 重点突破:网络编程的字节流处理
 18.1 面向字节流的分包问题
   18.1.1 数据包的常见结构
   18.1.2 线程间数据的交互——环形缓冲区的实现
   18.1.3 环形缓冲区
   18.1.4 封包与解包
   18.1.5 网络整合使用实例
   18.1.6 错误数据包的测试
 18.2 再谈生产者与消费者的示例
 18.3 小结
第19章 嵌入式b/s架构开发要点
 19.1 几种嵌入式web服务器的比较
  19.1.1
   19.1.2 t
  19.1.3 mini_
   19.1.4 mon
   19.1.5 lig
   19.1.6 a
   19.1.7 a
 19.2 boa简介
 19.3 移植与测试boa的环境配置
 19.4 boa的移植
   19.4.1 下载源代码
   19.4.2 编译
   19.4.3 安装到开发板的linux文件系统
   19.4.4 配置
   19.4.5 测试
 19.5 使用
   19.5.1 简介
   19.5.2 配置目标板文件系统
   19.5.3 编写hellocgi.c程序
   19.5.4 交叉编译
   19.5.5 测试
 19.6 复杂网页测试
   19.6.1 设置目标板文件系统/var/www的目录结构
   19.6.2 编制index
   19.6.3 测试
 19.7 小结
第20章 sqlite数据库移植与实战
 20.1 sqlite的特性
 20.2 sqlite的移植过程
  20.2.1 移植的环境
   20.2.2 移植步骤
 20.3 如何使用linux c操作s
 20.4 数据库的并发访问
 20.5 小结
附录a 网络分析工具wireshark的使用
展开全部

嵌入式 Linux 软件开发从入门到精通 作者简介

彭文波,从事互联网产品工作,曾在省级电子商务认证中心从事安全开发工作,曾就职于多家专业网管软件公司,先后参与了电子商务认证系统、移动网络管理系统等产品的开发。

商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服