本书是知名度颇高的Linux入门书《鸟哥的Linux私房菜基础学习篇》的新版,全面而详细地介绍了Linux操作系统。 全书分为五部分:*部分着重说明计算机的基础知识、Linux的学习方法,如何规划和安装Linux主机以及CentOS 7.x的安装、登录与求助方法;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理、磁盘配额、高级文件系统管理、计划任务以及进程管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。 本书内容丰富全面,基本概念的讲解非常细致,深入浅出。各种功能和命令的介绍,都配以大量的实例操
你已经具备了Linux基础,想进一步学习服务器架设吗?还想了解如何维护和管理你的服务器吗?《鸟哥的Linux私房菜 服务器架设篇(第三版修订)》是你最佳的选择。 目前有关Linux架设的书籍大多只教读者如何架设服务器,很少涉及服务器的维护、管理以及遇到问题时的应对策略。结果是,一旦服务器遭受攻击,人们就会手忙脚乱。因此,作者首先从系统基础和网络基础开始讲解,然后讨论网络攻击和防火墙保护主机,最后才介绍服务器的架设。 《鸟哥的Linux私房菜:第三版修订. 服务器架设篇》共分为四篇:第一篇是服务器搭建前的进修专区,主要介绍架设服务器之前必须具备的基本知识。阅读完这一篇后,无论你使用何种方式连接Internet,都不会有问题;第二篇是主机的简易安全防护措施,鸟哥会告诉你如何保护你的主机,养成良好的操作习惯,使你的主机免受
本书共13章,操作系统部分涉及内存管理、进程管理、文件系统、同步管理,以及系统调用。SoC(即片上系统)部分涉及SoC启动的过程、设备模型、设备树原理、电源模块、时钟模块、引脚模块、时间模块和中断模块,这些模块都是芯片运行的基本要求。作者站在一线开发者的角度先剖析了Kernel 6.6的实现原理,然后结合恩智浦i.MX9芯片的SoC 硬件原理,由浅入深地讲解了操作系统和SoC 的深层原理。 本书适合互联网开发从业人员、芯片开发相关人员阅读,也适合计算机及相关专业的在校学生作为专业参考书阅读。
这是一本关于Linux命令行与shell脚本编程的系统性教程,主要包括四大部分 :Linux命令行、shell脚本编程基础、高级shell脚本编程,以及创建和管理实用的脚本。本书这一版针对Linux系统的新特性进行了更新,不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。通过本书的学习,你能轻松写出自己的shell脚本。 本书适合Linux系统管理员及相关开发人员阅读。
《Yocto项目实战教程》是一本系统化讲解Yocto项目核心技术的专业教程。全书从基础概念到高级应用,详细剖析了Yocto项目体系架构,包括Linux系统架构解析、OpenEmbedded构建系统原理、元数据组织架构、BitBake构建引擎工作机制、Poky参考系统的核心组件等关键技术。特别针对嵌入式开发实践需求,深入讲解了内核菜谱定制、BSP层开发、交叉编译工具链构建、SDK集成开发等实战内容。书中提供了丰富的开发案例,涵盖从QEMU模拟器、树莓派到NXP i.MX系列工业级平台的实际应用,通过循序渐进的教学方式,帮助读者快速掌握Yocto项目的开发方法与技巧。本书内容翔实、案例典型,既适合嵌入式Linux开发工程师作为工作参考手册,也可作为高校嵌入式系统课程的专业教材,同时还能满足技术爱好者自学Yocto项目的需求。
本书讲解了Linux驱动开发的基础知识以及所用到的开发环境,全书分为22章,其内容涵盖了各种Linux子系统,包含内存管理、PWM、RTC、IIO和IRQ管理等,还讲解了直接内存访问和网络设备驱动程序的实用方法。在学完本书之后,读者将掌握设备驱动开发环境的概念,并可以从零开始为任何硬件设备编写驱动程序。 阅读本书需要具备基本的C语言程序设计能力,且熟悉Linux基本命令。本书主要是为嵌入式工程师、Linux系统管理员、开发人员和内核黑客而设计的。无论是软件开发人员,还是系统架构师或制造商,只要愿意深入研究Linux驱动程序开发,阅读本书后都将有所收获。
随着半导体技术和芯片技术的飞速发展,能运行嵌入式 Linux系统的 MPU 芯片价格也在不断降低,ARM 架构 的芯片在手机、工业控制、物联网、自动驾驶等领域得到了广泛应用。以前大量使用 MCU 的地方也开始使用嵌入式 Linux地系铁统刷。卡的闸机、汽车充电桩的操作面板、物联网网关等都有嵌入式 Linux的身影,各企业对嵌入式 Linux开发 人才的需求也急剧增加。相比单片机开发,嵌入式 Linux开发难度要大很多。尤其是重要的驱动开发,嵌入式 Linux内核采用面向对象思路设计,且已开发大量驱动框架,开发人员需要掌握这些驱动框架的使用,编写出符合嵌 入式 Linux要求的驱动。 本书从基本的点灯程序到网络驱动的编写,涵盖了 Linux开发的三大驱动类型:字符设备驱动、块设备驱动 和网络设备驱动。本书的一大特色就是涵盖了全设备树开发,除了开始的几个为了讲解嵌入式 Linux如何操作
《精通嵌入式Linux编程》详细阐述了与嵌入式Linux开发相关的基本解决方案,主要包括初识嵌入式Linux开发、关于工具链、引导加载程序详解、配置和构建内核、构建根文件系统、选择构建系统、使用Yocto进行开发、Yocto技术内幕、创建存储策略、现场更新软件、连接设备驱动程序、使用分线板进行原型设计、init程序、使用BusyBox runit启动、管理电源、打包Python程序、了解进程和线程、管理内存、使用GDB进行调试、性能分析和跟踪、实时编程等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。
用读一本小说的心态来阅读本书,你会对整个操作系统的体系结构和逻辑细节有非常清晰的认识,从此爱上并阅读更多的操作系统源码。第1部分:进入内核前的苦力活。覆盖从开机到运行到Linux中的main函数的关键流程解析,帮你清晰认识Intel CPU的体系结构。第2部分: 大战 前期的初始化工作。讲述main中的各种初始化函数,这些函数是操作系统各个模块的交互桥梁,为理解后续操作系统各个模块的运作原理打好基础。第3部分:一个新进程的诞生。讲述从内核态切换至用户态,并建立起第一个用户进程的全部过程。学完这部分,你将会理解一个多进程的操作系统是如何建立和运作的。第4部分:shell程序的到来。主要讨论如何将磁盘中存储的shell程序加载到内存中来,并最终交给CPU去执行。通过这个过程你会看清一个程序从存储到硬盘到最终被执行的全部过程。第5部分
《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涉及的知识点很多,对初学者的基础要求高,在知识储备的广度和深度上都对学习者提出了很高 的要求。大多数转型嵌入式 Linux开发的朋友都是以前从事单片机开发工作的工程师,因此如何从单片机开发工 程师转型为嵌入式 Linux开发工程师,这个过程非常重要。 单片机 工 程 师 大 多 数 都 是 在 Windows环 境 下 工 作,使 用 集 成 IDE 编 写 并 编 译 代 码,然 后 在 IDE 上 通 过 DownLoad按钮一键下载代码到单片机中。至于集成IDE是怎么组织源文件,又是怎么编译的并不清楚。 本书就以单片机工程熟悉的 裸机 开发为例,讲解如何在 Ubuntu下搭建开发环境,如何使用 VScode编写程 序,如何使用 make工具编译源码。通过这些操作,大家就可以对集成式IDE与开源开发环境有很清晰的认识。当 掌握了开发方式以后,剩下的就是通过大量的裸机案例来加深对I.MX6ULL 这颗芯片的认识,了解各
《Linux高性能网络详解:从DPDK、RDMA到XDP》主要介绍了DPDK、RDMA和XDP三种高性能网络技术的原理、使用方法和实现方案。 《Linux高性能网络详解:从DPDK、RDMA到XDP》总计26章,分为四大部分。第1部分介绍了计算机网络、计算机硬件和Linux操作系统的基础知识,以及软件和硬件之间传递信息的方式、以内核协议栈为基础的网络方案和Corundum。第2部分介绍了DPDK的入门知识、DPDK的内存管理、UIO/DPDK的基本使用方法、测试和分析高性能网卡,以及如何为Corundum编写DPDK驱动程序。第3部分包括RDMA技术简介、软件架构、基本元素、基本操作类型及其配套机制、传输服务类型、应用程序执行流程、主要元素的实现、数据传输、RoCEv2网卡的配置、性能测试工具等内容。第4部分包括XDP简介、XDP教程代码分析、简单的XDP性能测试、如何让网卡驱动程序支持XDP功能等内容。 《Linux高性能网
《高性能Linux网络编程核心技术揭秘》没有从基本的网络编程知识讲起,而是着眼于当前业界主流的Linux高性能网络编程框架,并以实战案例的形式将相关知识展现出来。本书详细讲解高性能Linux网络编程的常用框架,包括Linux网络自带的基本I/O模型epoll、Intel公司的DPDK、高性能服务器Nginx、高性能事件库libevent,并配套全部示例源码。 本书共分10章,内容包括高性能网络编程概述、Linux基础和网络、搭建Linux网络开发环境、网络服务器设计、基于libevent 的FTP服务器、基于epoll的高并发聊天服务器、高性能服务器Nginx架构解析、DPDK开发环境的搭建、DPDK应用案例实战、基于P2P架构的高性能游戏服务器。 本书既适合Linux高性能网络编程初学者、高性能网络服务器开发人员、高并发游戏服务器开发人员等阅读,也适合作为高等院校计算机网络与通信、计算机网络技术等相关专
Linux是目前最流行的操作系统之一,而Ubuntu是众多Linux发行版中的佼佼者。它以开源、稳定和广泛的社区支持等特点,被广泛用于桌面系统、服务器和二次开发的生产环境。《Ubuntu Linux系统管理与运维实战》使用Ubuntu 22.04 LTS版本,通过由浅入深、循序渐进的方式讲解Ubuntu系统管理与运维技能。 《Ubuntu Linux系统管理与运维实战》共分13章,内容包括了解Ubuntu、安装Ubuntu、桌面环境、文件系统基础知识、文件和目录管理、用户和权限管理、系统启动和关闭、服务和进程管理、软件包管理、磁盘和文件系统管理、高级网络管理、网络服务管理以及系统安全。 《Ubuntu Linux系统管理与运维实战》内容精练、重点突出、实例丰富,适合Linux初学者、运维人员、应用开发人员、网络管理人员和应用部署人员作为参考书。《Ubuntu Linux系统管理与运维实战》也可作为高等院校或高职高
本书为Linux之父林纳斯 托瓦兹的自传。书中以林纳斯 托瓦兹对人生和社会走向的独特理解(生存、社会秩序、娱乐)为线索,在讲述林纳斯 托瓦兹成长经历的同时,阐述他对技术、自由、信息共享以及创造激情的体会与感悟,以及黑客精神与商业现实之间的冲突的深入思考,描绘出了以 自由与激情 为主导价值和内在驱动的黑客人生信仰模式,是了解林纳斯成功之路与人生哲学,以及Linux操作系统幕后故事的佳作。 本书适合计算机相关从业者阅读,也作为对Linux系统、黑客精神感兴趣的读者的参考资料。
系统编程是指编写系统软件,其代码在底层运行,直接跟内核和核心系统库对话。 《Linux系统编程(第 2版)》是一本关于Linux系统编程的教程,也是一本介绍Linux系统编程的手册,还是一本如何实现更优雅更快代码的内幕指南。全书分为11章和2个附录,详细介绍了Linux系统编程基本概念、文件I/O、缓冲I/O、高 级文件I/O、进程管理、高 级进程管理、线程、文件和目录管理、信号和时间等主题。附录给出了gcc和GNU C提供的很多语言扩展,以及推荐阅读的相关书目。 《Linux系统编程(第 2版)》的作者是Linux内核专业人士,多本技术图书的作者。《Linux系统编程(第 2版)》需要在C编程和Linux编程环境下工作的程序员阅读,对于想要巩固基础或了解内核的高 级编程人员,《Linux系统编程(第 2版)》也很有参考价值。
本书是获得大量读者好评的 Linux典藏大系 中的《Linux网络编程》第3版。《Linux网络编程》第1、2版出版后得到了大量读者的好评,曾经多次印刷并得到了ChinaUnix技术社区的推荐。《Linux网络编程(第3版)》全面、系统、深入地介绍Linux网络编程的相关知识,涉及面很广,从编程工具和环境搭建,到高级技术和核心原理,再到项目实战,几乎涵盖Linux网络编程的所有重要知识点。《Linux网络编程(第3版)》提供教学视频、思维导图、教学PPT和习题参考答案等超值配套资料,可以帮助读者高效、直观地学习。 《Linux网络编程(第3版)》共20章,分为4篇。第1篇 Linux网络开发基础知识 ,涵盖Linux操作系统概述、Linux编程环境、文件系统概述,以及程序、进程和线程等相关知识;第2篇 Linux用户层网络编程 ,涵盖TCP/IP族概述、应用层网络服务程序概述、TCP网络编程基础知识、服
本书基于ARM Cortex-A8 内核的三星 S5PV210 CPU,主要讲解 ARM CPU 开发的全套相关技术,包括ARM体系的背景知识、常规开发方式、ARM 体系结构和汇编指令集。本书还基于 X210 开发板讲解了开发板的原理图、芯片的数据手册,以及开发板的刷机流程等,讲解了 GPIO、LED、DDR、串口、定时器、看门狗、SD 卡、NAND Flash、iNAND、I2C 总线、LCD 屏、A/D 转换器、电阻式和电容式触摸屏等 ARM CPU 常见外设的原 理,并使用汇编和 C 语言编程进行了外设及代码重定位、时钟体系等的原理和功能的编程实践。本书最后还利用X210 平台结合部分外设写了一个裸机串口的 Shell 作为小项目,帮助读者理解什么是交互式 Shell,为下一阶段U-Boot 及 Linux 内核的学习打好基础。在具体讲解过程中,本书引用了产品的一部分原始英文图表,并有针对性地进行了适当的说明。 本书适合从事 CPU 开发等相关工作
Linux如此的流行正是得益于它的特性丰富并有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。 同其他O'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的TCP/IP经验是有用的,但初学者通过本书仍然可以学习到协议本身和大量的应用信息。一旦彻底掌握了这些网络工具,你就可以使用本书所附的代码,准确地指出Linux内核中重要的部分如何工作。 网络功能的实现或破坏在不同的时候是由不同的代码块完成的,这正是理解网络和实现它的难点中的一部分。本书的成功之一就是描述这些代码块如何集成,以及众多的函数和数据结构之间的关系。《深入理解Linux网络内幕》不仅描述了Linux
本书是获得大量读者好评的 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操作、进程控制、进程间的通信
《RHCSA/RHCE8红帽Linux认证学习教程》从零基础开始讲解,系统介绍了RHCE8的相关知识,以帮助读者快速了解及熟练掌握RHCE8的相关操作,是一本高品质的RHCE认证的学习书籍。 《RHCSA/RHCE8红帽Linux认证学习教程》分为9篇,共35章。第1篇主要介绍基本配置;第2篇主要介绍用户及权限管理;第3篇主要介绍网络相关配置;第4篇主要介绍存储管理;第5篇主要介绍系统管理;第6篇主要介绍软件管理;第7篇主要介绍安全管理;第8篇主要介绍容器管理;第9篇主要介绍自动化管理工具ansible的使用。 《RHCSA/RHCE8红帽Linux认证学习教程》适用于希望通过RHCE(红帽认证工程师)考试的读者学习,也可以作为培训班的教材使用。
本书结合大量实验程序和图表,通俗易懂地介绍了Linux操作系统的运行原理和硬件的基础知识,涉及进程管理、进程调度器、内存管理、存储层次、文件系统和外部存储器等。实验程序使用C语言和Python编写,读者可亲自动手运行程序,来确认系统的行为。另外,以图解的方式介绍各知识点,简明且直观,能够帮助读者加深理解。读者只需对Linux基本命令有所了解,即可轻松阅读。 本书适合应用程序开发人员、系统设计师、运维管理人员和技术支持人员等人士阅读。
《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篇 系