嵌入式Linux案例开发指南
分類: 图书,计算机/网络,操作系统/系统开发,LINUX ,
作者: 冯伟,王博 编著
出 版 社: 中国电力出版社
出版时间: 2008-11-1字数: 687000版次: 1页数: 451印刷时间: 2008/11/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787508374789包装: 平装编辑推荐
以案例介绍为主线,系统地介绍了进行嵌入式Linux开发所需要的各种软硬件知识和实际动手能力;
通过两个综合实验的讲解,巧妙地将枯燥的理论知识学习和动手实践紧密地结合起来,具有较强的知识性和趣味性;
示例程序具有通用性,可运行于多种开发板上;
适合高等院校电子类、电气类、控制类等专业高年级本科生、研究生以及广大嵌入式领域的科研和工程技术人员使用。
内容简介
本书以案例的形式系统地讲解了嵌入式Linux开发所需要的各种知识和实际应用。全书共15章,主要介绍了嵌入式Linux系统基础、开发基础、Linux高级编程、驱动开发,以及综合实验等部分知识,主要内容包括Shell编程,GDB调试工具,Linux系统内核的编译、进程和线程的概念,Socket编程,Linux图形化界面开发的技巧,Java语言在嵌入式Linux开发中的应用,嵌入式Linux数据库,Linux驱动开发基础,字符设备驱动开发等知识,最后通过两个综合实验巧妙地将枯燥的知识学习变成了有趣的动手实践。
本书可作为高等院校电子类、电气类、控制类等专业高年级本科生、研究生学习嵌入式Linux的教材,也可供广大嵌入式领域的科研和工程技术人员参考使用,还可作为相关培训班的培训教材。
目录
前言
第1章 嵌入式Linux系统简介
1.1 嵌入式系统
1.1.1 概述
1.1.2 嵌入式系统的发展历史
1.1.3 嵌入式Linux的特性
1.2 嵌入式Linux操作系统简介
1.2.1 Linux系统
1.2.2 从Linux到嵌入式Linux
1.2.3 常用嵌入式Linux系统简介
1.3 常见嵌入式处理器简介
1.3.1 ARM处理
1.3.2 Motorola公司处理器
1.3.3 IBM Power PC处理器
1.3.4 Intel x86系列处理器
1.3.5 MIPS
1.4 选择开发平台
1.4.1 硬件平台的选择
1.4.2 软件平台的选择
1.4.3 集成开发环境考虑的因素
1.4.4 硬件调试工具的选择
1.4.5 软件组件的选择
第2章 Linux编程基础
2.1 Shell编程
2.2 Makefile写法
2.2.1 为什么要使用makefile
2.2.2 基本makefile结构
2.2.3 编写make规则
2.2.4 一个比较有效的makefile
2.2.5 使用autotools建立makefile
2.3 开发工具
2.3.1 Ⅵ工具简介
2.3.2 GCC工具
2.3.3 GDB调试
2.3.4 GDB调试嵌入式系统
第3章 Linux操作系统实践
3.1 Linux操作系统分析
3.1.1 Linux源码文件系统目录
3.1.2 Linux在x86PC机上的启动分析
3.2 Linux内核分析
3.2.1 Linux进程线程调度
3.2.2 内存管理
3.2.3嵌入式Linux实时性解决方案
3.3 Linux操作系统的安装
3.4 内核编译实践
3.4.1 编译步骤
3.4.2 内核选项
第4章 嵌入式Linux系统交叉编译环境的安装与配置
4.1 交叉编译环境的安装
4.1.1 相关软件包的下载
4.1.2 Linux头文件的安装
4.1.3 编译安装binutils
4.1.4 编译安装9cc的C编译器
4.1.5 编译安装9libc
4.2 交叉编译环境的配置
4.2.1 Bootloader概述
4.2.2 常见的Linux bootloader的介绍
4.2.3 三星SMDK2410开发板上的bootloader分析
4.2.4 u—Boot在s3c2410上的移植分析
第5章 Linux系统的进程与线程管理
5.1 进程/线程的概念
5.1.1 进程的概念
5.1.2 线程的概念
5.1.3 进程状态及转换
5.2 进程的基本操作
5.2.1 进程信息获取函数
5.2.2 设置进程的属性
5.2.3 创建进程
5.2.4 执行进程
5.2.5 退出进程
5.2.6 跟踪进程
5.3 进程通信与同步
……
第6章 Linux驱动开发基础
第7章 嵌入式Linux的网络体系结构和网卡驱动
第8章 嵌入式Linux中Socket套接口开发
第9章 Linux字符设备驱动程序
第10章 嵌入式USB设备的驱动开发
第11章 嵌入式Linux Qt程序的开发
第12章 Java与嵌入式开发
第13章 嵌入式数据库的开发
第14章 基于ARM9的嵌入式运程视频采集系统的实现
第15章 综合实验
参考文献
书摘插图
第1章 嵌入式Linux系统简介
嵌入式技术最初应用于军事和工业控制领域,随着微电子技术和软件技术的发展,嵌入式系统在通信、办公自动化和消费电子领域也获得了广泛应用,日益引起了工业界和学术界的重视。
本章将介绍嵌入式开发所需要的软/硬件基础知识,首先介绍嵌入式Linux操作系统的特点;然后介绍市场上流行的主流嵌入式处理器;最后介绍Linux操作系统下开发所需要的工具,如Shell、常用调试工具等。
1.1 嵌入式系统
1.1.1 概述
嵌入式系统(Embedded Systems,ES)是根据应用的要求,将操作系统和功能软件集成于计算机硬件系统中,从而实现软件与硬件一体化的计算机系统。嵌入式系统出现于20世纪60年代末期,它最初被用于控制机电、电话交换机,如今已被广泛应用于工业制造、过程控制、通信、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等众多领域。嵌入式系统在数量上远远超过了各种通用计算机系统:计算机系统核心CPU,每年在全球范围内的产量大概在20亿个左右,其中80%以上应用于各类专用性很强的嵌入式系统中。
一般来说,凡是带有微处理器的专用软/硬件系统都可以称为嵌入式系统。和通用的计算平台相比,嵌入式系统具有功能单一、体积小、功耗低、可靠性高、剪裁性好、软/硬件集成度高、计算能力相对较低等特点。多年来,嵌入式设备中没有操作系统,其主要原因有两点:一是诸如洗衣机、微波炉、电冰箱这样的设备仅需要一道简单的控制程序,以管理数量有限的按钮和指示灯,没有使用操作系统的必要;二是它往往只具有有限的硬件资源,不足以支持一个操作系统。
然而,随着硬件的发展,嵌入式系统变得越来越复杂,最初的控制程序中逐步加入了许多功能,而这些功能中有很多可以由操作系统提供。于是,在20世纪70年代末期出现了嵌入式操作系统(Embedded Operating Systems),它的出现极大地简化了应用程序的设计,并可以有效地保障软件质量和缩短开发周期。简单的ES一般并不使用操作系统,只包含一些控制流程,但是随着嵌入式操作系统日益复杂,简单的流程控制并不能满足系统的需求,这时就必须考虑使用操作系统作为系统软件。因此,嵌入式操作系统就应运而生了。
……