本书对 Linux 作系统早期内核(V0.12)全部源代码文件进行了详 细、全面的注释和说明,旨在帮助读者用较短的时间对 Linux 的工作机理 获得全面而深刻的理解,为进一步学习和研究现代 Linux 系统打下坚实的 基础。虽然分析的版本较低,但该内核已能够正常编译运行,并且其中已 包括了 Linux 工作原理的精髓。书中首先概要地介绍了 Linux 内核发展历 史,说明了各内核版本之间的主要区别和改进,给出了选择 0.12 版内核源 代码作为研究对象的原因。然后给出了阅读内核源代码所需的相关基础知 识,概要介绍了运行 Linux 系统的 PC 硬件组成结构、编写内核使用的汇编 语言和 C 语言扩展部分,并且重点说明了 80x86 处理器在保护模式下运行 的编程方法。接着介绍了内核代码概况,给出了内核源代码目录树结构, 并依据该组织结构对所有内核程序和文件进行了详细描述和
《鸟哥的Linux私房菜 基础学习篇(第4版)》本书是知名度颇高的Linux入门书《鸟哥的Linux私房菜基础学习篇》的新版,全面而详细地介绍了Linux操作系统。 全书分为五部分:第一部分着重说明
长期以来,新设计团队一直在为设计一个自主的、有所突破和创新的操作系统而努力。为了让新的成员能更快、更容易地理解操作系统的精髓,从更高的角度去鉴赏和发现操作系统设计中的精妙与不足,团队成员以Linux 0.11内核为例,对操作系统的设计思想和实现原理进行了深刻地剖析,取得了十分好的效果,很好地培养和锻炼了团队成员对操作系统的驾驭能力。为了实现让国人也能设计出自己的操作系统的目标,本书作者团队无私地将他们的独特研究方式与研究成果奉献了出来,希望所有想要去深刻理解Linux内核和操作系统设计思想朋友能从中受益。 本书的特点在于,既不是空泛地讲理论,也不是单纯地从语法的角度去逐行地分析源代码,而是以操作系统在实际运行中的几个经典事件为主线,将理论和实际结合在一起,精准地再现了操作系统在实际运行
本书有两条线索,一条线索是以Linux平台为载体全面深入地介绍C语言的语法和程序的工作原理,另一条线索是介绍程序设计的基本思想和开发调试方法。本书分为两部分:部分讲解编程语言和程序设计的基本思想方法,让读者从概念上认识C语言;第二部分结合操作和体系结构的知识讲解程序的工作原理,让读者从本质上认识C语言。
本书以Fedora 14为平台,深入浅出、循序渐进的讲解了Linux操作系统下的C语言程序设计,并通过大量的程序实例,以及综合开发案例的演示,帮助读者快速掌握Linux下C语言编程的方法和技巧。本书内容翔实,包括Linux系统简介、Shell编程、Linux C开发环境、Linux下常用C库函数、进程管理、线程管理、基于文件描述法的I/O操作、基于流的I/O操作、套接字编程、数据库编程、GTK 图形界面开发等等,并结合两个具体的项目案例,详细介绍了Linux平台下C程序开发的方法和技巧。
这是一本系统阐述 Linux 设备驱动程序技术内幕的专业书籍,它的侧重点不是讨论如何在 Linux 系统下编写设备驱动程序,而是要告诉读者隐藏在这些设备驱动程序背后的那些内核机制及原理。作者通过对 Linux 内核源码抽丝剥茧般的解读,再辅之以精心设计的大量图片,使读者在阅读完本书后对驱动程序前台所展现出来的那些行为特点变得豁然开朗。 本书涵盖了编写设备驱动程序所需要的几乎所有的内核设施,比如内核模块、中断处理、互斥与同步、内存分配、延迟操作、时间管理,以及新设备驱动模型等内容。为了避免读者迷失在某一技术细节的讨论当中,本书在一个比较高的层面上进行展开,以一种
本书主要讲述嵌入式系统开发中的两个难点:系统的内存使用与系统性能优化。 关于系统的内存使用,本书试图完成两项任务:①增加系统整体的空闲内存数量,从而提高进程的并发能力;②使系统在长时间运行后,仍然能够保持较高数量的空闲内存。本书所讲述的内存使用,不是Linux内核的内存管理,而是在用户层观察进程是如何使用内存的。 关于系统性能优化,本书不同于同类书侧重编程语法或者发挥硬件性能的做法,而是着眼于大型软件项目性能优化实践,阐明了逻辑优化与代码优化的辩证关系,提出了软件优化层次的概念。针对代码优化,阐述了代码优化的境界,为代码优化指明了研究方向。对于编程过程中的一些常用元素,通过查看汇编代码的方式,阐述了其性能上的差别。 本书适合嵌入式系统开发人员阅读,也可供有经验的C/C++程序员和Li
本书主要讲述嵌入式系统开发中的两个难点:系统的内存使用与系统性能优化。 关于系统的内存使用,本书试图完成两项任务:①增加系统整体的空闲内存数量,从而提高进程的并发能力;②使系统在长时间运行后,仍然能够保持较高数量的空闲内存。本书所讲述的内存使用,不是Linux内核的内存管理,而是在用户层观察进程是如何使用内存的。 关于系统性能优化,本书不同于同类书侧重编程语法或者发挥硬件性能的做法,而是着眼于大型软件项目性能优化实践,阐明了逻辑优化与代码优化的辩证关系,提出了软件优化层次的概念。针对代码优化,阐述了代码优化的境界,为代码优化指明了研究方向。对于编程过程中的一些常用元素,通过查看汇编代码的方式,阐述了其性能上的差别。 本书适合嵌入式系统开发人员阅读,也可供有经验的C/C++程序员和Li
《ARMLinux内核源码剖析》是多位作者在3年Liunx内核分析经验和庞大资料基础上写成的,收录了其他同类书未曾讲解的内容并进行逐行分析,一扫当前市场中其他理论书带给读者的郁闷。书中详细的代码分析与大量插图能够使读者对Linux内核及ARM获得正确认识,自然而然习得如何有效分析定期发布的Linux内核。 《ARMLinux内核源码剖析》适合想从Linux内核启动开始透彻分析启动过程的读者,因Linux代码量庞大而束手无策的人、想要了解Linux实际运行过程的人、渴求OS实操理论的人,本书必将成为他们不可或缺的参考书。
《LinuxC程序设计王者归来()》由浅入深,全面细致地讲述了Linux环境C程序设计从基本概念到实际操作,从核心原理到具体实践,再到实际案例开发等内容,涵盖了LinuxC程序设计的所有重要知识点。本书讲解时结合大量实例,便于读者通过动手实践更加深刻地理解所学知识。另外,本书配1张DVD,内容为作者专门为本书录制的16.8小时高清配套教学视频、本书涉及的实例源文件及其他相关学习资料。《LinuxC程序设计王者归来()》共28章,分6篇。篇Linux下C语言基础,介绍了Linux发展、控制结构、C语言中的函数、指针与字符串及C语言高级技术等;第2篇C语言开发环境,介绍了vi编辑器、gcc编译器、构建makefile文件和gdb调试器等;第3篇Linux进程操作,介绍了进程环境、进程控制、时间和日历历程、信号及信号处理、进程间通信、线程和线程高级操作等;第4篇Linux文件操作,介绍了
《UNIX环境高级编程》(简称APUE)几乎是Linux领域程序员人手的一本书。但在掌握和理解APUE的内容后,又该如何继续提高自己的技能,如何更深入地理解Linux环境编程及其背后的工作机制呢?本书将从一个全新的角度带领读者重新进入Linux环境编程,从应用出发,深入内核源码,研究Linux各接口的工作机制和原理,让读者不仅知其然,还知其所以然。作为Linux开发工程师,如果不仅掌握Linux的应用层开发,同时还熟悉Linux的内核源码,那么其在Linux环境下设计开发任何产品都将游刃有余,稳定且高效。本书是Linux技术专家高峰和李彬的合力之作,是两个人多年开发经验的总结和分享,也是市场上一本将Linux应用态与内核态相结合的技术图书,选择这种写作方式是为了向APUE的作者致敬。本书涵盖了APUE中大部分章节的内容,并针对Linux环境,以作者多年经验,详细解析了Linux常用
本书主要讲述嵌入式开发中的两个难点:的内存使用与性能优化。 关于的内存使用,本书试图完成两项任务:①增加整体的空闲内存数量,从而提高进程的并发能力;②使在长时间运行后,仍然能够保持较高数量的空闲内存。本书所讲述的内存使用,不是Linux内核的内存管理,而是在用户层观察进程是如何使用内存的。 关于性能优化,本书不同于同类书侧重编程语法或者发挥硬件性能的做法,而是着眼于大型软件项目性能优化实践,阐明了逻辑优化与代码优化的辩证关系,提出了软件优化层次的概念。针对代码优化,阐述了代码优化的境界,为代码优化指明了研究方向。对于编程过程中的一些常用元素,通过查看汇编代码的方式,阐述了其性能上的差别。 本书适合嵌入式开发人员阅读,也可供有经验的C/C++程序员和Linux程序员参考。
本书分为4部分共20章。部分(~3章)介绍UbuntuLinux桌面应用基础,包括桌面环境设置、网络环境配置、系统更新及软件包管理等基础应用,为之后的系统管理和应用奠定基础。第二部分(第4~6章)介绍文件系统管理、用户及权限管理、磁盘管理,每一种管理都分别从图形界面和文字界面两方面介绍,以满足不同读者的需要。第三部分(第7~9章)以、常用的桌面应用为出发点,介绍UbuntuLinux的各种桌面工具的应用,以及UbuntuLinux的高阶系统管理。第四部分(0~20章)介绍Ubuntu中的网络配置及管理,重点介绍企业级服务器配置。本书采用案例实践方式讲解。学完本书,读者完全可以胜任Linux的系统管理或网络管理工作。本书可以作为高等院校计算机专业学生学习Linux操作系统的专业教材及培训资料,也可以作为网络管理工程师的参考用书,同时还可以作为Linux平台嵌入式开发者或利
本书涉及嵌入式Linux系统设备驱动开发的各个环节。全书共21章,内容包括:Linux系统基本操作,嵌入式Linux开发环境的搭建,Linux设备驱动的概念,Linux内核模块编程,字符设备驱动(含LED驱动)的开发及完善,内核同步机制,中断驱动,内核工作队列,内核定时器,平台设备、LCD设备、Linux触摸屏和温度传感器的驱动,以及Linux内核各子系统(clock子系统、输入子系统、IIC子系统、SPI子系统和MTD子系统)的介绍。本书由深圳信盈达嵌入式学院的嵌入式开发工程师编写,并配备了相关的实验和完整的驱动程序代码及测试应用程序代码。
基于BPF的性能优化工具提供了 的系统级和应用程序级的观察能力,使用这些工具可以优化性能、调试代码、增强安全性、降低成本。本书是使用这些观察工具的全面指南。本书作为全面介绍 BPF 技术的图书,从 BPF 技术的起源到未来发展方向都有涵盖,不仅全面介绍了 BPF 的编程模型,还完整介绍了两个主要的 BPF 前端编程框架 — BCC 和 bpftrace, 给出了一系列实现范例,全面展示了 BPF技术的实际能力和未来发展前景,以及使用BPF工具优化性能、修复问题、探索 系统的内部情况。本书的另一个关注方向是 Linux 系统性能和应用程序性能的调优。本书全面介绍了系统性能调优的策略、工具与实践案例,不仅介绍了对应的 BPF 工具,还着重介绍了这些工具如何与 Linux 传统性能工具进行互补,这样读者可以有选择地进行使用。本书介绍的工具小巧精致,且包含了简单易读的源
《汇编语言:基于linux环境(第3版)》是风靡美国的经典汇编语言书籍的版,美国计算机领域作者jeffduntemann的力作。作者以其渊博的专业知识,丰富的实战经验,结合生动详尽的实例,全面系统地介绍了linux环境下如何使用汇编语言进行程序设计以及与之有关的背景知识和相关工具的使用。本书写作风格独特,全书采用作者有特色的对话式风格,结合大量源于生活的暗喻,将晦涩难懂的知识点条分缕析地呈现出来,以便读者能以轻松愉快的心情学习。《汇编语言:基于linux环境(第3版)》适合刚涉足linux环境下汇编语言的读者,也可作为相关技术人员的参考书。