- 译者序<br><br>毫无疑问,UNIX/Linux最重要的软件之一就是shell,目前最流行的shell被称为Bash(Bourne Again Shell),几乎所有的Linux和绝大部分的UNIX都可以使用Bash。作为系统与用户之间的交互接口,shell几乎是你在UNIX工作平台上最亲密的朋友,因此,学好shell,是学习Linux/UNIX的的开始,并且它会始终伴随你的工作学习。<br><br>shell是如此地重要,但令人惊奇的是,介绍shell的书没有真正令人满意的。所幸的是,我看到了这本被人称为abs的书,这本书介绍了bash大量的细节和广阔的范围,我遇到的绝大部分的技术问题--无论是我忘记的或是以前没有发现的--都可以在这本书里找到答案。这本使用大量的例子详细地介绍了Bash的语法,各种技巧,调试等等的技术,以循序渐进的学习方式,让你了解Bash的所有特性,在书中还有许多练习可以引导你思考,以得到更深入的知识。无论你是新手还是老手,或是使用其他语言的程序员,我能肯定你能在此书用受益。而本书除了介绍BASH的知识之外,也有许多有用的关于Linux/UNIX的知识和其他shell的介绍。<br><br>在看到本书的英文版后,我决定把它翻译出来,在Linuxsir论坛上结识了译者之一杨春敏共同翻译这本书,600多页的书是本大部头的书,我们花了6个月的业余时间才翻译完了。<br><br>关于版权的问题,英文版的作者Mendel Cooper对英文版的版权做了详细的约定,请参考:Appendix Q. Copyright。中文版版权由译者杨春敏和黄毅共同所有,在遵守英文版版权相应条款的条件下,欢迎在保留本书译者名字和版权说明以非盈利的方式自由发布此中文版,以盈利目的的所有行为必须联系英文作者和两位中文译者以获得许可。<br><br>本书得以成稿,我(黄毅)要多谢我的女朋友,本该给予她的时间我用来了翻译,多谢你的理解,你是一个很棒的女朋友!<br><br> 译者 杨春敏 黄毅<br> 2006.5.15<br>5 434浏览会员免费
- U盘作为启动盘,成功安装最新Fedora系统Fedora19. (节约了资源,无需刻录光盘,操作简单)5 281浏览会员免费
- 目录 第一章 Linux底层分段分页机制 5 1.1 基于x86的Linux分段机制 5 1.2 基于x86的Linux分页机制 7 1.2.1 页全局目录和页表 8 1.2.2 线性地址到物理地址 10 1.2.3 线性地址字段处理 13 1.2.4 页表处理 15 1.3 扩展分页与联想存储器 20 1.4 Linux内存布局 21 1.5 内核空间和用户空间 23 1.5.1 初始化临时内核页表 24 1.5.2 永久内核页表的初始化 32 1.5.3 第一次进入用户空间 41 1.5.4 内核映射机制实例 44 1.6 固定映射的线性地址 48 1.7 高端内存内核映射 50 1.8.1 永久内存映射 50 1.8.2 临时内核映射 55 第二章 内核级内存管理系统 58 2.1 Linux页面管理 58 2.1.1 NUMA架构 61 2.1.2 内存管理区 62 2.2 伙伴系统算法 65 2.2.1 数据结构 66 2.2.2 块分配 67 2.2.3 块释放 69 2.3 Linux页面级内存管理 72 2.3.1 分配一组页面 73 2.3.2 释放一组页面 80 2.4 每CPU页面高速缓存 81 2.4.1 数据结构 81 2.4.2 通过每CPU 页高速缓存分配页面 82 2.4.3 释放页面到每CPU 页面高速缓存 83 2.5 slab分配器 85 2.5.1 数据结构 86 2.5.2 分配/释放slab页面 92 2.5.3 增加slab数据结构 93 2.5.4 高速缓存内存布局 94 2.5.5 slab着色 95 2.5.6 分配slab对象 96 2.5.7 释放Slab对象 100 2.5.8 通用对象 102 2.5.9 内存池 103 2.6 非连续内存区 104 2.6.1 高端内存区回顾 105 2.6.2 非连续内存区的描述符 106 2.6.3 分配非连续内存区 109 2.6.4 释放非连续内存区 113 第三章 进程的地址空间 117 3.1 用户态内存分配 117 3.1.1 mm_struct数据结构 118 3.1.2 内核线程的内存描述符 122 3.2 线性区的数据结构 123 3.2.1 线性区数据结构 123 3.2.2 红-黑树算法 126 3.2.3 线性区访问权限 128 3.3 线性区的底层处理 130 3.3.1 查找给定地址的最邻近区 131 3.3.2 查找一个与给定的地址区间相重叠的线性区 135 3.3.3 查找一个空闲的地址区间 135 3.3.4 向内存描述符链表中插入一个线性区 137 3.4 分配线性地址区间 141 3.5 释放线性地址区间 151 3.5.1 do_munmap()函数 151 3.5.2 split_vma()函数 153 3.5.3 unmap_region()函数 155 3.6 创建和删除进程的地址空间 156 3.6.1 创建进程的地址空间 156 3.6.2 删除进程的地址空间 175 3.6.3 内核线程1号的地址空间 176 3.7 堆的管理 178 第四章 磁盘文件内存映射 182 4.1 内存映射的数据结构 182 4.2 内存映射的创建 184 4.3 内存映射的请求调页 194 4.4 刷新内存映射的脏页 203 4.5 非线性内存映射 210 第五章 页面的回收 215 5.1 页框回收概念 215 5.1.1 选择目标页 216 5.1.2 PFRA设计 217 5.2 反向映射技术 218 5.2.1 匿名页的反向映射 220 5.2.2 优先搜索树 226 5.2.3 映射页的反向映射 231 5.3 PFRA实现 235 5.3.1 最近最少使用(LRU)链表 236 5.3.2 内存紧缺回收 242 5.3.3 回收磁盘高速缓存的页 267 5.3.4 周期回收 273 5.3.5 内存不足删除程序 283 第六章 交换机制 289 6.1 交换区数据结构 289 6.1.1 创建交换区 290 6.1.2 交换区描述符 291 6.1.3 换出页标识符 293 6.2 激活和禁用交换区 295 6.2.1 sys_swapon()系统调用 296 6.2.2 sys_swapoff()系统调用 304 6.2.3 try_to_unuse()函数 308 6.3 分配和释放页槽 313 6.3.1 scan_swap_map()函数 313 6.3.2 get_swap_page()函数 316 6.3.3 swap_free()函数 318 6.4 页面的换入换出 320 6.4.1 交换高速缓存 320 6.4.2 换出页 323 6.4.3 换入页 329 第七章 缺页异常处理程序 335 7.1 总体流程 335 7.2 vma以外的错误地址 341 7.3 vma内的错误地址 346 7.3.1 handle_mm_fault()函数 348 7.3.2 请求调页 352 7.3.3 写时复制 358 7.4 处理非连续内存区访问 3645 749浏览会员免费
- 由柯元旦编著的《Android内核剖析》详细分析了Android内核的内部机制,包括窗口管理系统、Activity管理系统、输入法框架、编译系统等,为Android内核定制及高级应用程序开发提供技术参考。 《Android内核剖析》适合于所有Android相关的工程师及产品经理,还可作为相关培训机构的教材。5 152浏览会员免费
- 深入理解Linux虚拟内存管理5 236浏览会员免费
- 目录 1 引子 2 1.1 上电 2 1.2 BIOS时代 3 1.3 内核引导程序 5 2 内核映像的形成 8 2.1 MakeFile预备知识 9 2.1.1 Makefile书写规则 9 2.1.2 Makefile变量 10 2.1.3 条件判断 14 2.1.4 函数 17 2.1.5 隐含规则 17 2.1.6 定义模式规则 19 2.1 KBuild体系 23 2.1.1 内核目标 24 2.1.2 主机程序 26 2.1.3 编译标志 27 2.2 内核编译分析 28 2.2.1 编译配置 29 2.2.2 寻找第一个目标 32 2.2.3 prepare和scripts目标 38 2.2.4 递归编译各对象 41 2.2.5 链接vmlinux 44 2.2.6 制作bzImage 50 3 实模式下的内核代码 57 3.1 内核映像内存布局 58 3.2 实模式汇编代码header.S 60 3.2.1 无用的bootsect代码 60 3.2.2 初始化头变量hdr 63 3.2.3 准备实模式下C语言环境 64 3.3 实模式代码main函数 69 3.3.1 复制初始化头变量 71 3.3.2 初始化堆 74 3.3.3 确保支持当前运行的CPU 75 3.3.4 设置BIOS的x86模式 76 3.3.5 内存的检测 78 3.3.6 设置键盘属性 81 3.3.7 填充系统环境配置表 82 3.3.8 填充IST信息 83 3.3.9 设置Video模式 83 3.4 实模式代码go_to_proteced_mode函数 91 3.4.1 禁止可屏蔽和不可屏蔽中断 92 3.4.2 打开A20地址线 93 3.4.3 安装临时全局描述符表 99 3.4.4 第一次启动保护模式 101 4 保护模式下的内核代码 107 4.1 32位x86保护模式代码 107 4.1.1 内核解压缩的前期工作 108 4.1.2 解压缩内核 111 4.1.3 第二次启动保护模式 121 4.1.4 第一次启动分页管理 124 4.1.5 初始化0号进程 128 4.2 向start_kernel进发 131 4.2.1 初始化中断描述符表 132 4.2.2 第三次启动保护模式 137 4.2.3 启动x86虚拟机 141 5 走向现代:start_kernel函数 144 5.1 初始化同步与互斥环境 148 5.1.1 屏蔽中断 148 5.1.2 启动大内核锁 152 5.1.3 注册时钟通知链 153 5.1.4 激活第一个CPU 155 5.1.5 初始化地址散列表 160 5.1.6 打印版本信息 161 5.2 执行setup_arch()函数 166 5.2.1 拷贝可用内存区信息 171 5.2.2 获得总页面数 175 5.2.3 着手建立永久内核页表 177 5.2.4 第二次启动分页管理 181 5.2.5 建立内存管理架构 186 5.2.6 添砖加瓦 192 5.3 设置每CPU环境 206 5.4 初始化内存管理区列表 211 5.5 利用early_res分配内存 214 5.6 触碰虚拟文件系统 223 5.7 初始化异常服务 224 5.8 初始化内存管理 230 5.8.1 启用伙伴算法 230 5.8.2 初始化slab分配器 241 5.8.3 初始化非连续内存区 250 5.9 初始化调度程序 251 5.10 初始化中断处理系统 256 5.10.1 设置APIC中断服务 256 5.10.2 初始化本地软时钟 264 5.10.3 软中断初始化 268 5.10.4 初始化定时器中断 271 5.11 走进start_kernel尾声 273 5.11.1 初始化slab的后续工作 273 5.11.2 启动console 275 5.11.3 一些简单的函数 276 5.11.4 校准CPU时钟速度 279 5.11.5 创建一些slab缓存 282 5.12 安装根文件系统 287 5.12.1 创建VFS相关slab缓存 288 5.12.2 安装rootfs 291 5.12.3 安装proc文件系统 296 6 后start_kernel时代 298 6.1 创建1号进程 298 6.2 子系统的初始化 306 6.3 启动shell环境 3095 837浏览免费
- CENTOS教程<br>linux centos4 93浏览会员免费
- tcp ip sockets编程 c语言实现 第2版 中文版 超清5 219浏览会员免费
- 嵌入式Linux教程3 101浏览会员免费
- 本书是根据相关的博客做的PDF格式的电子书,欢迎到原作者的博客去看看。 这个是目录: ·嵌入式Linux之我行——虚拟机中安装Linux ·嵌入式Linux之我行——虚拟机中实现Linux与Windows之间的文件传输 ·嵌入式Linux之我行——开发环境的建立与Eclipse的使用 ·嵌入式Linux之我行——配置内核时出现“ncurses-devel”错误 ·嵌入式Linux之我行——C+CGI+Ajax在S3C2440中的应用 ·嵌入式Linux之我行——嵌入式数据库sqlite在2440上的移植 ·嵌入式Linux之我行——嵌入式数据库sqlite在2440上的应用 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之内核 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之文件系统 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之RTC时钟驱动 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之DM9000E网卡驱动 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之USB驱动 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之MMC/SD卡驱动 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之LCD驱动 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之触摸屏驱动 ·嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之UDA1341声卡驱动 ·嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(一) ·嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(二) ·嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(三) ·嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(四) ·嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(五) ·嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(六) ·嵌入式Linux之我行——s3c2440的IO静态映射的分析 ·嵌入式Linux之我行——内核访问外设I/O资源的方式 ·嵌入式Linux之我行——深入理解DM9000在mini2440上的驱动 ·嵌入式Linux之我行——LCD背光驱动在2440上的实例开发 ·嵌入式Linux之我行——LED驱动在2440上的实例开发 ·Linux内核常用的一些宏的收集 ·嵌入式Linux之我行——按键驱动在2440上的实例开发(带去抖动) ·嵌入式Linux之我行——ARM MMU工作原理剖析 ·嵌入式Linux之我行——设备文件系统剖析与使用 ·嵌入式Linux之我行——PWM在ARM Linux中的原理和蜂鸣器驱动实例开发 ·嵌入式Linux之我行——S3C2440上RTC时钟驱动开发实例讲解 ·嵌入式Linux之我行——S3C2440上看门狗(Watchdog)驱动开发实例讲解 ·嵌入式Linux之我行——S3C2440上ADC驱动实例开发讲解 ·嵌入式Linux之我行——S3C2440上触摸屏驱动实例开发讲解 ·嵌入式Linux之我行——S3C2440上LCD驱动(FrameBuffer)实例开发讲解(一) ·嵌入式Linux之我行——S3C2440上LCD驱动(FrameBuffer)实例开发讲解(二) ·嵌入式Linux之我行——RamDisk块设备驱动实例开发讲解 ·嵌入式Linux之我行——S3C2440上MMC/SD卡驱动实例开发讲解(一) ·嵌入式Linux之我行——S3C2440上MMC/SD卡驱动实例开发讲解(二) ·嵌入式Linux之我行——内核通知链机制的原理及实现(转载) ·嵌入式Linux之我行——S3C2440上Flash驱动实例开发讲解(一)5 371浏览会员免费
- JWCHAT + OpenFire配置.pdf5 87浏览会员免费
- LinuxUNIX系统编程手册 全部英文版 文字版pdf 有目录5 277浏览会员免费
- REDHAT企业版LINUX5.0安装过程图解教程,通过图说明linux5的安装。5 332浏览会员免费
- linux内核源代码情景分析(pdf 非扫描版),经典linux书籍5 73浏览会员免费
- 强烈推荐 Linux运维从入门到高级全套案例教程5 1948浏览会员免费
- 精通LINUX设备驱动程序开发.pdf免费下载5 286浏览会员免费
- 根据红帽官方中文文档,稍加整理而成。原始文档位于http://www.redhat.com/docs5 203浏览会员免费
- 第2版不仅对第1版进行了彻底的更新,而且还将应用广泛的RISC系统结构MIPS与开源操作系统Linux结合在了一起。本书的第一部分从MIPS设计原理开始,进而阐述了MIPS指令集和程序员资源。书中还以MIPS32/MIPS64 标准为基准,对其他体系结构进行了比较。<br> 与第1版相比,第2版的显著变化是封面图片——小企鹅坐在驾驶员的位置上,本书以此作为研究来自Linux内核的真正的低层操作系统的实例,并且展示 Linux (包括单处理器和SMP) 如何构建于MIPS体系结构所提供的基础之上。本书从操作系统的底层 (中断、内存调度) 开始,进而描述更高级的 Linux/MIPS应用代码如何载入到内存、连接到库并运行。<br> ·清晰地阐述了Linux如何在硬件上运行。<br> ·提供了完整的、更新的和简单易用的MIPS指令集指南。<br> ·本版保留了第1版可读性好的写作风格,凝聚了作者在基于MIPS体系结构的系统设计方面20多年的经验。5 198浏览会员免费
- 权限终于到达了170M,赶紧上传。。。 ---------------------------- 《Linux命令、编辑器与Shell编程》特点: 1.它是Pearson、Amazon、Bames&Noble;计算机畅销书。 2.知名Linux专家MarkSobell编写的这《Linux命令、编辑器与Shell编程》,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一本卓越的日常参考手册。 3.一本值得每一位Linux管理人员、开发人员和高级用户拥有的指南! 4.《Linux命令、编辑器与Shell编程》并不针对特定的Linux版本或者某个发行版本,而是适用于所有近期发布的Linux版本; 5.最实用的Linux指南和参考手册,数百个高质量的实例覆盖了每种Linux发行版! 6.《Linux命令、编辑器与Shell编程》覆盖超过80个核心工具、shell编程、编辑器和编程工具,能使您成为真正的Linux高手,它是掌握强大的Linux命令行的捷径。5 283浏览会员免费
- 高级linux程序设计,adnvanced linux programming中文版5 0浏览会员免费
- 基于嵌入式实时操作系统的程序设计技术,全面掌握操作系统的软件开发5 342浏览会员免费
- Linux 内核完全注释4 68浏览会员免费
- 个人把本书的pdg版本下载下来,转换成了pdf版本,对Linux内核有兴趣的同学可以学习。本书和浙大毛德操那本《情景分析》都针对的是2.4.0内核版本,两书写作风格各异。个人感觉李善平老师这本更学院派一些。5 502浏览会员免费
- 目录 1 进程的组织 5 1.1 进程相关数据结构 5 1.1.1 进程的基本信息 6 1.1.2 进程状态 10 1.1.3 TASK_RUNNING状态的进程链表 11 1.1.4 进程间关系 12 1.2 Linux的线程——轻量级进程 15 1.3 进程的创建——do_fork()函数详解 19 1.4 执行进程间切换 33 1.4.1 进程切换之前的工作 33 1.4.2 进程切换实务 —— switch_to宏 37 1.4.3 __switch_to函数 39 1.5 fork与vfock系统调用的区别 42 1.6 内核线程 46 1.7 挂起状态进程的组织 49 1.7.1 等待队列头 49 1.7.2 等待队列的操作 50 1.7.3 进程资源限制 55 1.8 系统调用execve() 56 1.8.1 拷贝用户态参数 57 1.8.2 重要的数据结构 61 1.8.3 search_binary_handler函数 66 1.8.4 目标文件的装载和投入运行 69 1.8.5 库函数 92 2 中断控制 94 2.1 中断的分类 94 2.2 中断的硬件环境 95 2.2.1 外部中断请求IRQ 95 2.2.2 中断描述符表 96 2.2.3 中断和异常的硬件处理 97 2.3 中断描述符表 99 2.3.1 中断门、陷阱门及系统门 99 2.3.2 IDT的初步初始化 100 2.4 异常处理 101 2.5 中断处理 106 2.5.1 中断向量 107 2.5.2 IRQ数据结构 108 2.5.3 do_IRQ()函数 113 2.5.4 中断服务例程 115 2.5.5 IRQ线的动态分配 116 2.6 下半部分 117 2.6.1 软中断 118 2.6.2 tasklet 121 2.6.3 工作队列 122 2.7定时器中断 124 2.7.1 时钟与定时器 124 2.7.2 定时器中断相关的数据结构 127 2.7.3 定时器中断的上半部分 129 3 进程调度 138 3.1 进程调度的概念 138 3.2 进程调度的数据结构和优先级 141 3.2.1 进程的优先级 141 3.2.2 数据结构 145 3.3 调度程序所使用的函数 151 3.3.1 scheduler_tick函数 151 3.3.2 try_to_wake_up函数 156 3.3.3 recalc_task_prio函数 160 3.4 schedule()函数 163 3.4.1 直接调用 163 3.4.2 延迟调用 164 3.4.3 进程切换之前所做的工作 168 3.4.4 完成进程切换时所执行的操作 171 3.4.5 进程切换后所执行的操作 173 3.5 多处理器运行队列的平衡 175 3.5.1 调度域 176 3.5.2 rebalance_tick()函数 178 3.5.3 load_balance()函数 180 3.5.4 move_tasks()函数 183 3.6 进程退出 187 3.6.1 进程终止 187 3.6.2 进程删除 189 4 进程的并发性体现 191 4.1 内核抢占 193 4.1.1 内核抢占概念 193 4.1.2 同步技术总揽 196 4.2 每CPU变量 197 4.3 原子操作 199 4.4 优化屏障和内存壁垒 203 4.4.1 优化屏障 204 4.4.2 内存壁垒 204 4.5 自旋锁 206 4.6 读写自旋锁 211 4.6.1 为读获取和释放一个锁 213 4.6.2 为写获取或释放一个锁 214 4.7 顺序锁 215 4.8 RCU机制 217 4.9 信号量 219 4.9.1 获取和释放信号量 221 4.9.2 读/写信号量 224 4.9.3 补充信号量 225 4.10 禁止本地中断 226 4.10.1 禁止本地中断 227 4.10.2 禁止下半部(可延迟函数) 229 4.11 一些避免竞争条件的实例 231 4.11.1 引用计数器 231 4.11.2 大内核锁 231 4.11.3 内存描述符读/写信号量 232 4.11.4 slab高速缓存链表的信号量 233 4.11.5 索引节点的信号量 233 4.12 内核同步与互斥的总结 2335 589浏览会员免费
- 《linux/unix系统编程手册(上、下册)》是介绍linux与unix编程接口的权威著作。linux编程资深专家michael kerrisk在书中详细描述了linux/unix系统编程所涉及的系统调用和库函数,并辅之以全面而清晰的代码示例。《linux/unix系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200个程序示例,另含88张表格和115幅示意图。 《linux/unix系统编程手册(上、下册)》总共分为64章,主要讲解了高效读写文件,对信号、时钟和定时器的运用,创建进程、执行程序,编写安全的应用程序,运用posix线程技术编写多线程程序,创建和使用共享库,运用管道、消息队列、共享内存和信号量技术来进行进程间通信,以及运用套接字api编写网络应用等内容。 《linux/unix系统编程手册(上、下册)》在汇聚大批 linux专有特性(epoll、inotify、/proc)的同时,还特意强化了对unix标准(posix、sus)的论述,彻底达到了“鱼与熊掌,二者得兼”的效果,这也堪称本书的最大亮点。 《linux/unix系统编程手册(上、下册)》布局合理,论述清晰,说理透彻,尤其是作者对示例代码的构思巧妙,独具匠心,仔细研读定会受益良多。本书适合从事linux/unix系统开发、运维工作的技术人员阅读,同时也可作为高校计算机专业学生的参考研习资料。5 250浏览会员免费
- 献给所有对技术抱有好奇心和热情的软件工程师们5 202浏览会员免费
- Linux常用命令大全,涵盖基本的centos命令,速查5 2w+浏览会员免费
- UNIX&Linux;大学教程,是国外一本经典的UNIX入门教程,该资源为英文原版。希望学习UNIX的同学可以下载下来看一看,挺好的一本书。5 297浏览会员免费
- 深入浅出Linux_设备驱动编程深入浅出Linux_设备驱动编程5 144浏览会员免费
- 2.6.8.1的内核讲解(2.6是现代Linux系统的经典)。这本书名气不是很大,远远比不上国外的那本大部头以及源代码情景分析啥的,封面也是略略有点土,但绝对是我目前能发现的最好的分析Linux网络协议栈实现的书。难度不大,属于基础向,但是最好对网络协议栈的理论知识有一定的认知,并且结合着理论看,才能了解“为什么”而不仅仅是“怎样做”。5 204浏览会员免费
- Linux内核修炼之道 任桥伟 blog.csdn.net/fudan_abc Linux 内核修炼之道 blog.csdn.net/fudan_abc 目录 前言 .......................................................................................................................................... 3 精华版方法论部分导读 ........................................................................................................... 5 LINUX大史记 ............................................................................................................................ 5 内核学习的方法论 ................................................................................................................... 5 驱动开发的方法论 ................................................................................................................... 7 LINUX内核问题门 .................................................................................................................... 7 缅怀已逝的十八年(1991~1998) ....................................................................................... 8 LINUX诞生记 ............................................................................................................................ 8 泰坦尼克的狂潮 ....................................................................................................................... 9 缅怀已逝的十八年(1999~2002) ..................................................................................... 10 提前发生的革命 ..................................................................................................................... 10 和平、爱情和LINUX ............................................................................................................... 11 缅怀已逝的十八年(2003~2006) ...................................................................................... 11 UBUNTU 4.10 ........................................................................................................................... 11 RICHARD STALLMAN的征婚启事 .......................................................................................... 12 缅怀已逝的十八年(2007~2009) ..................................................................................... 14 来自微软的指控 ..................................................................................................................... 14 首款ANDROID手机 ................................................................................................................ 17 LINUX信用卡 .......................................................................................................................... 17 KERNEL地图:KCONFIG与MAKEFILE ............................................................................. 18 MAKEFILE不是MAKE LOVE................................................................................................... 18 利用KCONFIG和MAKEFILE寻找目标代码 ......................................................................... 19 分析内核源码如何入手?(上) ......................................................................................... 21 分析README ....................................................................................................................... 21 分析KCONFIG和MAKEFILE .................................................................................................. 23 分析内核源码如何入手?(下) ......................................................................................... 26 态度决定一切:从初始化函数开始 ..................................................................................... 26 内核学习的心理问题 ............................................................................................................. 31 内核学习的相关资源 ............................................................................................................. 32 内核文档 ................................................................................................................................ 32 经典书籍 ................................................................................................................................ 33 内核社区 ................................................................................................................................ 34 其他网络资源 ......................................................................................................................... 34 模块机制与“HELLO WORLD!” ........................................................................................... 35 设备模型(上) ..................................................................................................................... 37 设备模型(下) ..................................................................................................................... 42 内核中USB子系统的结构 ................................................................................................... 42 USB子系统与设备模型 ........................................................................................................ 43 驱动开发三件宝:SPEC、DATASHEET与内核源码 ............................................................ 44 LINUX内核问题门——学习问题、经验集锦 ..................................................................... 45 LINUX内核学习常见问题 ...................................................................................................... 45 LINUX内核学习经验 .............................................................................................................. 474 127浏览会员免费
- Vim实用技巧.pdf vim使用技巧、各种命令5 1204浏览会员免费
- Linux学习笔记(带索引,非常经典) LINUX常用操作命令和命令行编辑快捷键 终端快捷键: Ctrl + a/Home 切换到命令行开始 Ctrl + e/End 切换到命令行末尾 Ctrl + l 清除屏幕内容,效果等同于clear Ctrl + u 清除剪切光标之前的内容 Ctrl + k 剪切清除光标之后的内容 Ctrl + y 粘贴刚才所删除的字符 Ctrl + r 在历史命令中查找 (这个非常好用,输入关键字就调出以前的命令了) Ctrl + c 终止命令 ctrl + o 重复执行命令 Ctrl + d 退出 shell,logout Ctrl + z 转入后台运行,但在当前用户退出后就会终止 Ctrl + t 颠倒光标所在处及其之前的字符位置,并将光标移动到下一个字符 Alt + t 交换当前与以前单词的位置 Alt + d 剪切光标之后的词 Ctrl+w 剪切光标所在处之前的一个词(以空格、标点等为分隔符) Ctrl+(x u) 按住 Ctrl的同时再先后按x和 u,撤销刚才的操作 Ctrl+s 锁住终端 Ctrl+q 解锁终端 !! 重复执行最后一条命令 history 显示你所有执行过的编号+历史命令。这个可以配合!编辑来执行某某命令 !$ 显示系统最近的一条参数 最后这个比较有用,比如我先用cat /etc/sysconfig/network-scripts/ifconfig-eth0,然后我想用 vim 编辑。 一般的做法是先用↑ 显示最后一条命令,然后用Home 移动到命令最前,删除cat,然后再输入vim命 令。其实完全可以用vim !$来代替。4 3063浏览会员免费
- 当今介绍sed和awk工具的最经典的资料,好好读下去,才能感受到它们的强大 这也是我找到最清晰的一本5 110浏览会员免费
- Linux Kernel5 78浏览会员免费
- BPF Performance Tools: Linux and Application Observability:源代码参加https://github.com/brendangregg/bpf-perf-tools-book4 4359浏览会员免费
- linux的gcc手册.很实用滴!0 99浏览会员免费
- 《开源》是全球最大中文开源门户linuxpk.com的最新力作。为广大喜欢开源的用户提供开源全方位的信息。3 102浏览会员免费
- Linux系统编程(第二版) 英文版 学习Linux编程经典好书,值得多读多看5 1122浏览会员免费
- Linux内核设计与实现_第三版_清晰中文版,学习内核必看书籍5 251浏览会员免费
- Publisher: Wrox Page : 1371 This book discusses the concepts, structure, and implementation of the Linux kernel. In particular, the individual chapters cover the following topics: ❑ Chapter 1 provides an overview of the Linux kernel and describes the big picture that is investigated more closely in the following chapters. ❑ Chapter 2 talks about the basics of multitasking, scheduling, and process management, and investigates how these fundamental techniques and abstractions are implemented. ❑ Chapter 3 discusses how physical memory is managed. Both the interaction with hardware and the in-kernel distribution of RAM via the buddy system and the slab allocator are covered. ❑ Chapter 4 proceeds to describe how userland processes experience virtual memory, and the comprehensive data structures and actions required from the kernel to implement this view. ❑ Chapter 5 introduces the mechanisms required to ensure proper operation of the kernel on multiprocessor systems. Additionally, it covers the related question of how processes can communicate with each other. ❑ Chapter 6 walks you through the means for writing device drivers that are required to add support for new hardware to the kernel. ❑ Chapter 7 explains how modules allow for dynamically adding new functionality to the kernel. ❑ Chapter 8 discusses the virtual filesystem, a generic layer of the kernel that allows for supporting a wide range of different filesystems, both physical and virtual. ❑ Chapter 9 describes the extended filesystem family, that is, the Ext2 and Ext3 filesystems that are the standard workhorses of many Linux installations. ❑ Chapter 10 goes on to discuss procfs and sysfs, two filesystems that are not designed to store information, but to present meta-information about the kernel to userland. Additionally, a number of means to ease writing filesystems are presented. ❑ Chapter 11 shows how extended attributes and access control lists that can help to improve system security are implemented. ❑ Chapter 12 discusses the networking implementation of the kernel, with a specific focus on IPv4, TCP, UDP, and netfilter. ❑ Chapter 13 introduces how systems calls that are the standard way to request a kernel action from userland are implemented. ❑ Chapter 14 analyzes how kernel activities are triggered with interrupts, and presents means of deferring work to a later point in time. ❑ Chapter 15 shows how the kernel handles all time-related requirements, both with low and high resolution. ❑ Chapter 16 talks about speeding up kernel operations with the help of the page and buffer caches. ❑ Chapter 17 discusses how cached data in memory are synchronized with their sources on persistent storage devices. ❑ Chapter 18 introduces how page reclaim and swapping work.5 389浏览会员免费
- 学习Linux shell编程的经典书籍,由浅到深,适合打基础。0 48浏览会员免费
- BPF-Performance-Tools-by-Brendan-Gregg5 3419浏览会员免费
- 介绍了linux从入门到精通,里面包含linux常用的命令以及基本知识5 0浏览会员免费
- 学习VI和VIM编辑器第7版中文 将近三十年的时间里,vi一直是Unix与Linux采用的标准编辑器,从 1986年开始,《学习vi和Vim编辑器》一直是第一线的vi导引手册。但三十 年来,Unix已不再是三十年前的样子,这本书也不能一成不变。第7版的《 学习vi和Vim》涵盖了Vim的详细指引,Vim是一种很棒的vi同类品。 Vim现在是大多数Linux系统上的默认编辑器,也是Mac OS X的默认vi版 本,同时能在许多其他操作系统上执行。《学习vi和Vim编辑器(中文版第7 版)》将说明使用这两种程序编辑文档的基础技巧,并讨论高级工具,例如 交互式宏与扩展编辑器的脚本——我们的内容编写成容易遵循步骤操作的风 格,成就本书的经典地位。读者将学到: ·快速于vi里移动 ·超越vi基础的技巧,例如使用缓冲区 ·使用vi的全局搜索与替换功能 ·自定义vi,并执行Unix的命令 ·使用Vim的扩展文本对象以及威力强大的正则表达式 ·执行多窗口编辑,并设计Vim脚本 ·充分利用图形化用户界面版的Vim,gvim ·使用Vim的强化功能,例如语法高亮显示及扩展标签 ·Vim与其他三种vi同类品的比较:nvi、elvis、vile vi或Vim,是使用Linux或Unix时的必要知识,无论使用哪种平台,《学 习vi和Vim编辑器(中文版第7版)》都是基础中的基础。 《学习vi和Vim编辑器(中文版第7版)》由罗宾斯、汉娜和拉姆编著 目录回到顶部↑ 《学习vi和vim编辑器(第7版)》 前言 第一部分 基础与高级的vi 第一章 vi文本编辑器 简史 打开与关闭文件 结束而不保存编辑结果 第二章 简单的文本编辑 vi命令 移动光标 简单的编辑 更多插入文本的方法 基本vi命令的复习 第三章 快速移动位置 根据屏幕来移动 根据文本块来移动 根据搜索模式的结果来移动 根据行号来移动 vi移动命令的复习 第四章 越过基础的藩篱 .更多命令组合 打开vi的选项 善加利用缓冲区 对一处做标记 第五章 ex编辑器概述 ex命令 用ex编辑 将一个文件复制到另一个文件 编辑多个文件 第六章 全局替换 确认替换 与上下文相关的替换 模式匹配的规则 模式匹配的范例 模式匹配的最后叮咛 第七章 高级编辑方法 自定义vi 执行unix命令 保存命令 使用ex脚本 编辑程序源代码 第八章 vi同类品的功能总览 它们都是我兄弟 多窗口编辑 图形用户界面 扩展正则表达式 增强的标签 改进的便利功能 编程辅助 编辑器功能一览表 还是原创品最好 预告 第二部分 vim 第九章 vim(vi improved)概述 概览 取得vim 取得unix与gnu/linux环境中的vim 取得windows环境中的vim 取得macintosh环境中的vim 其他操作系统 给新用户的帮助工具与简易模式 小结 第十章 vim对vi的主要改进 内置帮助功能 启动与初始化选项 新的移动命令 扩展的正则表达式 自定义可执行文件 第十一章 vim的多窗口功能 启动多窗口编辑 打开窗口 游走窗口间(在窗口间移动光标) 移动窗口 调整窗口尺寸 缓冲区及其与窗口的交互 在窗口里追踪标签 分页编辑 关闭与离开窗口 摘要 第十二章 vim脚本 你最爱什么色调? 通过脚本动态配置文件类型 关于vim脚本编码的其他思考 资源 第十三章 图形化vim(gvim) gvim概述 自定义滚动条、菜单与工具栏 microsoft windows中的gvim x windows system中的gvim gui选项与命令概要 第十四章程序员专用的vim强化功能 折叠与大纲(大纲模式) 自动智慧缩排 关键字与字典词汇补全 标签堆栈 语法高亮显示 用vim编译与检查错误 关于使用vim设计程序的最后叮咛 第十五章 其他好用的vim功能 编辑二进制文件 digraph:非ascii字符 在其他地方编辑文件 目录间的移动与改变 使用vim备份 以html表现文本 有何差异? 撤销“撤销” 现在的位置? 内容行(大小) vim命令与选项的缩写 几项快捷窍门(不只vim专用) 参考资源 第三部分 其他vi同类品 第十六章 nvi:新的vi 作者与历史 重要的命令行参数 在线帮助与其他说明文档 初始化 多窗口编辑 图形用户界面 扩展正则表达式 改进的编辑功能 编程辅助 国际化支持 资源与支持的操作系统 第十七章 elvis 作者与历史 重要的命令行参数 在线帮助与其他说明文档 多窗口编辑 图形用户界面 扩展正则表达式 改进的编辑功能 编程辅助 有趣的功能 elvis的未来 资源与支持的操作系统 第十八章vile:类似emacs的vi 作者与历史 重要的命令行参数 在线帮助与其他说明文档 初始化 多窗口编辑 图形用户界面 扩展正则表达式 改进的编辑功能 编程辅助 有趣的功能 资源与支持的操作系统 第四部分 附录 附录a vi、ex与vim编辑器 附录b 设置选项 附录c 问题集 附录d vi与国际互联网5 117浏览会员免费
- Linux 内核修炼之道 对初学者有帮助,和参考作用5 52浏览会员免费
- 精通Linux第2版5 164浏览会员免费
- Embedded.Linux.System.Design.and.Development<br><br>1 Introduction ............................................................................................. 1<br>1.1 History of Embedded Linux....................................................2<br>1.1.1 Year 1999.....................................................................3<br>1.1.2 Year 2000.....................................................................4<br>1.1.3 Year 2001.....................................................................4<br>1.1.4 Year 2002.....................................................................5<br>1.1.5 Year 2003.....................................................................6<br>1.1.6 Year 2004.....................................................................6<br>1.2 Why Embedded Linux?............................................................7<br>1.2.1 Vendor Independence.................................................7<br>1.2.2 Time to Market............................................................8<br>1.2.3 Varied Hardware Support...........................................8<br>1.2.4 Low Cost......................................................................8<br>1.2.5 Open Source................................................................9<br>1.2.6 Standards (POSIX(R)) Compliance.............................10<br>1.3 Embedded Linux Versus Desktop Linux..............................10<br>1.4 Frequently Asked Questions..................................................11<br>1.4.1 Is Linux Too Large?...................................................11<br>1.4.2 Is Linux Real-Time Enough?.....................................11<br>1.4.3 How Can I Protect My Proprietary Software?.........12<br>1.4.4 Should I Buy a Commercial Embedded <br>Linux Distribution?.....................................................12<br>1.4.5 Which Embedded Linux Distribution Do I <br>Choose?......................................................................12<br>1.5 Embedded Linux Distributions..............................................13<br>1.5.1 BlueCat Linux............................................................14<br>1.5.2 Cadenux.....................................................................15<br>1.5.3 Denx...........................................................................17<br>ix<br><br>x Embedded Linux System Design and Development<br>1.5.4 Embedded Debian (Emdebian)................................18<br>1.5.5 ELinOS (SYSGO).......................................................19<br>1.5.6 Metrowerks................................................................20<br>1.5.7 MontaVista Linux.......................................................22<br>1.5.8 RTLinuxPro(TM).............................................................23<br>1.5.9 TimeSys Linux............................................................24<br>1.6 Porting Roadmap....................................................................26<br>Notes.................................................................................................28<br>Getting Started ........................................................................................ 29<br>2<br>2.1 Architecture of Embedded Linux..........................................29<br>2.1.1 Real-Time Executive..................................................29<br>2.1.2 Monolithic Kernels....................................................30<br>2.1.3 Microkernel................................................................31<br>2.2 Linux Kernel Architecture......................................................32<br>2.2.1 Hardware Abstraction Layer (HAL)..........................33<br>2.2.2 Memory Manager.......................................................33<br>2.2.3 Scheduler....................................................................34<br>2.2.4 File System.................................................................35<br>2.2.5 IO Subsystem.............................................................36<br>2.2.6 Networking Subsystems............................................36<br>2.2.7 IPC..............................................................................36<br>2.3 User Space..............................................................................36<br>2.4 Linux Start-Up Sequence........................................................41<br>2.4.1 Boot Loader Phase....................................................42<br>2.4.2 Kernel Start-Up..........................................................43<br>2.4.3 User Space Initialization...........................................47<br>2.5 GNU Cross-Platform Toolchain.............................................48<br>2.5.1 Building Toolchain....................................................50<br>2.5.2 Building Toolchain for MIPS....................................55<br>Board Support Package ......................................................................... 59<br>3<br>3.1 Inserting BSP in Kernel Build Procedure.............................60<br>3.2 The Boot Loader Interface.....................................................62<br>3.3 Memory Map...........................................................................66<br>3.3.1 The Processor Memory Map — MIPS Memory <br>Model..........................................................................67<br>3.3.2 Board Memory Map..................................................68<br>3.3.3 Software Memory Map..............................................68<br>3.4 Interrupt Management............................................................72<br>3.5 The PCI Subsystem.................................................................77<br>3.5.1 Uniqueness of PCI Architecture...............................77<br>3.5.2 PCI Software Architecture.........................................79<br><br>Contents xi<br>3.6 Timers......................................................................................81<br>3.7 UART.......................................................................................81<br>3.7.1 Implementing the Console.......................................81<br>3.7.2 The KGDB Interface.................................................82<br>3.8 Power Management................................................................83<br>3.8.1 Hardware and Power Management.........................83<br>3.8.2 Power Management Standards.................................85<br>3.8.3 Supporting Processor’s Power-Saving Modes.........86<br>3.8.4 Unified Driver Framework for Power <br>Management...............................................................87<br>3.8.5 Power Management Applications.............................88<br>Embedded Storage ................................................................................. 89<br>4<br>4.1 Flash Map................................................................................89<br>4.2 MTD—Memory Technology Device......................................91<br>4.2.1 The MTD Model........................................................91<br>4.2.2 Flash Chips................................................................92<br>4.2.3 Flash Disks.................................................................92<br>4.3 MTD Architecture...................................................................94<br>mtd_info Data Structure.........................................96<br>4.3.1<br>4.3.2 Interface Between MTD Core and Low-Level <br>Flash Drivers..............................................................96<br>4.4 Sample MTD Driver for NOR Flash......................................97<br>4.5 The Flash-Mapping Drivers.................................................106<br>mtd_info for NOR Flash Chip............106<br>4.5.1 Filling up <br>mtd_info for NAND Flash Chip.........108<br>4.5.2 Filling up <br>mtd_info..............................................109<br>4.5.3 Registering <br>4.5.4 Sample Mapping Driver for NOR Flash................111<br>4.6 MTD Block and Character Devices.....................................114<br>4.7 Mtdutils Package...................................................................116<br>4.8 Embedded File Systems.......................................................116<br>4.8.1 Ramdisk....................................................................117<br>4.8.2 RAMFS......................................................................117<br>4.8.3 CRAMFS (Compressed RAM File System).............117<br>4.8.4 Journaling Flash File Systems — JFFS and <br>JFFS2.........................................................................117<br>4.8.5 NFS — Network File System..................................119<br>4.8.6 PROC File System....................................................119<br>4.9 Optimizing Storage Space....................................................120<br>4.9.1 Kernel Space Optimization.....................................120<br>4.9.2 Application Space Optimization.............................121<br>4.9.3 Applications for Embedded Linux.........................122<br>4.10 Tuning Kernel Memory........................................................124<br><br>xii Embedded Linux System Design and Development<br>5 Embedded Drivers ............................................................................... 127<br>5.1 Linux Serial Driver................................................................128<br>5.1.1 Driver Initialization and Start-Up...........................130<br>5.1.2 Data Transmission...................................................134<br>5.1.3 Data Reception........................................................134<br>5.1.4 Interrupt Handler.....................................................134<br>5.1.5 Terminos Settings....................................................138<br>5.2 Ethernet Driver.....................................................................138<br>5.2.1 Device Initialization and Clean-Up........................140<br>5.2.2 Data Transmission and Reception .........................142<br>5.3 I2C Subsystem on Linux......................................................144<br>5.3.1 I2C Bus.....................................................................145<br>5.3.2 I2C Software Architecture.......................................147<br>5.4 USB Gadgets.........................................................................152<br>5.4.1 USB Basics...............................................................153<br>5.4.2 Ethernet Gadget Driver...........................................158<br>5.5 Watchdog Timer...................................................................161<br>5.6 Kernel Modules.....................................................................162<br>5.6.1 Module APIs............................................................162<br>5.6.2 Module Loading and Unloading............................164<br>Notes...............................................................................................164<br>Porting Applications ............................................................................ 165<br>6<br>6.1 Architectural Comparison.....................................................165<br>6.2 Application Porting Roadmap..............................................166<br>6.2.1 Decide Porting Strategy..........................................167<br>6.2.2 Write an Operating System Porting Layer <br>(OSPL)......................................................................169<br>6.2.3 Write a Kernel API Driver......................................170<br>6.3 Programming with Pthreads................................................171<br>6.3.1 Thread Creation and Exit.......................................172<br>6.3.2 Thread Synchronization..........................................174<br>6.3.3 Thread Cancellation................................................180<br>6.3.4 Detached Threads...................................................181<br>6.4 Operating System Porting Layer (OSPL).............................182<br>6.4.1 RTOS Mutex APIs Emulation..................................182<br>6.4.2 RTOS Task APIs Emulation....................................185<br>6.4.3 IPC and Timer APIs Emulation..............................191<br>6.5 Kernel API Driver.................................................................191<br>6.5.1 Writing User-Space Stubs........................................194<br>6.5.2 Kapi Driver Implementation...................................195<br>6.5.3 Using the Kapi Driver.............................................199<br>Note.................................................................................................200<br><br>Contents xiii<br>7 Real-Time Linux ................................................................................... 201<br>7.1 Real-Time Operating System...............................................202<br>7.2 Linux and Real-Time............................................................202<br>7.2.1 Interrupt Latency.....................................................203<br>7.2.2 ISR Duration............................................................204<br>7.2.3 Scheduler Latency....................................................205<br>7.2.4 Scheduler Duration..................................................207<br>7.2.5 User-Space Real-Time.............................................209<br>7.3 Real-Time Programming in Linux.......................................209<br>7.3.1 Process Scheduling..................................................210<br>7.3.2 Memory Locking......................................................213<br>7.3.3 POSIX Shared Memory...........................................223<br>7.3.4 POSIX Message Queues..........................................225<br>7.3.5 POSIX Semaphores..................................................232<br>7.3.6 Real-Time Signals....................................................233<br>7.3.7 POSIX.1b Clock and Timers...................................241<br>7.3.8 Asynchronous I/O...................................................246<br>7.4 Hard Real-Time Linux..........................................................252<br>7.4.1 Real-Time Application Interface (RTAI).................253<br>7.4.2 ADEOS......................................................................258<br>Building and Debugging ...................................................................... 261<br>8<br>8.1 Building the Kernel..............................................................263<br>8.1.1 Understanding Build Procedure.............................265<br>8.1.2 The Configuration Process......................................266<br>8.1.3 Kernel Makefile Framework...................................268<br>8.2 Building Applications...........................................................270<br>8.2.1 Cross-Compiling Using Configure..........................273<br>8.2.2 Troubleshooting Configure Script..........................274<br>8.3 Building the Root File System.............................................275<br>8.4 Integrated Development Environment................................278<br>8.4.1 Eclipse......................................................................279<br>8.4.2 KDevelop.................................................................279<br>8.4.3 TimeStorm................................................................279<br>8.4.4 CodeWarrior.............................................................280<br>8.5 Debugging Virtual Memory Problems................................280<br>8.5.1 Debugging Memory Leaks......................................282<br>8.5.2 Debugging Memory Overflows..............................286<br>8.5.3 Debugging Memory Corruption.............................287<br>8.6 Kernel Debuggers.................................................................291<br>8.7 Profiling.................................................................................293<br>8.7.1 eProf—An Embedded Profiler................................294<br>8.7.2 OProfile....................................................................300<br><br>xiv Embedded Linux System Design and Development<br>8.7.3 Kernel Function Instrumentation...........................302<br>Notes...............................................................................................308<br>Embedded Graphics ............................................................................. 309<br>9<br>9.1 Graphics System...................................................................309<br>9.2 Linux Desktop Graphics—The X Graphics System...........311<br>9.2.1 Embedded Systems and X......................................312<br>9.3 Introduction to Display Hardware......................................313<br>9.3.1 Display System........................................................313<br>9.3.2 Input Interface.........................................................316<br>9.4 Embedded Linux Graphics..................................................316<br>9.5 Embedded Linux Graphics Driver......................................316<br>9.5.1 Linux Frame Buffer Interface.................................317<br>9.5.2 Frame Buffer Internals............................................326<br>9.6 Windowing Environments, Toolkits, and Applications.....328<br>9.6.1 Nano-X.....................................................................335<br>9.7 Conclusion.............................................................................340<br>Notes...............................................................................................340<br>uClinux ................................................................................................. 341<br>10<br>10.1 Linux on MMU-Less Systems...............................................341<br>10.1.1 Linux Versus uClinux..............................................342<br>10.2 Program Load and Execution..............................................343<br>10.2.1 Fully Relocatable Binaries (FRB)............................345<br>10.2.2 Position Independent Code (PIC)..........................345<br>10.2.3 bFLT File Format.....................................................346<br>10.2.4 Loading a bFLT File................................................347<br>10.3 Memory Management...........................................................358<br>10.3.1 Heap.........................................................................358<br>10.3.2 Stack.........................................................................363<br>10.4 File / Memory Mapping—The Intricacies of mmap( ) <br>in uClinux.............................................................................364<br>10.5 Process Creation...................................................................365<br>10.6 Shared Libraries....................................................................367<br>10.6.1 uClinux Shared Library Implementation <br>(libN.so)....................................................................367<br>10.7 Porting Applications to uClinux..........................................370<br>10.7.1 Creating uClinux Programs.....................................370<br>10.7.2 Creating Shared Libraries in uClinux.....................371<br>10.7.3 Using Shared Library in an Application................373<br>10.7.4 Memory Limitations.................................................375<br>10.7.5 mmap Limitations....................................................375<br>10.7.6 Process-Level Limitations........................................375<br><br>Contents xv<br>10.8 XIP—eXecute In Place.........................................................375<br>10.8.1 Hardware Requirements .........................................377<br>10.8.2 Software Requirements...........................................378<br>10.9 Building uClinux Distribution..............................................378<br>Notes...............................................................................................380<br>Appendices<br>Booting Faster ...................................................................................... 383<br>A<br>Techniques for Cutting Down Bootloader Initialization.............384<br>Tuning Kernel for Decreased Boot-Up Time..............................385<br>Tuning User Space for Decreased Boot-Up Time......................385<br>Measuring Boot-Up Time..............................................................386<br>GPL and Embedded Linux ................................................................... 387<br>B<br>User-Space Applications................................................................387<br>Kernel..............................................................................................388<br>Points to Remember......................................................................389<br>Notes...............................................................................................390<br>............................................................................................................ 391<br>Index5 232浏览会员免费
- ansible是新出现的运维工具是基于Python研发的糅合了众多老牌运维工具的优点实现了批量操作系统配置、批量程序的部署、批量运行命令等功能。5 353浏览会员免费
- hacks的意思应该可以翻译成‘玩转’,这本书就是玩转ubuntu linux,喜欢ubuntu linux的可以看看。5 90浏览会员免费
- 高清英文PDF版。 《fedora和red hat enterprise linux实用指南(第6版)》采用通俗易懂的语言和大量的实例,对目前企业应用最为广泛的fedora和red hat enterprise linux版本的应用进行了系统、科学、全面的介绍,包括linux系统管理、互联网服务器搭建、内核编译及执行、命令行使用等重点内容,并且对应用perl脚本进行自动化管理进行了详细介绍。 首屈一指的Fedora和RHEL的参考资源:学习和工作的最佳参考,全面掌握Linux管理和安全:采用基于GUI的图形化工具、命令行以及Perl脚本语言,搭建重要的Internet服务器:一步一步第搭建示例,包括Samba、Apache、sendmail、DNS、LDAP、FTP等服务器。5 208浏览会员免费
- LINUX-API大全4 354浏览会员免费
- linux内核分析及编程,倪继利编,书本结合代码,讲的比较详细。5 308浏览会员免费
- 此文档是个人学习了《Linux命令行与shell脚本编程大全》后,整理的学习笔记以及学习心得,希望对大家有所帮助。0 6391浏览会员免费
- 非常非常详细的Linux多线程教程,详细的都无语了,要得拿走看吧,挺好,挺好5 356浏览会员免费
- 从实践中学嵌入式Linux操作系统,华清远见5 272浏览会员免费
- 这本书是讲LLVM的,LLVM是个编译器后端,搞这块的朋友应该不陌生吧,而网上关于LLVM各个类的用法资料较少,基本靠代码注释生成的doxygen,这个pdf是文字版(非扫描版)。5 182浏览会员免费
- makefile教程(中文版).pdf5 3830浏览会员免费
- 请注意: 下载完,评论的同时,请点击评论框上方的五角星(共5个五角星),这样你的被扣的积分就可以返还了。 如果只评论,不点击小五角星,积分不会返还。 一定要先下载完,再评论。如果先评论后下载,或者在下载的过程中评论,积分同样不会返还。 *************************************************************** 更多linux、ARM和C语言资源请参考: http://blog.csdn.net/arkofnoach/archive/2010/10/23/5960560.aspx5 188浏览会员免费
- Linux Bible, 9th Edition is the ultimate hands-on Linux user guide, whether you're a true beginner or a more advanced user navigating recent changes. This updated ninth edition covers the latest versions of Red Hat Enterprise Linux 7 (RHEL 7), Fedora 21, and Ubuntu 14.04 LTS, and includes new information on cloud computing and development with guidance on Openstack and Cloudforms. With a focus on RHEL 7, this practical guide gets you up to speed quickly on the new enhancements for enterprise-quality file systems, the new boot process and services management, firewalld, and the GNOME 3 desktop. Written by a Red Hat expert, this book provides the clear explanations and step-by-step instructions that demystify Linux and bring the new features seamlessly into your workflow.5 68浏览会员免费