嵌入式系统是现在*热门的计算机应用领域之一,嵌入式linux是应用*广泛的嵌入式操作系统之一,嵌入式c语言在其中起着至关重要的作用。《嵌入式linux c语言应用程序设计(修订版)》共分13章,全面讲解了嵌入式系统基础,嵌入式linux c语言开发工具、语言基础,文件i/o相关实例,arm linux进程线程开发实例,arm linux网络开发实例,嵌入式linux设备驱动开发以及视频监控系统实例。《嵌入式linux c语言应用程序设计(修订版)》可作为大中专院校嵌入式相关专业本科生、研究生的教材,也可供广大希望转入嵌入式领域的科研和工程技术人员使用。
详细讲解嵌入式linux c语言基础、应用程序开发以及相应实例“十二五”国家重点图书出版规划项目全面涵盖开发细节,实例详尽丰富开发流程清晰易懂,注重实际应用嵌入式linux c初学者的首选教程
第1章嵌入式系统基础知识
1.1嵌入式系统概述
1.1.1嵌入式系统的发展史
1.1.2嵌入式系统的定义与特点
1.1.3嵌入式系统的特点
1.2嵌入式系统的组成
1.2.1嵌入式系统的硬件架构
1.2.2嵌入式操作系统
1.2.3嵌入式应用软件
1.3arm处理器平台介绍
1.3.1arm处理器简介
1.3.2arm处理器系列
1.3.3arm体系结构简介
1.3.4s3c2410处理器简介
1.4嵌入式系统硬件平台选型
1.4.1硬件平台的选择
1.4.2arm处理器选型
1.5嵌入式系统开发概述
1.5.1嵌入式系统开发流程
1.5.2嵌入式软件开发流程
本章小结
动手练练
第2章嵌入式linux c语言开发工具
2.1嵌入式linux下c语言概述
2.1.1c语言简史
2.1.2c语言特点
2.1.3嵌入式linux c语言编程环境
2.2嵌入式linux编辑器vi的使用
2.2.1vi的基本模式
2.2.2vi的基本操作
2.2.3vi的使用实例分析
2.3嵌入式linux编译器gcc的使用
2.3.1gcc概述
2.3.2gcc编译流程分析
2.3.3gcc警告提示
2.3.4gcc使用库函数
2.3.5gcc代码优化
2.4嵌入式linux调试器gdb的使用
2.4.1gdb使用实例
2.4.2设置/删除断点
2.4.3数据相关命令
2.4.4调试运行环境相关命令
2.4.5堆栈相关命令
2.5make工程管理器
2.5.1makefile基本结构
2.5.2makefile变量
2.5.3makefile规则
2.5.4make使用
2.6emacs综合编辑器
2.6.1emacs的启动与退出
2.6.2emacs的基本编辑
2.6.3emacs的c模式
2.6.4emacs的shell模式
本章小结
动手练练
第3章构建嵌入式linux系统
3.1嵌入式系统开发环境的构建
3.1.1嵌入式交叉编译环境搭建
3.1.2minicom和超级终端配置及使用
3.1.3宿主机服务配置
3.2bootloader
3.2.1bootloader的概念
3.2.2bootloader启动流程分析
3.2.3u-boot概述
3.2.4u-boot源码导读
3.3编译嵌入式linux内核
3.4linux内核目录结构
3.5制作文件系统
本章小结
动手练练
第4章嵌入式linux c语言基础——数据、表达式
4.1嵌入式linux c语言概述
4.2基本数据类型
4.2.1整型家族
4.2.2实型家族
4.2.3字符型家族
4.2.4枚举家族
4.2.5指针家族
4.3变量与常量
4.3.1变量的定义
4.3.2typedef
4.3.3常量定义
4.3.4arm-linux基本数据类型综合应用实例
4.4运算符与表达式
4.4.1算术运算符和表达式
4.4.2赋值运算符和表达式
4.4.3逗号运算符和表达式
4.4.4位运算符和表达式
4.4.5关系运算符和表达式
4.4.6逻辑运算符和表达式
4.4.7sizeof操作符
4.4.8条件(?)运算符
4.4.9运算符优先级总结
4.4.10arm-linux运算符综合实例
本章小结
动手练练
第5章嵌入式linux c语言基础——控制语句及函数
5.1嵌入式linux c语言程序结构概述
5.1.1 嵌入式linux c语言3种程序结构
5.1.2 嵌入式linux c语言基本语句
5.2选择语句
5.2.1if语句
5.2.2switch语句
5.2.3arm-linux选择语句应用实例
5.3循环语句
5.3.1while和do-while语句
5.3.2for循环语句
5.3.3break和continue语句
5.3.4arm-linux循环语句应用实例
5.4goto语句
5.4.1goto语句语法
5.4.2arm-linux中goto语句应用实例
5.5函数的定义与声明
5.5.1c语言函数概述
5.5.2函数定义
5.5.3函数声明
5.5.4arm-linux函数定义与声明实例
5.6函数的参数、值和基本调用
5.6.1函数的参数
5.6.2函数的值
5.6.3函数的基本调用
5.7函数的嵌套、递归调用
5.7.1函数的嵌套调用
5.7.2函数的递归调用
5.7.3arm-linux函数调用应用实例
本章小结
动手练练
第6章嵌入式linux c语言基础——数组、指针与结构
6.1数组
6.1.1一维数组
6.1.2字符串
6.1.3二维数组
6.2指针
6.2.1指针的概念
6.2.2指针变量的操作
6.2.3指针和数组
6.2.4指针高级议题
6.3结构体与联合
6.3.1结构体
6.3.2联合
6.3.3arm-linux指针、结构体使用实例
本章小结
动手练练
第7章嵌入式linux c语言基础——高级议题
7.1预处理
7.1.1预处理的概念
7.1.2预定义
7.1.3文件包含
7.1.4条件编译
7.2c语言中的内存分配
7.2.1c语言程序所占内存分类
7.2.2堆和栈的区别
7.3嵌入式linux可移植性考虑
7.3.1字长和数据类型
7.3.2数据对齐
7.3.3字节顺序
7.4c和汇编的接口
7.4.1内嵌汇编的语法
7.4.2编译器优化介绍
7.4.3c语言关键字volatile
7.4.4memory描述符
7.4.5gcc对内嵌汇编语言的处理方式
本章小结
动手练练
第8章嵌入式linux c语言基础——arm linux内核常见数据结构
8.1链表
8.1.1链表概述
8.1.2单向链表
8.1.3双向链表
8.1.4循环链表
8.1.5arm linux中链表使用实例
8.2树、二叉树、平衡树
8.2.1树
8.2.2二叉树
8.2.3平衡树
8.2.4arm linux中红黑树使用实例
8.3哈希表
8.3.1哈希表的概念及作用
8.3.2哈希表的构造方法
8.3.3哈希表的处理冲突方法
8.3.4arm linux中哈希表使用实例
本章小结
动手练练
第9章文件i/o相关实例
9.1linux系统调用及用户编程接口(api)
9.1.1系统调用
9.1.2用户编程接口(api)
9.1.3系统命令
9.2arm linux文件i/o系统概述
9.2.1虚拟文件系统(vfs)
9.2.2通用文件模型
9.2.3arm linux的设备文件
9.3文件i/o操作
9.3.1不带缓存的文件i/o操作
9.3.2标准i/o开发
9.4嵌入式linux串口应用开发
9.4.1串口概述
9.4.2串口设置详解
9.4.3串口使用详解
本章小结
动手练练
第10章arm linux进程线程开发实例
10.1arm linux进程线程管理
10.1.1进程描述符及任务结构
10.1.2进程的调度
10.1.3linux中的线程
10.1.4linux中进程间通信
10.2arm linux进程控制相关api
10.3arm linux进程间通信api
10.3.1管道通信
10.3.2信号通信
10.3.3共享内存
10.3.4消息队列
10.4arm linux线程相关api
10.5linux守护进程
10.5.1守护进程概述
10.5.2编写规则
10.5.3守护进程实例
本章小结
动手练练
第11章arm linux网络开发实例
11.1tcp/ip协议简介
11.1.1tcp/ip的分层模型
11.1.2tcp/ip分层模型特点
11.1.3tcp/ip核心协议
11.2网络基础编程
11.2.1socket概述
11.2.2地址及顺序处理
11.2.3socket基础编程
11.3web服务器
11.3.1web服务器功能
11.3.2web服务器协议
11.3.3web服务器协议
11.3.4运行web服务器
11.4traceroute程序实例
11.4.1traceroute原理简介
11.4.2traceroute实例与分析
11.4.3traceroute实例运行结果
本章小结
动手练练
第12章嵌入式linux设备驱动开发
12.1设备驱动概述
12.1.1设备驱动简介
12.1.2设备驱动程序的特点
12.2模块编程
12.2.1模块编程简介
12.2.2模块相关命令
12.2.3模块编程流程
12.3字符设备驱动编写
12.4块设备驱动编写
12.4.1块设备驱动程序描述符
12.4.2块设备驱动编写流程
12.5简单的skull驱动实例
12.5.1驱动简介
12.5.2驱动编写流程
12.5.3结果分析
12.6lcd驱动编写实例
12.6.1lcd工作原理
12.6.2lcd驱动实例
本章小结
动手练练
第13章视频监控系统
13.1视频监控系统概述
13.1.1系统组成
13.1.2音视频服务器
13.1.3音视频客户端
13.1.4通信传输控制协议
13.2基本数据结构
13.3功能实现
13.3.1传输控制
13.3.2用户检验
13.3.3控制命令处理
13.3.4云台转动控制
13.3.5线程相关
本章小结
动手练练
本书内容来源于北京华清远见科技信息有限公司(http://www.farsight.com.cn)的培训课程资料,书中嵌入式Linux系统开发、嵌入式Linux应用开发、嵌入式Linux驱动开发、嵌入式系统硬件设计的相关资料,请见http://www.farsight.com.cn/download。本书由孙琼执笔,孙天泽、孙纪坤审定写作提纲,另外感谢以下人员为本书所做的工作:刘忠欧、孙颂武、汪荷君、林雪梅、孙明、魏小康、杨玉林、任震宇、杨林、黄昕、张全、田彦、王辉、张强、陈曦等。
伦道夫·凯迪克图画书:童心系列(5册) 本书特色 “世界插画大师儿童绘本精选丛书”之伦道夫·凯迪克图画书系列共15本,选择了知名插画大师伦道夫·凯迪克的15本经...
发现世界-皮卡西大故事书 本书特色 小朋友心目中的精灵是什么样子的?戴着可爱的红色帽子、翘着高高的小尾巴的皮卡西有没有见过?也许你并不陌生。在欧洲,皮卡西的故事...
《杨鹏大奖科幻桥梁书:怪兽阿力酷》内容简介:“杨鹏大奖科幻桥梁书”系列(全6册)是专为低年级小学生打造的、以科幻为主题的美绘
狼牙山五壮士-中国连环画优秀作品读本 本书特色 《中国连环画优秀作品读本:狼牙山五壮士》是由上海人民美术出版社出版的。狼牙山五壮士-中国连环画优秀作品读本 内容...
神机妙藏-终极米迷-087 本书特色 美国迪士尼公司编著的《神机妙藏》是一本动画卡通书。内含讲述米老鼠故事的《神机妙藏》、讲述唐老鸭故事的《幸运钞票》、讲述史高...
大战红孩儿 车迟国斗法 本书特色 《大战红孩儿?车迟国斗法》由辽宁少年儿童出版社出版。《大战红孩儿?车迟国斗法》是《幼儿美绘本》之一。《大战红孩儿?车迟国斗法》...
《SAI超级绘画技法》介绍了11幅著名绘师描绘的作品,书中以实际操作的图片和文字说明,将每幅作品的绘画过程都做了详尽而细致的说
血族-6 本书特色 向神献礼的猎巫行动,揭开黑塔与圣地的战斗序幕!巫师与圣徒的对决,魔法与念刃的碰撞,谁将生存到*后?只要破解了密码,都可以使用魔法的力量!留在...
公主驾到-4-漫画版 本书特色 《公主驾到》漫画版以异域公主宝拉来到中国为线索,展开了一系列青春、暖心的故事。这部漫画中华丽的异域服装、清新可爱的日常装扮、青春...
DAVY BACK FIGHT-航海王-卷三十三 本书特色 由尾田荣一郎编著的这本《航海王(卷33DAVY BACK FIGHT)》讲述了:“会失去同伴”的恐怖...
深夜食堂 本书特色下班后,总有个地方在等着你……吃饱了,心暖了,明天请继续加油!台日韩千万读者口碑相传,温情又治愈的都市美食漫画众所期盼的《深夜食堂》中文简体版...
趣味认知涂色书-(四册) 本书特色 ●认知、描红、涂色游戏的完美结合●认知内容为2~6岁孩子接受度*广的动物、植物、生活用品、交通工具等。●手脑协调发展在锻炼孩...
奇趣屋-图画捉迷藏-贴画版 本书特色 《放大镜图画搜寻队:图画捉迷藏(奇趣屋贴画版)》由美国儿童教育专家和一批专门为智力杂志绘图的专业绘者合力完成,可以极大地提...
偷星九月天-39 本书特色 《知音漫客丛书·轻漫画经典系列:偷星九月天39》是周洪滨、小松所著的一部漫画作品。讲述了孤独地盛开在尘世的蔷薇花,美丽而冷漠的眼眸里...
《黄冈秘卷》内容简介:黄冈大地人文品格与众不同,本书不满足于一般性地描述尽人皆知的“地方性知识”,如东坡赤壁、黄麻暴动等等
这只驼鹿是我的 本书特色男孩遇见驼鹿,叫它“大大马”,让它做自己的宠物,宠物就要做什么都听主人自己的……可是,男孩发现老奶奶叫它“阿罗”,老爷爷叫它“小多”。驼...
美在钩编 本书特色 日本编织大师的超人气原创设计不断加印的热销好书原版引进19款优雅作品编织过程全图解,新手也能一学就会。美在钩编 内容简介 这本图文并茂、通俗...
世态卷-丰子恺儿童漫画选 内容简介 丰子恺先生是我国现代画家、散文家、美术教育家、音乐教育家、漫画家和翻译家,是一位卓有成就的文艺大师。他的文章风格雍容恬静,漫...
螺丝钉 我的第一套身边科学启蒙漫画:冰箱大作战 本书特色 《螺丝钉 我的*套身边科学启蒙漫画》系列图书改编自俄罗斯*受欢迎的儿童科普动画《螺丝钉》。讲述了小男孩...
爆笑王国-50 本书特色 1. 本次策划主题包括:“王国怪癖大擂台!”“你的血型‘怪’了吗?”“地球人怪癖研究报告”“同学,这个怪癖会违纪!”“教室里的大怪咖”...