本书对 Linux 作系统早期内核(V0.12)全部源代码文件进行了详 细、全面的注释和说明,旨在帮助读者用较短的时间对 Linux 的工作机理 获得全面而深刻的理解,为进一步学习和研究现代 Linux 系统打下坚实的 基础。虽然分析的版本较低,但该内核已能够正常编译运行,并且其中已 包括了 Linux 工作原理的精髓。书中首先概要地介绍了 Linux 内核发展历 史,说明了各内核版本之间的主要区别和改进,给出了选择 0.12 版内核源 代码作为研究对象的原因。然后给出了阅读内核源代码所需的相关基础知 识,概要介绍了运行 Linux 系统的 PC 硬件组成结构、编写内核使用的汇编 语言和 C 语言扩展部分,并且重点说明了 80x86 处理器在保护模式下运行 的编程方法。接着介绍了内核代码概况,给出了内核源代码目录树结构, 并依据该组织结构对所有内核程序和文件进行了详细描述和
《Linux从入门到精通(第3版)》是获得大量读者好评的 Linux典藏大系 中的经典畅销书《Linux从入门到精通》的第3版。《Linux从入门到精通》第2版累计30次印刷,印数超过10万册,多次被评为清华大学出版社 年度畅销书 ,还曾获得 51CTO读书频道 颁发的 最受读者喜爱的原创IT技术图书奖 ,并被ChinaUnix技术社区大力推荐。《Linux从入门到精通(第3版)》基于新发布的Ubuntu 22.04,循序渐进地向读者介绍Linux的基础应用、系统管理、网络应用、娱乐与办公、程序开发、服务器配置和系统安全等相关知识。《Linux从入门到精通(第3版)》提供教学视频、思维导图、教学PPT、习题参考答案和软件工具等超值配套资源,帮助读者高效、直观地学习。 《Linux从入门到精通(第3版)》共27章,分为7篇。第1篇 基础知识 ,包括Linux概述、Linux的安装、Linux的基本配置、桌面环境。第2篇 系
《Linux从入门到精通(第3版)》是获得大量读者好评的 Linux典藏大系 中的经典畅销书《Linux从入门到精通》的第3版。《Linux从入门到精通》第2版累计30次印刷,印数超过10万册,多次被评为清华大学出版社 年度畅销书 ,还曾获得 51CTO读书频道 颁发的 最受读者喜爱的原创IT技术图书奖 ,并被ChinaUnix技术社区大力推荐。《Linux从入门到精通(第3版)》基于新发布的Ubuntu 22.04,循序渐进地向读者介绍Linux的基础应用、系统管理、网络应用、娱乐与办公、程序开发、服务器配置和系统安全等相关知识。《Linux从入门到精通(第3版)》提供教学视频、思维导图、教学PPT、习题参考答案和软件工具等超值配套资源,帮助读者高效、直观地学习。 《Linux从入门到精通(第3版)》共27章,分为7篇。第1篇 基础知识 ,包括Linux概述、Linux的安装、Linux的基本配置、桌面环境。第2篇 系
《Linux环境C程序设计(第3版)》是获得大量读者好评的 Linux典藏大系 中的《Linux环境C程序设计》(第3版),内容丰富,从基础知识到高级技术和核心原理,再到项目开发,几乎涵盖Linux环境C程序设计的所有重要知识点。《Linux环境C程序设计(第3版)》提供大量实例,供读者实战演练,并提供教学视频、源程序、思维导图、习题参考答案和教学PPT等超值配套资源,帮助读者高效、直观地学习。 《Linux环境C程序设计(第3版)》共27章,分为6篇。第1篇 Linux基础知识 主要介绍Linux系统概述、Linux基本操作、GCC/G 编译器、GDB调试器、开发环境搭建等;第2篇 C/C 语言基础知识 主要介绍C语言编程基础、数据类型、运算符、表达式、程序控制结构、数组与指针、函数、字符与字符串处理、结构体与共用体、C 语言编程基础等;第3篇 Linux系统编程 主要介绍文件操作、文件I/O操
《鸟哥的Linux私房菜 基础学习篇(第4版)》本书是知名度颇高的Linux入门书《鸟哥的Linux私房菜基础学习篇》的新版,全面而详细地介绍了Linux操作系统。 全书分为五部分:第一部分着重说明
长期以来,新设计团队一直在为设计一个自主的、有所突破和创新的操作系统而努力。为了让新的成员能更快、更容易地理解操作系统的精髓,从更高的角度去鉴赏和发现操作系统设计中的精妙与不足,团队成员以Linux 0.11内核为例,对操作系统的设计思想和实现原理进行了深刻地剖析,取得了十分好的效果,很好地培养和锻炼了团队成员对操作系统的驾驭能力。为了实现让国人也能设计出自己的操作系统的目标,本书作者团队无私地将他们的独特研究方式与研究成果奉献了出来,希望所有想要去深刻理解Linux内核和操作系统设计思想朋友能从中受益。 本书的特点在于,既不是空泛地讲理论,也不是单纯地从语法的角度去逐行地分析源代码,而是以操作系统在实际运行中的几个经典事件为主线,将理论和实际结合在一起,精准地再现了操作系统在实际运行
基于BPF的性能优化工具提供了的系统级和应用程序级的观察能力,使用这些工具可以优化性能、调试代码、增强安全性、降低成本。本书是使用这些观察工具的全面指南。本书作为全面介绍BPF技术的图书,从BPF技术的起源到未来发展方向都有涵盖,不仅全面介绍了BPF的编程模型,还完整介绍了两个主要的BPF前端编程框架—BCC和bpftrace,更给出了一系列实现范例,全面展示了BPF技术的实际能力和未来发展前景,以及使用BPF工具优化性能、修复问题、探索线上系统的内部情况。本书的另一个关注方向是Linux系统性能和应用程序性能的调优。本书全面介绍了系统性能调优的策略、工具与实践案例,不仅介绍了对应的BPF工具,还着重介绍了这些工具如何与Linux传统性能工具进行互补,这样读者可以有选择地进行使用。本书介绍的工具小巧精致,且包含了简单易读的源代码,这
本书从需求的角度出发,以层次分析的方法探究Linux内核以及驱动的各部分框架和实现。另外以TI的嵌入式芯片为例,对内核各部分功能特别是电源管理功能进行代码级别的分析。整体以需求是什么,如何实现相应需求来进行分析,更易于对系统的把握和理解。本书将软件和硬件结合起来分析了嵌入式处理以及Linux内核实现中的各种技术,特别是对电源管理技术进行了全面细致的分析和介绍。本书可以作为本科和研究生操作系统的参考书,也适合Linux内核,驱动以及嵌入式系统各种级别的开发者和爱好者。
本书主要讲述嵌入式系统开发中的两个难点:系统的内存使用与系统性能优化。 关于系统的内存使用,本书试图完成两项任务:①增加系统整体的空闲内存数量,从而提高进程的并发能力;②使系统在长时间运行后,仍然能够保持较高数量的空闲内存。本书所讲述的内存使用,不是Linux内核的内存管理,而是在用户层观察进程是如何使用内存的。 关于系统性能优化,本书不同于同类书侧重编程语法或者发挥硬件性能的做法,而是着眼于大型软件项目性能优化实践,阐明了逻辑优化与代码优化的辩证关系,提出了软件优化层次的概念。针对代码优化,阐述了代码优化的境界,为代码优化指明了研究方向。对于编程过程中的一些常用元素,通过查看汇编代码的方式,阐述了其性能上的差别。 本书适合嵌入式系统开发人员阅读,也可供有经验的C/C++程序员和Li
基于BPF的性能优化工具提供了靠前的系统级和应用程序级的观察能力,使用这些工具可以优化性能、调试代码、增强安全性、降低成本。本书是使用这些观察工具的全面指南。本书作为全面介绍BPF技术的图书,从BPF
本书选择经典的开放源代码,全面系统地分析了Linux安全机制。本书共有17章,前10章着重介绍了Linux操作系统的安全机制及实现方法,阐述了公钥设施的基本概念和使用openSSL库接口进行编程的方法。后7章介绍了可信平台模块框架规范和可信网络连接框架规范,并分析了可信平台模块的驱动程序的实现机制。另外,作者还结合实际代码归纳了Linux系统编程的编程模式,介绍了Makefile生成方法和ELF文件执行过程。 本书主要针对从事Linux系统编程的中、读者及开发者,也可作为大学与计算机相关的专业的教材和参考书。
本书有两条线索,一条线索是以Linux平台为载体全面深入地介绍C语言的语法和程序的工作原理,另一条线索是介绍程序设计的基本思想和开发调试方法。本书分为两部分:部分讲解编程语言和程序设计的基本思想方法,让读者从概念上认识C语言;第二部分结合操作系统和体系结构的知识讲解程序的工作原理,让读者从本质上认识C语言。 本书适合做零基础的初学者学习C语言的本教材,帮助读者打下牢固的基础。有的编程经验但知识体系不够完整的读者也可以对照本书查缺补漏,从而更深入地理解程序的工作原理。本书最初是为北京亚嵌教育研究中心的嵌入式Linux系统工程师就业班课量身定做的教材之一,也适合作为高等院校程序设计基础课程的教材。本书对于C语言的语法介绍得非常全面,对C99标准做了很多解读,因此也可以作为一本精简的C语言语法参考书。
本书基于2.6.22内核,对USB子系统的大部分源代码逐行进行分析,系统地阐释了Linux内核中USB子系统是如何运转的,子系统内部的各个模块之间是如何互相协作互相配合的。 本书使用幽默诙谐的笔调对Linux内核中的USB子系统源代码进行了分析,形象且详尽地介绍了USB在Linux中的实现。本书从U盘、Hub、USB Core直到主机控制器覆盖了USB实现的方方面面,被一些网友誉为USB开发的“”。 对于Linux初学者,可以通过本书掌握学习内核、浏览内核代码的方法;对于Linux驱动开发者,可以通过本书对
本书以Linux操作系统为基础,详细介绍了Linux 内核子系统,并辅以大量内核源代码和示例程序进行演示,读者深入Linux内核。 本书的主要内容包括:Linux 基础知识、内核探索工具集、进程的整个生命周期、内存区、页面、Slab 分配器、用于输入/输出的各种设备、文件系统、抢占、自旋锁、信号量、内核引导、构建Linux内核,以及向内核添加代码等,同时还简单介绍了一些应用工具和实用程序。每章末尾都给出一些练习,涉及内核运行的操作及工作原理。 本书适合对Linux 内核感兴趣的各层次读者,无论对Linux 初学者还是Linux程序开发人员,本书都是一本很有价值的参考书。