您好,欢迎光临有路网!
嵌入式系统Linux内核开发实战指南(ARM平台)
QQ咨询:
有路璐璐:

嵌入式系统Linux内核开发实战指南(ARM平台)

  • 作者:王洪辉
  • 出版社:电子工业出版社
  • ISBN:9787121079191
  • 出版日期:2009年03月01日
  • 页数:1124
  • 定价:¥168.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    《嵌入式系统Linux开发实战指南(ARM平台)》凝聚了作者12年的工作经验和学习心得与体会,内容覆盖了嵌入式系统Linux内核开发的各个方面。
    作者根据自己11年的一线工作经验,介绍了嵌入式系统的概念、组织架构、工作原理、软硬件设计流程、开发调试方法以及嵌入式Linux的开发方法与技能,其中列举了许多作者工作中的实际案例;
    另外,作者根据自己反复阅读Linux2.6内核源代码和Linux内核参考书的笔记与心得,用很大篇幅深入剖析了Linux内核的组成结构以及各组件的实现原理,在阐述理论的同时对内核源代码进行详细注释,这样既加深了对Linux内核原理的理解,又可引导读者自行阅读、分析内核源代码;
    该书共32章,分为四部分,每一部分的内容既相互独立,又彼此关联,读者可以根据自己的实际情况有选择地阅读,不必严格依照书中的章节顺序。
    文章节选
    第1章 嵌入式系统概述
    1.1 嵌入式系统概念
    到目前为止,对嵌入式系统概念并没有一个统一的定义,这里引用几个别人的定义:
    《嵌入式Linux应用开发详解》中说:嵌入式系统就是以应用为**,以计算机技术为基础,软硬件可裁减,适合应用系统对功能、可靠性、成本、体积和功耗要求的专用的计算机系统。
    《Linux与嵌入式系统》中引用IEE(电气工程师协会)的定义说:嵌入式系统是用来控制或监视机器、装置或工厂等大规模系统的设备。
    而翻译过来的《嵌入式Linux》与《构建嵌入式Linux系统》中却都没有对“嵌入式系统”下一个明确的定义。
    一般来讲,可以把由微处理器加上必要的外围电路,再根据需求对微处理器进行编程,这样组成的一个能够实现一定功能的完整系统叫做嵌入式系��。嵌入式系统是硬件与软件的统一,嵌入式系统中使用的微处理器叫做嵌入式处理器,嵌入式处理器是针对x86架构处理器而言的,广义上讲,可以把所有x86架构之外的其他处理器都叫做嵌入式处理器。但随着处理器设计技术的发展和各种新应用的产生,一些x86架构处理器也开始应用到嵌入式系统中,而嵌入式处理器也可以设计成诸如PC、笔记本电脑、服务器等产品,所以要给嵌入式系统和嵌入式处理器下严格的定义也就变得越来越困难。基于这些原因,我们主要讲讲嵌入式系统与嵌入式处理器的特点,了解了这些特点,至于叫什么名字就不必太在意了,名字只是一个代号而已,当然对于理论工作者来说,这或许是个值得花些时间去思考归纳的问题。
    ……
    目录
    第1部分 嵌入式系统硬件开发
    第1章 嵌入式系统概述
    1.1 嵌入式系统概念
    1.2 嵌入式处理器
    1.3 嵌入式系统应用
    1.4 嵌入式系统发展
    1.5 一些嵌入式处理器的硬件特性比较
    第2章 ARM处理器概述
    2.1 ARM发展历程
    2.2 ARM处理器特点
    2.3 ARM处理器应用
    2.4 ARM体系架构
    2.5 ARM处理器
    第3章 ARM指令及其寻址方式
    3.1 ARM处理器的程序状态寄存器(PSR)
    3.2 ARM指令的条件码
    3.3 ARM指令介绍
    3.4 ARM指令寻址方式
    3.5 ARM汇编伪操作(Directive)
    3.6 ARM汇编伪指令
    3.7 Thumb指令介绍
    第4章 ARM处理器内存管理单元(MMU)
    4.1 ARM处理器中CP15协处理器的寄存器
    4.2 MMU简介
    4.3 系统访问存储空间的过程
    4.4 ARM处理器地址变换过程
    4.5 ARM存储空间访问权限控制
    4.6 TLB操作
    4.7 存储访问失效
    第5章 ARM处理器的Cache和Write Buffer
    5.1 Cache和Write Buffer一般性介绍
    5.2 ARM处理器中的Cache和Write Buffer
    5.3 ARM处理器的快速上下文切换技术
    第6章 ARM处理器存储访问一致性问题
    6.1 存储访问一致性问题介绍
    6.2 Linux中解决存储访问一致性问题的方法
    第7章 ARM处理器工作模式与异常中断处理
    7.1 ARM处理器工作模式
    7.2 ARM处理器异常中断向量表和优先级
    7.3 ARM处理器异常中断处理
    7.4 ARM处理器的中断(IRQ或FIQ)
    第8章 ARM处理器启动过程
    8.1 ARM处理器上电/复位操作
    8.2 ARM处理器系统初始化过程
    8.3 ARM处理器系统初始化编程注意事项
    第9章 嵌入式系统设计与调试
    9.1 嵌入式系统设计流程
    9.2 嵌入式系统硬件原理设计与审核
    9.3 硬件设计工具软件
    9.4 嵌入式系统调试仿真工具
    9.5 嵌入式系统调试诊断方法
    第10章 自制简易JTAG下载烧写工具
    10.1 JTAG简介
    10.2 简易JTAG线缆原理
    10.3 简易JTAG烧写代码分析
    第2部分 Linux内核开发初步
    第11章 Bootloader
    11.1 Bootloader的任务和作用
    11.2 各种各样的Bootloader
    11.3 Bootloader编译环境
    11.4 Bootloader的移植与裁减
    11.5 编译Bootloader
    11.6 烧写Bootloader
    11.7 Bootloader使用举例
    11.8 Bootloader修改举例
    第12章 创建嵌入式Linux开发环境
    12.1 安装Linux host
    12.2 在虚拟机中安装Linux host
    12.3 安装Linux交叉编译环境
    12.4 在主机上设置TFTP Server
    12.5 在主机上设置DHCP Server
    12.6 在主机上设置Telnet server
    12.7 在开发过程中使用NFS
    12.8 设置**终端
    第13章 编译Linux内核
    13.1 获取Linux内核源代码
    13.2 Linux内核目录结构
    13.3 配置Linux内核
    13.4 编译Linux内核
    第14章 创建Linux根文件系统
    14.1 根文件系统概述
    14.2 根文件系统目录结构
    14.3 获取根文件系统组件源代码
    14.4 编译根文件系统源代码
    14.5 创建一个32MB的RAMDISK根文件系统
    14.6 在根文件系统中添加驱动模块或者应用程序
    第15章 固化Linux内核和根文件系统
    第16章 关于?Clinux
    16.1?Clinux简介
    16.2?Clinux源代码目录结构
    16.3?Clinux与标准Linux的区别
    16.4 编译Clinux
    第3部分 Linux 2.6内核原理
    第17章 Linux 2.6.10@ARM启动过程
    17.1 Linux 2.6.10中与ARM处理器平台硬件相关的结构和全局变量
    17.2 Linux汇编代码入口
    17.3 Linux汇编入口处CPU的状态
    17.4 start_kernel()函数之前的汇编代码执行过程
    17.5 start_kernel()函数中调用的函数介绍
    17.6 init()进程执行过程
    第18章 Linux内存管理
    18.1 Linux内存管理概述
    18.2 为虚拟(线性地址)存储空间建立页表
    18.3 设置存储空间的访问控制属性
    18.4 Linux中的内存分配和释放
    第19章 Linux进程管理
    19.1 进程管理概述
    19.2 进程管理相关初始化
    19.3 进程创建与删除
    19.4 进程调度
    19.5 进程切换
    19.6 用户态进程间通信
    第20章 Linux文件管理
    20.1 文件系统概述
    20.2 文件管理相关初始化
    20.3 文件系统类型注册
    20.4 挂接文件系统
    20.5 文件系统类型**块读取
    20.6 路径名查找
    20.7 访问文件操作
    20.8 异步I/O系统调用
    20.9 Linux特殊文件系统
    20.10 磁盘文件系统
    20.11 关于initramfs
    20.12 关于initrd
    20.13 关于gzip压缩文件
    第21章 Linux模块设计
    21.1 Linux模块设计概述
    21.2 Linux的内核空间和用户空间
    21.3 内核模块与应用程序的区别
    21.4 编译模块
    21.5 装载和卸载模块
    21.6 模块层叠
    21.7 模块版本依赖
    21.8 模块编程示例
    第22章 Linux系统异常中断管理
    22.1 Linux异常中断处理
    22.2 指令预取和数据访问中止异常中断处理
    22.3 Linux中断处理
    22.4 从中断返回
    22.5 Linux中断管理
    22.6 Linux系统调用
    第23章 Linux软中断和工作队列
    23.1 概述
    23.2 Linux软中断
    23.3 Linux工作队列
    第24章 Linux并发与竞态
    24.1 并发与竞态概述
    24.2 消除竞态的“锁定”技术
    24.3 消除竞态的非“锁定”方法
    第25章 Linux设备驱动程序
    25.1 设备驱动程序概述
    25.2 字符设备驱动程序
    25.3 块设备驱动程序
    25.4 网络设备驱动程序
    25.5 PCI设备驱动程序
    第4部分 Linux内核开发**指南
    第26章 Linux系统参数设置
    26.1 旗语系统参数(tag)
    26.2 前期命令行设置的系统参数
    26.3 老式命令行系统参数
    26.4 命令行系统参数
    第27章 Linux内核调试
    27.1 打开Linux内核及其各模块自带的调试开关
    27.2 内核剖析(Profiling)
    27.3 通过打印调试(printk)
    27.4 使用proc文件系统调试
    27.5 oops消息 1098
    27.6 通过跟踪命令strace调试
    27.7 使用gdb、kdb、kgdb调试
    第28章 Linux内核移植
    第29章 Linux内核优化
    29.1 编译优化
    29.2 根据CPU特性进行优化
    29.3 对内核进行裁减
    29.4 优化系统内存配置
    29.5 优化系统启动过程以缩减系统启动时间
    29.6 内存映射优化
    29.7 工具软件辅助优化
    第30章 Linux定时器
    30.1 定时器相关数据结构
    30.2 定时器相关宏定义
    30.3 定时器相关全局变量
    30.4 定时器和时钟初始化
    30.5 获取系统时间
    30.6 延迟函数
    30.7 与定时器相关系统调用
    30.8 使用定时器方法
    第31章 杂项
    31.1 per_cpu变量
    31.2 Linux中的数据类型定义
    第32章 编译链接文件说明
    参考文献
    编辑推荐语
    技术总监辞职一年精心写作
    ·作者希望认识技术水平超越本书内容的**专家(hxz@phei.com.cn)
    ·对于经验非常丰富的高手,可以参照详细目录直接阅读代码透析Linuxl为核实现原理的相关章节
    ·对于入行多年的工程师,本书包合作者10多年的实战经验与技能,让你遇到难题不求人
    ·对于刚起步的初学者,本书详细介绍了嵌入式Linux开发流程和方法,让你快速入门,不走弯路

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外