本书是将计算机软件和硬件理论结合讲述的经典教程,内容覆盖计算机导论、体系结构和处理器设计等多门课程。本书的 优点是为程序员描述计算机系统的实现细节,通过描述程序是如何映射到系统上,以及程序是如何执行的,使读者更好地理解程序的行为为什么是这样的,以及造成效率低下的原因。
本书是知名度颇高的Linux入门书《鸟哥的Linux私房菜基础学习篇》的新版,全面而详细地介绍了Linux操作系统。 全书分为五部分:*部分着重说明计算机的基础知识、Linux的学习方法,如何规划和安装Linux主机以及CentOS 7.x的安装、登录与求助方法;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理、磁盘配额、高级文件系统管理、计划任务以及进程管理;第五部分介绍了系统管理员(root)的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。 本书内容丰富全面,基本概念的讲解非常细致,深入浅出。各种功能和命令的介绍,都配以大量的实例操
这是一本关于Linux命令行与shell脚本编程的系统性教程,主要包括四大部分 :Linux命令行、shell脚本编程基础、高级shell脚本编程,以及创建和管理实用的脚本。本书这一版针对Linux系统的新特性进行了更新,不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。通过本书的学习,你能轻松写出自己的shell脚本。 本书适合Linux系统管理员及相关开发人员阅读。
《MATLAB科技绘图与数据分析》结合作者多年的数据分析与科研绘图经验,详细讲解MATLAB在科技图表制作与数据分析中的使用方法与技巧。全书分为3部分,共12章,第1部分(第1~3章)主要讲解MATLAB的基础知识,包括MATLAB的操作环境、文件操作、程序设计等;第2部分(第4~8章)结合MATLAB在数据可视化方面的功能,详细讲解MATLAB中的图窗信息、二维图绘制、三维图绘制、专业图绘制、句柄图形对象等科技绘图方面的知识;第3部分(第9~12章)讲解数据描述性分析、插值与拟合、回归分析、优化问题求解等 内容。《MATLAB科技绘图与数据分析》还配套提供了近300个示例的教学视频与上机练习资源文件,可帮助读者大大提升学习效率。 《MATLAB科技绘图与数据分析》注重实操,示例丰富,图表精美,适合从事数据可视化与数据分析的科研工程技术人员、工程师,以及高校相
你已经具备了Linux基础,想进一步学习服务器架设吗?还想了解如何维护和管理你的服务器吗?《鸟哥的Linux私房菜 服务器架设篇(第三版修订)》是你最佳的选择。 目前有关Linux架设的书籍大多只教读者如何架设服务器,很少涉及服务器的维护、管理以及遇到问题时的应对策略。结果是,一旦服务器遭受攻击,人们就会手忙脚乱。因此,作者首先从系统基础和网络基础开始讲解,然后讨论网络攻击和防火墙保护主机,最后才介绍服务器的架设。 《鸟哥的Linux私房菜:第三版修订. 服务器架设篇》共分为四篇:第一篇是服务器搭建前的进修专区,主要介绍架设服务器之前必须具备的基本知识。阅读完这一篇后,无论你使用何种方式连接Internet,都不会有问题;第二篇是主机的简易安全防护措施,鸟哥会告诉你如何保护你的主机,养成良好的操作习惯,使你的主机免受
内容简介 这是一本从架构视角讲解如何构建大型分布式系统的著作,是超级畅销书《深入理解Java虚拟机》的作者周志明多年架构和研发经验的总结,得到了多位行业资深架构专家的联袂推荐。 全书共16章,分为演进中的架构、架构师的视角、分布式的基石、不可变基础设施和技术方法论五部分。 第1部分 演进中的架构(第1章) 着重介绍了软件开发历史中多种主流架构风格出现的契机、解决的问题以及带来的新缺陷。 第二部分 架构师的视角(第2~5章) 总结了一名架构师应该在架构设计时思考哪些问题,有哪些主流的解决方案和行业标准做法,各种方案有什么优缺点,不同的解决方法会带来什么不同的影响,等等。 第三部分 分布式的基石(第6~10章) 重点讨论了 不同架构风格是应该在技术规范上统一,还是由应用系统自行解决 这个问题,给出了解决思路、方法
本书剖析了Windows核心组件行为方式的 内部原理 ,主要内容包括服务设备驱动程序和应用程序的系统机制(ALPC、对象管理器、同步、WNF、WoW64 和处理器执行模型)、底层硬件架构(陷阱处理、分段和侧信道漏洞)、 Windows 虚拟化技术(包括基于虚拟化的安全、如何防范操作系统漏洞),以及操作系统为进行管理、配置和诊断所实现的底层机制细节,缓存管理器和文件系统驱动程序如何交互以提供对文件、目录和磁盘的可靠支持等。
本书共15章,主要内容如下。第1章:主要介绍Revit在BIM中的应用及相关的功能介绍和基础操作。第2章:主要主要介绍标高轴网的创建,为建模做铺垫。第3章:主要介绍墙于门窗模型创建基础知识。第4章:主要介绍墙构件中的幕墙,并对其进行深入讲解。第5章:主要介绍楼板天花板模型的创建。第6章:主要介绍屋顶模型的创建。第7章:主要介绍基础及柱梁的创建。第8章:主要介绍楼梯坡道的创建。第9章:主要介绍栏杆的创建。第10章:主要介绍族模型的创建。第11章:主要介绍体量与场地模型的创建。第12章:主要介绍房间面积与洞口绘制。
《Frida Android SO逆向深入实践》主要介绍使用Frida辅助分析SO进行逆向工程项目开发。首先从基础开始介绍NDK编译套件,开发编译包含SO的应用软件并进行动静态分析调试;接着介绍如何将算法移植到SO中保护App,并使用模拟执行框架加载SO运行算法,使用GDB、HyperPwn、Objection、Frida联合调试SO中的算法;此外,还将介绍ARM/ELF的文件格式和反编译工具IDA,Frida/Jnitrace Hook/Invoke JNI,JNI与反射及简单风控案例设计分析,onCreate的Native化,分析Android源码追踪JNI的绑定流程。最后介绍哈希和对称加解密算法的核心原理与实现细节,以及使用Frida辅助逆向分析的工作流程。 《Frida Android SO逆向深入实践》按照由易到难、由浅入深的方式进行讲解,适合Native层的初、中级读者阅读。
本书讲解了Linux驱动开发的基础知识以及所用到的开发环境,全书分为22章,其内容涵盖了各种Linux子系统,包含内存管理、PWM、RTC、IIO和IRQ管理等,还讲解了直接内存访问和网络设备驱动程序的实用方法。在学完本书之后,读者将掌握设备驱动开发环境的概念,并可以从零开始为任何硬件设备编写驱动程序。 阅读本书需要具备基本的C语言程序设计能力,且熟悉Linux基本命令。本书主要是为嵌入式工程师、Linux系统管理员、开发人员和内核黑客而设计的。无论是软件开发人员,还是系统架构师或制造商,只要愿意深入研究Linux驱动程序开发,阅读本书后都将有所收获。
随着半导体技术和芯片技术的飞速发展,能运行嵌入式 Linux系统的 MPU 芯片价格也在不断降低,ARM 架构 的芯片在手机、工业控制、物联网、自动驾驶等领域得到了广泛应用。以前大量使用 MCU 的地方也开始使用嵌入式 Linux地系铁统刷。卡的闸机、汽车充电桩的操作面板、物联网网关等都有嵌入式 Linux的身影,各企业对嵌入式 Linux开发 人才的需求也急剧增加。相比单片机开发,嵌入式 Linux开发难度要大很多。尤其是重要的驱动开发,嵌入式 Linux内核采用面向对象思路设计,且已开发大量驱动框架,开发人员需要掌握这些驱动框架的使用,编写出符合嵌 入式 Linux要求的驱动。 本书从基本的点灯程序到网络驱动的编写,涵盖了 Linux开发的三大驱动类型:字符设备驱动、块设备驱动 和网络设备驱动。本书的一大特色就是涵盖了全设备树开发,除了开始的几个为了讲解嵌入式 Linux如何操作
Linux C/C 编程在Linux应用程序开发中占有重要的地位,掌握这项技术将在就业竞争中立于不败之地。《Linux C与C 一线开发实践》内容针对初中级读者,贴近软件公司一线开发实践。全书厚达620多页,知识点丰富,内容翔实,并配套示例源码、作者QQ群答疑服务。 《Linux C与C 一线开发实践》共分为16章,内容包括Linux概述、搭建开发环境、C 语言基础、Linux文件编程、多进程编程、进程间通信、C Web编程、多线程基本编程、多线程高级编程、Linux下的库、TCP/IP基础、套接字基础、TCP套接字网络编程、UDP套接字网络编程、原始套接字网络编程,以及并发聊天服务器项目实战等。 《Linux C与C 一线开发实践》适合想全面学习Linux环境下C/C 语言编程的读者,既可作为初中级开发人员的案头查阅与参考手册,也适合作为高等院校或高职高专相关课程的教学参考书。
本书重点介绍了鸿蒙操作系统的设计背景、设计理念和设计原则,同时对鸿蒙操作系统的整体架构、关键子系统的技术架构和主要设计思路进行了详细的解析。第1章~第3章对鸿蒙操作系统进行整体概述,重点介绍操作系统的发展和鸿蒙操作系统诞生的技术背景、试图解决的主要技术问题,同时介绍了鸿蒙操作系统的设计理念、主要技术特征,以及部件化架构原理解析。第4章~第16章介绍关键子系统,分门别类地阐述鸿蒙操作系统关键子系统的技术架构和主要设计思路,包括统一内核、驱动子系统、分布式技术、方舟编译运行时子系统、UI框架、图形子系统、多媒体子系统、安全子系统、DFX框架和文件管理的架构设计思路。 本书适合对操作系统感兴趣的开发者、鸿蒙操作系统生态的参与者、相关领域的研究人员,以及相关专业的高校师生阅读和学习。
嵌入式 Linux涉及的知识点很多,对初学者的基础要求高,在知识储备的广度和深度上都对学习者提出了很高 的要求。大多数转型嵌入式 Linux开发的朋友都是以前从事单片机开发工作的工程师,因此如何从单片机开发工 程师转型为嵌入式 Linux开发工程师,这个过程非常重要。 单片机 工 程 师 大 多 数 都 是 在 Windows环 境 下 工 作,使 用 集 成 IDE 编 写 并 编 译 代 码,然 后 在 IDE 上 通 过 DownLoad按钮一键下载代码到单片机中。至于集成IDE是怎么组织源文件,又是怎么编译的并不清楚。 本书就以单片机工程熟悉的 裸机 开发为例,讲解如何在 Ubuntu下搭建开发环境,如何使用 VScode编写程 序,如何使用 make工具编译源码。通过这些操作,大家就可以对集成式IDE与开源开发环境有很清晰的认识。当 掌握了开发方式以后,剩下的就是通过大量的裸机案例来加深对I.MX6ULL 这颗芯片的认识,了解各
本书是获得大量读者好评的 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操作系统上的用户态编程是通过系统调用提供的接口,将原本需要在Linux内核中或者对Linux内核进行多次系统调用才能实现的功能,放到内核之外来实现,从而保证内核的稳定性,获得更强的可拓展性,并且可以将Linux内核的传染性开源协议隔离。 全书共分9章,第1、2章从用户态与内核态的基本概念入手,简要介绍C语言标准库编程以及各种C语言标准库。第3章深入介绍系统调用的概念和计算机架构、特权级与硬件资源访问限制的关系,以及内核中系统调用的处理方式。第4章涵盖了系统调用与C语言标准库的关系,介绍如何基于Linux系统调用实现C语言标准库。第5章深入介绍了Linux系统用户态驱动API的使用和分析,包括Userspace I/O (UIO)接口的使用和VFIO等用户态驱动接口的使用。第6~9章涵盖了高性能网卡Linux用户态驱动分析、用户态文件系统FUSE分析、用户态线程——协程
本书是获得大量读者好评的 Linux典藏大系 中的《Linux驱动开发入门与实战》(第3版)。《Linux驱动开发入门与实战(第3版)》内容充实,重点突出,实例丰富,实用性强,涵盖Linux驱动开发从基础知识到核心原理,再到应用实例的大部分核心知识。本书专门提供教学视频、源代码、思维导图、习题参考答案和教学PPT等超值配套资料,可以帮助读者高效、直观地学习。 《Linux驱动开发入门与实战(第3版)》共19章,分为3篇。第1篇 基础知识 涵盖Linux驱动开发概述、嵌入式处理器和开发板、构建嵌入式驱动程序开发环境、构建嵌入式Linux操作系统、构建第一个驱动程序、简单的字符设备驱动程序等内容;第2篇 核心技术 涵盖设备驱动的并发控制、设备驱动的阻塞和同步机制、中断与时钟机制、内外存访问等内容;第3篇 应用实战 涵盖设备驱动模型、RTC实时时钟驱动程序
本书对Linux命令行进行详细的介绍,全书内容包括4个部分,*部分由Shell的介绍开启命令行基础知识的学习之旅;第二部分讲述配置文件的编辑,如何通过命令行控制计算机;第三部分探讨常见的任务与工具;第四部分全面介绍Shell编程,读者可通过动手编写Shell脚本掌握Linux命令的应用,从而实现常见计算任务的自动化。通过阅读本书,读者将对Linux命令有更加深入的理解,并且可以将其应用到实际的工作中。 本书适合Linux初学人员、Linux系统管理人员及Linux爱好者阅读。
本书是获得大量读者好评的 Linux典藏大系 中的《Linux系统管理与网络管理》的第3版。《Linux系统管理与网络管理(第3版)》第1、2版出版后获得了读者的高度评价,曾经多次印刷。第3版以当前流行的Red Hat Enterprise Linux 9.1版本为基础,全面、系统、由浅入深、循序渐进地介绍从Linux系统管理到各种网络服务器配置所涉及的核心知识。《Linux系统管理与网络管理(第3版)》提供教学视频、思维导图和教学PPT等超值配套资料,帮助读者高效、直观地学习。 《Linux系统管理与网络管理(第3版)》共26章,分为3篇。第1篇 基础知识 ,涵盖的内容有Linux系统简介、Linux系统安装、图形桌面系统管理、命令行界面等;第2篇 系统管理 ,涵盖的内容有Linux系统启动过程、用户和用户组管理、磁盘分区管理、文件系统管理、软件包管理、进程管理、网络管理、系统监控、Shell编程、Linux
《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服务器架设指南》(第2版)的升级版。本书以Red Hat Enterprise Linux 9为例,结合大量实例详细介绍各种网络服务的安装、运行和配置等相关知识。《Linux服务器架设实战》提供配套教学视频、思维导图和教学PPT等超值配套资料,帮助读者高效、直观地学习。 《Linux服务器架设实战》共21章,分为3篇。第1篇 架站基础知识 ,涵盖的主要内容有网络硬件基础知识、Linux服务器架设规划、Linux系统安装、Linux系统管理与优化、Linux网络接口配置、Linux网络管理与故障诊断。第2篇 Linux主机与网络安全 ,涵盖的主要内容有Linux主机安全、Linux系统日志、Linux路由配置、Linux防火墙配置、Snort入侵检测系统。第3篇 Linux常见服务器架设 ,涵盖的主要内容有SSH、VNC、DHCP、DNS、Web、MySQL、Postfix、NFS、Samba、Squid、LDAP和NTP
《精通嵌入式Linux编程》详细阐述了与嵌入式Linux开发相关的基本解决方案,主要包括初识嵌入式Linux开发、关于工具链、引导加载程序详解、配置和构建内核、构建根文件系统、选择构建系统、使用Yocto进行开发、Yocto技术内幕、创建存储策略、现场更新软件、连接设备驱动程序、使用分线板进行原型设计、init程序、使用BusyBox runit启动、管理电源、打包Python程序、了解进程和线程、管理内存、使用GDB进行调试、性能分析和跟踪、实时编程等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。
本书是获得大量读者好评的 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网络编程基础知识、服