本书共13章,操作系统部分涉及内存管理、进程管理、文件系统、同步管理,以及系统调用。SoC(即片上系统)部分涉及SoC启动的过程、设备模型、设备树原理、电源模块、时钟模块、引脚模块、时间模块和中断模块,这些模块都是芯片运行的基本要求。作者站在一线开发者的角度先剖析了Kernel 6.6的实现原理,然后结合恩智浦i.MX9芯片的SoC 硬件原理,由浅入深地讲解了操作系统和SoC 的深层原理。 本书适合互联网开发从业人员、芯片开发相关人员阅读,也适合计算机及相关专业的在校学生作为专业参考书阅读。
《Yocto项目实战教程》是一本系统化讲解Yocto项目核心技术的专业教程。全书从基础概念到高级应用,详细剖析了Yocto项目体系架构,包括Linux系统架构解析、OpenEmbedded构建系统原理、元数据组织架构、BitBake构建引擎工作机制、Poky参考系统的核心组件等关键技术。特别针对嵌入式开发实践需求,深入讲解了内核菜谱定制、BSP层开发、交叉编译工具链构建、SDK集成开发等实战内容。书中提供了丰富的开发案例,涵盖从QEMU模拟器、树莓派到NXP i.MX系列工业级平台的实际应用,通过循序渐进的教学方式,帮助读者快速掌握Yocto项目的开发方法与技巧。本书内容翔实、案例典型,既适合嵌入式Linux开发工程师作为工作参考手册,也可作为高校嵌入式系统课程的专业教材,同时还能满足技术爱好者自学Yocto项目的需求。
用读一本小说的心态来阅读本书,你会对整个操作系统的体系结构和逻辑细节有非常清晰的认识,从此爱上并阅读更多的操作系统源码。第1部分:进入内核前的苦力活。覆盖从开机到运行到Linux中的main函数的关键流程解析,帮你清晰认识Intel CPU的体系结构。第2部分: 大战 前期的初始化工作。讲述main中的各种初始化函数,这些函数是操作系统各个模块的交互桥梁,为理解后续操作系统各个模块的运作原理打好基础。第3部分:一个新进程的诞生。讲述从内核态切换至用户态,并建立起第一个用户进程的全部过程。学完这部分,你将会理解一个多进程的操作系统是如何建立和运作的。第4部分:shell程序的到来。主要讨论如何将磁盘中存储的shell程序加载到内存中来,并最终交给CPU去执行。通过这个过程你会看清一个程序从存储到硬盘到最终被执行的全部过程。第5部分
国内大部分的开发者和公司都从事的是应用层的开发,平时大家更多关注的是应用层的开发技术。但应用层是建立在CPU和内存等硬件、操作系统内核、语言运行时的基础之上的。如果缺乏对这些底层知识的理解,驾驭技术的能力就无法精进,也很难开发出高性能、高稳定性的应用。 本书主要包括CPU和内存硬件、进程创建和调度原理、虚拟内存底层机制、Go 用户态协程实现、容器cgroup资源限制,以及throttle、CPU利用率和负载等性能指标统计原理等内容,最后过渡到性能优化手段,带领大家修炼底层内功,掌握高性能原理。
本书以使用面较广的Linux发行版—Ubuntu为平台,采用22.04LTS版本,通过翔实的内容、简练的语言、丰富的案例,逐一对Linux操作系统的基础知识和标准操作进行讲解。全书共8章,从Linux
《基于ARM架构的嵌入式系统开发——以Linux系统为例》围绕嵌入式系统的组成,从硬件和软件两个方面对嵌入式系统进行全面深入的介绍,着重讲述嵌入式系统的操作系统移植、系统编程和驱动开发等内容,并加入大量编程实例和开发流程以帮助读者快速掌握相关知识,*后简要介绍嵌入式系统发展趋势和未来研究重点。
《深入理解Linux网络: 修炼底层内功,掌握高性能原理》通过先抛出一些开发、运维等技术人员在工作中经常遇见的问题,激发读者的思考。从这些问题出发,深入地对网络底层实现原理进行拆解,带领读者看清楚问题的核心,理解其背后的技术本质,提高大家的技术功力。例如网络包是如何被接收和发送的?阻塞到底在内部是如何发生的?epoll的底层工作原理又是啥?TCP连接在底层上是如何支持和实现的?书中对这些内容都有深度的阐述。本书旨在通过带领读者修炼底层内功,进而帮助大家深度掌握网络高性能原理。
本书是获得了大量读者好评的“Linux典藏大系”中的Shell分册。Shell脚本程序具有简洁、高效的特点,多年以来,Bash Shell成为系统管理员和Linux程序员解决实际问题的得力工具。本书结合大量的实例,向读者详细介绍了这一工具的使用方法。本书附带1张光盘,内容为本书配套多媒体教学视频及实例源程序及其他学习资料。 本书共15章,分为3篇。涵盖的主要内容包括Shell编程基础、Shell编程环境的搭建、Shell变量、条件测试和判断语句、循环结构、函数、数组、正则表达式、基本文本处理、流编辑、awk工具、文件操作、子Shell与进程处理、Shell脚本调试技术等,并在本书的第15章中给出了2个具体的综合实例。 本书结构清晰,易教易学,实例丰富,可操作性强,对易混淆和实用性强的内容进行了重点提示和讲解。因此,本书非常适合Linux系统管理和开发的相关人员阅读,也
本书针对使用Linux构建嵌入式系统的一个关键环节——图形用户界面(GUI),首先讲述了Linux编程的不错技巧,包括多进程、多线程等技术;然后通过实例重点讲述了窗口系统的基本知识与实现技巧,为读者开发自己的面向嵌入式Linux的GUI环境提供了一个参考实现范例。重点包括:LGUI多窗口的设计与实现、LGUI的消息管理、窗口与无效区的管理、设备上下文与图形设备接口的设计与实现等。 本书适用于使用Linux构建嵌入式系统的软件工程师以及希望深入了解窗口系统实现原理的读者。
Linux C/C++编程在Linux应用程序开发中占有重要的地位,掌握这项技能将在就业竞争中立于不败之地。本书是一本针对初、中级读者的、贴近软件公司一线开发实践的书。 本书共分为19章,内容包括Linux概述、搭建开发环境、语言基础、文件编程、多进程编程、进程间通信、Web编程、多线程编程、Linux下的库、TCP/IP协议基础、网络编程、网络性能测试工具iPerf简析、版本控制和SVN工具、C++跨平台开发以及安全编程等。 本书适合想全面学习Linux环境下C/C++语言编程的读者,并可作为初中级开发人员的案头查阅与参考手册,也适合作为高等院校和培训学校相关专业师生的教学参考书。
《Kali Linux无线网络渗透测试详解》基于Kali Linux操作系统,由浅入深,全面而系统地介绍了无线网络渗透技术。《Kali Linux无线网络渗透测试详解》针对不同的加密方式的工作原理及存在的漏洞进行了详细介绍,并根据每种加密方式存在的漏洞介绍了实施渗透测试的方法。另外,《Kali Linux无线网络渗透测试详解》很后还特意介绍了针对每种加密方法漏洞的应对措施。《Kali Linux无线网络渗透测试详解》共10章,分为3篇。靠前篇为基础篇,涵盖的主要内容有搭建渗透测试环境和WiFi网络的构成。第2篇为无线数据篇,涵盖的主要内容有监听WiFi网络、捕获数据包、分析数据包和获取信息。第3篇为无线网络加密篇,涵盖的主要内容有WPS加密模式、WEP加密模式、WPA加密模式和WPA+RADIUS加密模式。