| 加入桌面 | 手机版
免费发布信息网站
贸易服务免费平台
 
 
发布信息当前位置: 首页 » 供应 » 办公、文教 » 库存图书 » 批发供应嵌入式系统Linux内核开发实战书籍

批发供应嵌入式系统Linux内核开发实战书籍

点击图片查看原图
规 格: 行业标准 
单 价: 面议 
起 订:  
供货总量: 99999
发货期限: 自买家付款之日起 3 天内发货
所在地: 辽宁 朝阳市
有效期至: 长期有效
更新日期: 2010-10-17 16:48
浏览次数: 2
询价
公司基本资料信息
 
 
 
【批发供应嵌入式系统Linux内核开发实战书籍】详细说明
字数:1619千字 定价:¥168.00元  本书以嵌入式系统Linux内核开发的整个过程为线索,按照先硬件后软件、先易后难的顺序编写。书中内容覆盖了嵌入式系统Linux内核开发的各个方面,全书由“嵌入式系统硬件开发(共10章)”、“Linux内核开发初步(共6章)”、“Linux 2.6内核原理(共9章)”、“Linux内核开发高级指南(共7章)”四部分组成,共32章。其中“嵌入式系统硬件开发”部分主要以ARM处理器为例介绍了嵌入式处理器的特点、内部原理以及硬件开发调试过程和方法,还介绍了如何制作简易JTAG线缆和编写烧写程序;“Linux内核开发初步”部分主要介绍各种bootloader、Linux开发环境的创建、Linux内核的配置和编译以及根文件系统的制作,还简单介绍了uClinux;“Linux 2.6内核原理”部分是本书的核心,该部分以Linux 2.6.10版内核源代码为基础分析了Linux 2.6的内核原理,涵盖了Linux的各大方面。第1部分 嵌入式系统硬件开发第1章 嵌入式系统概述 2这一章对嵌入式系统的概念及其特点和应用作了概括介绍,笔者根据自己多年的经验阐述了对嵌入式系统的理解,并对一些常见的嵌入式处理器的硬件数据进行了比较。1.1 嵌入式系统概念 21.2 嵌入式处理器 31.3 嵌入式系统应用 41.4 嵌入式系统发展 41.5 一些嵌入式处理器的硬件特性比较 5第2章 ARM处理器概述 16为了使本书内容完整,从第2章到第7章中的内容大部分是笔者阅读《ARM体系结构与编程》(详情参见附录中的参考文献)的笔记和心得,把与嵌入式系统开发和Linux内核密切相关的硬件知识进行了概括和整理,本章主要介绍了ARM处理器的特点、ARM处理器的体系架构版本和ARM处理器系列。2.1 ARM发展历程 162.2 ARM处理器特点 172.3 ARM处理器应用 172.4 ARM体系架构 182.4.1 ARM体系架构版本 182.4.2 ARM体系架构变种(Variant) 202.4.3 ARM体系架构版本命名格式 222.5 ARM处理器 222.5.1 ARM7系列处理器 232.5.2 ARM9系列处理器 242.5.3 ARM9E系列处理器 242.5.4 ARM10E系列处理器 252.5.5 SecurCore系列处理器 252.5.6 StrongARM处理器 262.5.7 Xscale处理器 26第3章 ARM指令及其寻址方式 27本章主要介绍了ARM处理器的指令和寻址方式以及ARM汇编伪指令,这是做ARM处理器应用系统底层软件开发必备的知识。3.1 ARM处理器的程序状态寄存器(PSR) 273.2 ARM指令的条件码 283.3 ARM指令介绍 293.3.1 跳转指令 293.3.2 数据处理指令 303.3.3 乘法指令 313.3.4 杂类算术指令 323.3.5 状态寄存器访问指令 323.3.6 Load/Store内存访问指令 333.3.7 批量Load/Store内存访问指令 343.3.8 LDREX和STREX指令 353.3.9 信号量操作指令 373.3.10 异常中断产生指令 373.3.11 ARM协处理器指令 373.4 ARM指令寻址方式 393.4.1 数据处理指令的操作数的寻址方式 393.4.2 字及无符号字节的Load/Store指令的寻址方式 433.4.3 杂类Load/Store指令的寻址方式 473.4.4 批量Load/Store指令的寻址方式 493.4.5 协处理器Load/Store指令的寻址方式 513.4.6 ARM指令的寻址方式总结 523.5 ARM汇编伪操作(Directive) 533.5.1 符号定义伪操作 543.5.2 数据定义伪操作 543.5.3 汇编控制伪操作 563.5.4 栈中数据帧描述伪操作 573.5.5 信息报告伪操作 573.5.6 其他伪操作 583.6 ARM汇编伪指令 593.7 Thumb指令介绍 60第4章 ARM处理器内存管理单元(MMU) 61本章主要介绍了ARM处理器内存管理单元(MMU)的工作原理,Linux内存管理功能是通过处理器硬件MMU实现的,在没有MMU的处理器系统中,Linux只能工作在物理地址模式,没有虚拟(线性)地址空间的概念。4.1 ARM处理器中CP15协处理器的寄存器 614.1.1 访问CP15寄存器的指令 614.1.2 CP15寄存器介绍 624.2 MMU简介 704.3 系统访问存储空间的过程 714.3.1 使能MMU时的情况 714.3.2 禁止MMU时的情况 714.3.3 使能/禁止MMU时应注意的问题 724.4 ARM处理器地址变换过程 724.4.1 MMU的一级映射描述符 734.4.2 MMU的二级映射描述符 744.4.3 基于段的地址变换过程 754.4.4 粗粒度大页地址变换过程 754.4.5 粗粒度小页地址变换过程 764.4.6 细粒度大页地址变换过程 764.4.7 细粒度小页地址变换过程 774.4.8 细粒度极小页地址变换过程 774.5 ARM存储空间访问权限控制 784.6 TLB操作 794.6.1 使TLB内容无效 794.6.2 锁定TLB内容 794.6.3 解除TLB中被锁定的地址变换条目 804.7 存储访问失效 804.7.1 MMU失效(MMUFault) 804.7.2 外部存储访问失效(ExternalAbort) 81第5章 ARM处理器的Cache和WriteBuffer 82本章主要介绍了ARM处理器高速缓存(Cache)和写缓存(WriteBuffer)的工作原理,使读者了解如何提高处理器的性能。5.1 Cache和WriteBuffer一般性介绍 825.1.1 Cache工作原理 825.1.2 地址映像方式 835.1.3 Cache写入方式原理简介 845.1.4 关于Write-through和Write-back 855.1.5 Cache替换策略 865.1.6 使用Cache的必要性 875.1.7 使用Cache的可行性 875.2 ARM处理器中的Cache和WriteBuffer 885.2.1 基本概念 885.2.2 Cache工作原理 885.2.3 Cache地址映射和变换方法 895.2.4 Cache分类 905.2.5 Cache替换算法 915.2.6 Cache内容锁定 915.2.7 MMU映射描述符中B位和C位的含义 925.2.8 Cache和WriterBuffer编程接口 935.3 ARM处理器的快速上下文切换技术 945.3.1 FCSE概述 945.3.2 FCSE原理 945.3.3 FCSE编程接口 95第6章 ARM处理器存储访问一致性问题 97本章介绍了在支持MMU、Cache和DMA的系统中可能出现的存储访问一致性问题,以及Linux中解决类似问题的方法。6.1 存储访问一致性问题介绍 976.1.1 地址映射关系变化造成的数据不一致性 976.1.2 指令cache的数据不一致性问题 986.1.3 DMA造成的数据不一致问题 996.1.4 指令预取和自修改代码 996.2 Linux中解决存储访问一致性问题的方法 99第7章 ARM处理器工作模式与异常中断处理 101本章主要介绍了ARM处理器的工作模式和异常中断处理过程,这是ARM处理器系统启动程序编写者或Bootloader开发人员的必备知识。7.1 ARM处理器工作模式 1017.2 ARM处理器异常中断向量表和优先级 1037.3 ARM处理器异常中断处理 1047.3.1 进入异常中断处理 1047.3.2 退出异常中断处理 1057.4 ARM处理器的中断(IRQ或FIQ) 109第8章 ARM处理器启动过程 110本章根据笔者的开发经验介绍了ARM处理器系统的启动过程以及编写ARM处理器系统启动程序需要注意的事项。8.1 ARM处理器上电/复位操作 1108.2 ARM处理器系统初始化过程 1118.3 ARM处理器系统初始化编程注意事项 111第9章 嵌入式系统设计与调试 113本章根据笔者10多年的开发经验介绍了嵌入式系统的设计流程和调试方法,列举了大量笔者工作中碰到的实际案例。本章内容对于嵌入式系统硬件开发和调试有较高的参考、指导价值。9.1 嵌入式系统设计流程 1139.2 嵌入式系统硬件原理设计与审核 1149.3 硬件设计工具软件 1179.4 嵌入式系统调试仿真工具 1179.5 嵌入式系统调试诊断方法 118第10章 自制简易JTAG下载烧写工具 123本章根据笔者自己制作简易JTAG线缆的经验,介绍了简易JTAG线缆的硬件原理和软件流程,这是初学者必备的最廉价的工具,必须掌握。10.1 JTAG简介 12310.1.1 一些基本概念 12410.1.2 JTAG接口信号 12410.1.3 TAP控制器的状态机 12510.1.4 JTAG接口指令集 12910.2 简易JTAG线缆原理 13010.2.1 PC并口定义 13010.2.2 PC并口的寄存器 13110.2.3 简易JTAG线缆原理图 13310.2.4 简易JTAG线缆烧写连接图(见图10-5) 13410.3 简易JTAG烧写代码分析 13510.3.1 简易JTAG烧写程序(flashp)使用说明 13510.3.2 flash与CPU连接及flash属性描述文件 13610.3.3 简易JTAG烧写程序的执行逻辑和流程 138第2部分 Linux内核开发初步第11章 Bootloader 142本章根据笔者的工作经验介绍了流行的几种Bootloader、Bootloader应该具备的基本功能以及Bootloader的裁剪与移植。11.1 Bootloader的任务和作用 14211.2 各种各样的Bootloader 14311.3 Bootloader编译环境 14411.4 Bootloader的移植与裁减 14511.5 编译Bootloader 14511.6 烧写Bootloader 14611.7 Bootloader使用举例 14811.8 Bootloader修改举例 149第12章 创建嵌入式Linux开发环境 151本章介绍了如何创建嵌入式系统Linux内核交叉开发环境,本章和后续3章的内容是嵌入式系统Linux内核开发的基础,必须掌握。12.1 安装Linuxhost 15112.2 在虚拟机中安装Linuxhost 15212.3 安装Linux交叉编译环境 15712.4 在主机上设置TFTPServer 16012.5 在主机上设置DHCPServer 16112.6 在主机上设置Telnetserver 16112.7 在开发过程中使用NFS 16212.8 设置超级终端 163第13章 编译Linux内核 166本章介绍了Linux内核的配置和编译方法。13.1 获取Linux内核源代码 16613.2 Linux内核目录结构 16613.3 配置Linux内核 16713.4 编译Linux内核 168第14章 创建Linux根文件系统 170本章介绍了Linux的根文件系统的结构以及创建根文件系统的方法。14.1 根文件系统概述 17014.2 根文件系统目录结构 17114.3 获取根文件系统组件源代码 17114.4 编译根文件系统源代码 17114.5 创建一个32MB的RAMDISK根文件系统 17314.6 在根文件系统中添加驱动模块或者应用程序 173第15章 固化Linux内核和根文件系统 174本章介绍了固化(烧写)Linux内核和根文件系统的方法。第16章 关于?Clinux 176本章简要介绍了?Clinux与标准Linux的区别。16.1 ?Clinux简介 17616.2 ?Clinux源代码目录结构 17716.3 ?Clinux与标准Linux的区别 17816.4 编译?Clinux 179第3部分 Linux2.6内核原理第17章 Linux2.6.10@ARM启动过程 182本章以start_kernel()和init()函数中调用到的函数说明的方式,介绍了从Linux汇编代码入口到init内核进程最后调用用户空间init命令的Linux整个启动过程。本章内容是笔者第一次阅读Linux内核源代码时对这些函数的注释,仅供读者了解start_kernel()和init()函数中调用到的每个函数的大致功能时使用。17.1 Linux2.6.10中与ARM处理器平台硬件相关的结构和全局变量 18217.1.1 相关数据结构 18217.1.2 相关全局变量 18717.2 Linux汇编代码入口 18917.3 Linux汇编入口处CPU的状态 18917.4 start_kernel()函数之前的汇编代码执行过程 19017.5 start_kernel()函数中调用的函数介绍 19217.5.1 lock_kernel()函数 19217.5.2 page_address_init()函数 19217.5.3 printk(linux_banner) 19317.5.4 setup_arch(&command_line)函数 19317.5.5 setup_per_cpu_areas()函数 19817.5.6 smp_prepare_boot_cpu()函数 19917.5.7 sched_init()函数 19917.5.8 build_all_zonelists()函数 20017.5.9 page_alloc_init()函数 20017.5.10 printk("Kernelcommandline:%s ",saved_command_line) 20117.5.11 parse_early_param()函数 20117.5.12 parse_args()函数 20117.5.13 sort_main_extable()函数 20217.5.14 trap_init()函数 20217.5.15 rcu_init()函数 20217.5.16 init_IRQ()函数 20317.5.17 pidhash_init()函数 20317.5.18 init_timers()函数 20317.5.19 softirq_init()函数 20417.5.20 time_init()函数 20417.5.21 console_init()函数 20517.5.22 profile_init()函数 20617.5.23 local_irq_enable()函数 20717.5.24 vfs_caches_init_early()函数 20717.5.25 mem_init()函数 20817.5.26 kmem_cache_init()函数 21017.5.27 numa_policy_init()函数 22517.5.28 calibrate_delay()函数 22717.5.29 pidmap_init()函数 22817.5.30 pgtable_cache_init()函数 22917.5.31 prio_tree_init()函数 22917.5.32 anon_vma_init()函数 22917.5.33 fork_init(num_physpages)函数 22917.5.34 proc_caches_init()函数 23017.5.35 buffer_init()函数 23117.5.36 unnamed_dev_init()函数 23117.5.37 security_init()函数 23117.5.38 vfs_caches_init(num_physpages)函数 23217.5.39 radix_tree_init()函数 23717.5.40 signals_init()函数 23717.5.41 page_writeback_init()函数 23717.5.42 proc_root_init()函数 23817.5.43 check_bugs()函数 24017.5.44 acpi_early_init()函数 24417.5.45 rest_init()函数 24417.6 init()进程执行过程 26517.6.1 smp_prepare_cpus(max_cpus)函数 26517.6.2 do_pre_smp_initcalls()函数 26517.6.3 fixup_cpu_present_map()函数 26717.6.4 smp_init()函数 26717.6.5 sched_init_smp()函数 26817.6.6 populate_rootfs()函数 26817.6.7 do_basic_setup()函数 28317.6.8 sys_access()函数 29217.6.9 free_initmem()函数 30117.6.10 unlock_kernel()函数 30117.6.11 numa_default_policy()函数 30217.6.12 sys_dup()函数 30217.6.13 execve()函数 302第18章 Linux内存管理 305从本章开始,笔者将带领读者走进神秘的Linux内核世界。笔者在阅读内核源代码以及两本相关参考书(见参考文献)的基础上,以自己的理解和语言总结概括了Linux内核每个组件的原理。笔者对与每个内核组件相关的关键数据结构和全局变量作了尽量详尽的说明,并且对核心函数进行了详细注释,在向读者灌输理论知识的同时引导读者自己去阅读、分析Linux内核源代码。本章讲解了Linux内核第一大核心组件“内存管理”的原理和实现内幕。18.1 Linux内存管理概述 30518.1.1 Linux内存管理的一些基本概念 30518.1.2 内存管理相关数据结构 30918.1.3 内存管理相关宏和全局变量 33018.1.4 Linux内存管理的任务 34118.1.5 Linux中的物理和虚拟存储空间布局 34118.2 为虚拟(线性地址)存储空间建立页表 34518.3 设置存储空间的访问控制属性 34818.4 Linux中的内存分配和释放 35018.4.1 在系统启动初期申请内存 35018.4.2 系统启动之后的内存分配与释放 360第19章 Linux进程管理 480本章讲解了Linux内核第二大核心组件“进程管理”的原理和实现内幕。19.1 进程管理概述 48019.1.1 进程相关概念 48019.1.2 进程分类 48119.1.3 0号进程 48119.1.4 1号进程 48119.1.5 其他一些内核线程 48219.1.6 进程描述符(structtask_struct) 48219.1.7 进程状态 48219.1.8 进程标识符(PID) 48319.1.9 current宏定义 48419.1.10 进程链表 48419.1.11 PIDhash表和链表 48519.1.12 硬件上下文(HardwareContext) 48519.1.13 进程资源限制 48519.1.14 进程管理相关数据结构 48619.1.15 进程管理相关宏定义 50219.1.16 进程管理相关全局变量 51419.2 进程管理相关初始化 52019.3 进程创建与删除 52919.4 进程调度 55119.4.1 进程类型 55319.4.2 进程调度类型 55419.4.3 基本时间片计算方法 55519.4.4 动态优先级算法 55619.4.5 交互式进程 55619.4.6 普通进程调度 55719.4.7 实时进程调度 55719.4.8 进程调度函数分析 55819.5 进程切换 57619.6 用户态进程间通信 58119.6.1 信号(Signal) 58119.6.2 管道(pipe)和FIFO(命名管道) 62719.6.3 进程间通信原语(SystemVIPC) 641第20章 Linux文件管理 651本章讲解了Linux内核第三大核心组件“文件系统”的原理和实现内幕。20.1 文件系统概述 65120.1.1 Linux文件管理相关概念 65220.1.2 Linux文件管理相关数据结构 65720.1.3 Linux文件管理相关宏定义 68220.1.4 Linux文件管理相关全局变量 69120.2 文件管理相关初始化 69920.3 文件系统类型注册 71120.4 挂接文件系统 71220.5 文件系统类型超级块读取 73020.5.1 get_sb_single()通用超级块读取函数 73120.5.2 get_sb_nodev()通用超级块读取函数 73720.5.3 get_sb_bdev()通用超级块读取函数 73820.5.4 get_sb_pseudo()通用超级块读取函数 74020.6 路径名查找 74720.7 访问文件操作 75920.7.1 打开文件 75920.7.2 关闭文件 76620.7.3 读文件 76820.7.4 写文件 78520.8 异步I/O系统调用 79220.9 Linux特殊文件系统 79220.9.1 rootfs文件系统 79320.9.2 sysfs文件系统 79720.9.3 devfs设备文件系统 80020.9.4 bdev块设备文件系统 80320.9.5 ramfs文件系统 80420.9.6 proc文件系统 80420.10 磁盘文件系统 81320.10.1 ext2文件系统相关数据结构 81320.10.2 ext2文件系统磁盘分区格式 81920.10.3 ext2文件系统的各种文件 82020.10.4 创建ext2文件系统 82120.10.5 ext2文件系统的操作方法 82220.11 关于initramfs 82420.11.1 initramfs概述 82420.11.2 initramfs与initrd的区别 82420.11.3 initramfs相关全局变量 82520.11.4 initramfs被编译链接的位置 82520.11.5 initramfs文件的生成过程 82520.11.6 initramfs二进制文件格式说明(cpio格式) 82820.11.7 initramfs二进制文件和列表文件对照示例 82920.11.8 initramfs利弊 83020.12 关于initrd 83020.12.1 initrd概述 83020.12.2 initrd相关全局变量 83120.13 关于gzip压缩文件 832第21章 Linux模块设计 834本章讲解了Linux内核模块程序与应用程序的区别以及如何编写和加载Linux内核模块程序。21.1 Linux模块设计概述 83421.2 Linux的内核空间和用户空间 83421.3 内核模块与应用程序的区别 83521.4 编译模块 83721.5 装载和卸载模块 83721.6 模块层叠 83821.7 模块版本依赖 83921.8 模块编程示例 839第22章 Linux系统异常中断管理 841本章讲解了Linux内核如何管理系统异常中断以及Linux系统调用的实现内幕。22.1 Linux异常中断处理 84122.2 指令预取和数据访问中止异常中断处理 84922.2.1 指令预取中止异常中断处理 85022.2.2 数据访问中止异常中断处理 85822.3 Linux中断处理 86322.3.1 内核模式下的中断处理 86322.3.2 用户模式下的中断处理 86722.4 从中断返回 86822.5 Linux中断管理 86922.5.1 Linux中断管理相关数据结构与全局变量 87022.5.2 Linux中断管理初始化 87222.5.3 安装和卸载中断处理程序 87422.5.4 使能和禁止中断 87822.6 Linux系统调用 88022.6.1 Linux系统调用内核实现过程 88022.6.2 从系统调用返回 88922.6.3 Linux系统调用用户程序接口函数 89022.6.4 Linux系统调用用户接口函数与内核实现函数之间参数传递 899第23章 Linux软中断和工作队列 901本章讲解了Linux内核中的两种延迟处理机制“软中断”和“工作队列”的原理和实现。23.1 概述 90123.2 Linux软中断 90223.2.1 软中断相关数据结构和全局变量 90323.2.2 软中断初始化 90423.2.3 软中断的核心操作函数do_softirq() 90823.2.4 软中断看护进程执行函数ksoftirqd() 91223.2.5 如何使用软中断 91323.3 Linux工作队列 91823.3.1 Linux工作队列相关数据结构和全局变量 91823.3.2 Linux工作队列初始化 92123.3.3 将工作加入到工作队列中 92423.3.4 工作者进程执行函数worker_thread() 92823.3.5 使用Linux工作队列 931第24章 Linux并发与竞态 933本章讲解了Linux内核同步机制,包括几种锁定技术以及免锁算法。24.1 并发与竞态概述 93324.1.1 Linux中的并发源 93424.1.2 竞态可能导致的后果 93424.1.3 避免竞态的规则 93424.2 消除竞态的“锁定”技术 93524.2.1 信号量(semphore)和互斥体(mutualexclusion) 93524.2.2 读写信号量(rw_semaphore) 93824.2.3 完成量(completion) 94124.2.4 自旋锁(spinlock_t) 94224.2.5 读写自旋锁(rwlock_t) 94624.2.6 使用“锁定”技术的注意事项 94924.3 消除竞态的非“锁定”方法 94924.3.1 免锁算法 94924.3.2 原子操作 95024.3.3 位操作 95124.3.4 顺序锁 95224.3.5 读-复制-更新(Read-Copy-Update,RCU) 954第25章 Linux设备驱动程序 958本章讲解了Linux内核第四大核心组件“设备驱动”的原理和实现内幕。同时还总结归纳了编写各种设备驱动程序的方法和步骤。25.1 设备驱动程序概述 95825.1.1 设备驱动程序组成部分 95925.1.2 设备号 95925.1.3 设备文件 96025.1.4 编写设备驱动程序的关键 96125.2 字符设备驱动程序 96125.2.1 字符设备相关数据结构 96125.2.2 字符设备相关全局变量 96325.2.3 字符设备驱动程序全局初始化 96325.2.4 为字符设备分配设备号 96425.2.5 注册字符设备驱动程序 96825.2.6 字符设备的操作方法 97125.2.7 用户对字符设备驱动程序的调用过程 97225.2.8 如何编写字符设备驱动程序 97425.2.9 关于TTY设备驱动程序 97425.2.10 控制台设备驱动程序 97525.3 块设备驱动程序 98625.3.1 块设备相关数据结构 98625.3.2 块设备相关宏定义 99725.3.3 块设备相关全局变量 99925.3.4 块设备驱动程序全局初始化 100425.3.5 为块设备分配主设备号 100625.3.6 注册块设备驱动程序 100925.3.7 块设备驱动程序的操作方法 101725.3.8 调用块设备驱动程序过程 101725.3.9 I/O调度 103125.3.10 如何编写块设备驱动程序 103225.4 网络设备驱动程序 103325.4.1 网络设备驱动程序概述 103325.4.2 网络设备相关数据结构 103425.4.3 网络设备相关宏定义 104425.4.4 网络设备相关全局变量 104525.4.5 创建net_device结构 104625.4.6 注册网络设备 104825.4.7 网络设备的操作方法 105025.4.8 网络设备中断服务程序 105125.4.9 如何编写网络设备驱动程序 105125.5 PCI设备驱动程序 105225.5.1 PCI接口定义 105325.5.2 PCI设备的三个地址空间 105725.5.3 PCI总线仲裁 105825.5.4 PCI设备编号 105925.5.5 如何访问PCI配置空间 105925.5.6 如何配置PCI设备 106125.5.7 PCI驱动程序相关数据结构 106225.5.8 PCI驱动程序相关宏定义 106825.5.9 PCI驱动程序相关全局变量 106825.5.10 Bootloader和内核做的事 106925.5.11 PCI驱动程序注册 106925.5.12 PCI驱动程序接口函数 107125.5.13 如何编写PCI驱动程序 1072第4部分 Linux内核开发高级指南第26章 Linux系统参数设置 1076从本章开始的后续章节主要讲解了比较高级或者平时较少关注的Linux内核方面的知识,本章讲解了Linux中的4种系统参数格式和设置方法。26.1 旗语系统参数(tag) 107626.1.1 与旗语系统参数相关数据结构和全局变量 107626.1.2 旗语系统参数说明 108226.1.3 旗语系统参数设置方法 108426.2 前期命令行设置的系统参数 108426.2.1 与前期命令行系统参数相关数据结构和全局变量 108426.2.2 前期命令行设置的系统参数说明 108526.2.3 前期命令行系统参数设置方法 108626.2.4 如何添加自己的前期命令行设置的系统参数 108726.3 老式命令行系统参数 108726.3.1 与老式命令行系统参数相关数据结构和全局变量 108726.3.2 老式命令行设置的系统参数说明 108826.3.3 老式命令行设置的系统参数设置方法 108926.3.4 如何添加自己的老式命令行设置的系统参数 108926.4 命令行系统参数 108926.4.1 与命令行系统参数相关数据结构和全局变量 108926.4.2 命令行设置的系统参数说明 109026.4.3 命令行设置的系统参数设置方法 1090第27章 Linux内核调试 1091本章介绍了Linux内核的调试方法。27.1 打开Linux内核及其各模块自带的调试开关 109127.2 内核剖析(Profiling) 109327.3 通过打印调试(printk) 109527.3.1 关于printk() 109527.3.2 内核信息级别 109627.3.3 打印速度限制 109727.3.4 控制台重定向 109827.4 使用proc文件系统调试 109827.5 oops消息 109827.6 通过跟踪命令strace调试 109927.7 使用gdb、kdb、kgdb调试 1099第28章 Linux内核移植 1101本章介绍了Linux内核的移植方法。第29章 Linux内核优化 1104本章介绍了Linux内核的优化方法。29.1 编译优化 110429.2 根据CPU特性进行优化 110529.3 对内核进行裁减 110529.4 优化系统内存配置 110629.5 优化系统启动过程以缩减系统启动时间 110629.6 内存映射优化 110729.7 工具软件辅助优化 1107第30章 Linux定时器 1109本章介绍了Linux内核的软件定时器。30.1 定时器相关数据结构 110930.2 定时器相关宏定义 111130.3 定时器相关全局变量 111230.4 定时器和时钟初始化 111330.5 获取系统时间 111430.6 延迟函数 111530.7 与定时器相关系统调用 111530.8 使用定时器方法 1116第31章 杂项 1117本章介绍了PER_CPU变量以及Linux中的数据类型定义。31.1 per_cpu变量 111731.2 Linux中的数据类型定义 1118第32章 编译链接文件说明 1119本章注释了ARM处理器系统中Linux内核的链接文件,以帮助读者了解编译出来的Linux内核各区段在内存中的存放位置。参考文献 1125
0条 [查看全部]  【批发供应嵌入式系统Linux内核开发实战书籍】相关评论
 
更多..本企业其它产品
 
更多..推荐产品

[ 供应搜索 ]  [ ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]

 
站内信(0)     新对话(0)