这是一本关于如何设计更整洁、更高效的软件架构的全面、实用性指南,阐述了软件架构师的角色和目标,软件架构设计的核心原则,如何为Web、数据库、客户端、控制台和嵌入式应用程序设计最佳的高级结构。全书分为六部分,涵盖了设计和架构、编程范式(结构化编程、面向对象编程、函数式编程)、设计原则(单一职责原则、开闭原则、里氏替换原则、接口隔离原则)、组件原则(重定位技术、组件内聚、组件耦合)、架构(独立性、划分边界、边界剖析、分层和边界、整洁架构、整洁嵌入式架构),以及实现细节和案例研究。本书是软件架构师、系统分析师、系统设计师、软件经理以及执行他人设计的程序员的之作。
本书是享誉全球的Python入门书,影响了 过250万读者。全书分两 分:第 分介绍用Python编程所 须了解的基本概念, 括强大的Python库和工具,以及列表、字典、if语句、类、文件和异常、代码测试等内容;第二 分将理论付诸实践,讲解如何开发三个项目, 括简单的2D游戏、利用数据生成交互式的信息图以及 建和定制简单的Web应用,并帮助读者解决常见编程问题和困惑。第3版进行了全面修订:使用了文本编辑器VS Code,新增了介绍removeprefix()方法和removesuffix()方法的内容,并且在项目中利用了Matplotlib和Plotly的 新 性,等等。
全书共五篇,以从易到难的顺序详细剖析了Linux内核开发的核心技术。“知识储备篇”介绍了Linux的数据结构、中断处理、内核同步和时间计算等内容,这些是理解后续章节的前提;之后通过“内存管理篇”“文件系统篇”“进程管理篇”详细介绍了Linux的三大核心模块;最后的“综合应用篇”则融合了前面诸多模块知识展示了Linux内核开发在操作系统、智能设备、驱动、通信、芯片、云计算和人工智能等热点领域的应用。书中的重点、难点均配有图表、代码和实战案例,力求直观、清晰。 学习本书的读者需要熟悉C语言,建议对Linux内核有一定了解。推荐初学者按照本书的编排顺序阅读,而熟悉Linux内核的读者可以跳过知识储备篇,直接从三大核心模块篇进行阅读。 本书深入浅出、配图丰富,可作为Linux初中级读者系统学习Linux内核开发的指导手册,也可作为从事嵌入
内容简介 这是一本从架构视角讲解如何构建大型分布式系统的著作,是超级畅销书《深入理解Java虚拟机》的作者周志明多年架构和研发经验的总结,得到了多位行业资深架构专家的联袂推荐。 全书共16章,分为演进中的架构、架构师的视角、分布式的基石、不可变基础设施和技术方法论五部分。 第1部分 演进中的架构(第1章) 着重介绍了软件开发历史中多种主流架构风格出现的契机、解决的问题以及带来的新缺陷。 第二部分 架构师的视角(第2~5章) 总结了一名架构师应该在架构设计时思考哪些问题,有哪些主流的解决方案和行业标准做法,各种方案有什么优缺点,不同的解决方法会带来什么不同的影响,等等。 第三部分 分布式的基石(第6~10章) 重点讨论了 不同架构风格是应该在技术规范上统一,还是由应用系统自行解决 这个问题,给出了解决思路、方法
这本书专门为那些对自然语言处理技术感兴趣的读者提供了系统的LLM应用开发指南。全书分为11章,从LLM基础知识开始,通过LangChain这个开源框架为读者解读整个LLM应用开发流程。第1~2章概述LLM技术的发展背景和LangChain框架的设计理念。从第3章开始,分章深入介绍LangChain的6大模块,包括模型I/O、数据增强、链、记忆等,通过大量代码示例让读者了解其原理和用法。第9章通过构建PDF问答程序,帮助读者将之前学习的知识应用于实践。第10章则介绍集成,可拓宽LangChain的用途。第11章为初学者简要解析LLM的基础理论,如Transformer模型等。本书以LangChain这个让人熟悉的框架为主线,引导读者一步一步掌握LLM应用开发流程,适合对大语言模型感兴趣的开发者、AI应用程序开发者阅读。
本书讲解了Linux驱动开发的基础知识以及所用到的开发环境,全书分为22章,其内容涵盖了各种Linux子系统,包含内存管理、PWM、RTC、IIO和IRQ管理等,还讲解了直接内存访问和网络设备驱动程序的实用方法。在学完本书之后,读者将掌握设备驱动开发环境的概念,并可以从零开始为任何硬件设备编写驱动程序。 阅读本书需要具备基本的C语言程序设计能力,且熟悉Linux基本命令。本书主要是为嵌入式工程师、Linux系统管理员、开发人员和内核黑客而设计的。无论是软件开发人员,还是系统架构师或制造商,只要愿意深入研究Linux驱动程序开发,阅读本书后都将有所收获。
nbsp nbsp《架构基础:从需求到架构》根据各种企业级真实场景总结,提出合理的设计思路和解决方案,从需求、问题、解决方案、原理、设计方法、落地方案多个角度,给出架构设计方法。 《架构基础:从需求到架构》主要内容包括大型互联网架构设计的四大原则、分布式微服务架构设计、登录功能架构设计、用户安全架构设计、系统日志架构设计、系统攻防架构设计、系统消息架构设计、监控预警架构设计、关系型大数据架构设计、批处理调度架构设计、系统配置架构设计、企业级核心架构设计实战等,详细讲解了各种场景的架构方案。 《架构基础:从需求到架构》与任何编程语言无关,目的是提升读者的设计思维、培养读者的设计能力、开启读者的架构思维。同时,《架构基础:从需求到架构》也是一本设计方案指南,开发人员、设计人员、架构人员均可参
用读一本小说的心态来阅读本书,你会对整个操作系统的体系结构和逻辑细节有非常清晰的认识,从此爱上并阅读更多的操作系统源码。第1部分:进入内核前的苦力活。覆盖从开机到运行到Linux中的main函数的关键流程解析,帮你清晰认识Intel CPU的体系结构。第2部分: 大战 前期的初始化工作。讲述main中的各种初始化函数,这些函数是操作系统各个模块的交互桥梁,为理解后续操作系统各个模块的运作原理打好基础。第3部分:一个新进程的诞生。讲述从内核态切换至用户态,并建立起第一个用户进程的全部过程。学完这部分,你将会理解一个多进程的操作系统是如何建立和运作的。第4部分:shell程序的到来。主要讨论如何将磁盘中存储的shell程序加载到内存中来,并最终交给CPU去执行。通过这个过程你会看清一个程序从存储到硬盘到最终被执行的全部过程。第5部分
本书是面向操作系统导论课程的经典书籍,从第1版至今被国内外众多高校选作教材。全书共九个部分,相较于上一版增加了三个部分,并且优化了各章的编排顺序。本书不仅详细讲解进程管理、内存管理、存储管理、保护与安全等概念,而且涵盖重要的理论结果和案例研究,并且给出了供读者深入学习的推荐读物。这一版在移动操作系统、多核系统、虚拟化和NVM外存等方面做了大幅更新,每一章都融入了新的技术进展,并且更新了习题和编程项目。本书既适合高等院校计算机相关专业的学生学习,也是专业技术人员的有益参考。
本书由知名编译与操作系统专家海纳撰写,将沉淀20余年的Linux系统研究所得倾注书中。本书用不到1万行代码复现了Linux 0.12内核,打通了 古早 工具链障碍,模块实现环环相扣,带你穿透 迷雾 ,窥见Linux系统设计的绚丽 天光 。 本书共8章,从逻辑上分为四部分。第一部分(第1和2章)是基础知识,介绍开发内核所需的基础知识,包括开发环境和调试环境的搭建,以及i386保护模式等。第二部分(第3~6章)是核心模块,逐步实现进程、中断、系统调用、内存管理、字符设备驱动和块设备驱动等模块。第三部分(第7章)是文件系统,涵盖Minix文件系统、管理inode、管理普通文件、管理目录、文件链接、执行程序等内容。第四部分(第8章)是系统服务接口,介绍一些重要的函数,这部分不是内核的主要部分,但为了让shell程序正确地运行,这些函数也是必须实现的。
《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)
这是一本从实战角度介绍FastAPI web开发的入门与进阶型技术书。本书没有过多的理论介绍,完全从一线工作角度入手,介绍日常web开发需要掌握的相关知识。本书共分为4篇16章: 第1篇是基础篇,主要介绍FastAPI的基础知识,包括FastAPI的基本信息、安装使用、常规操作、中间件、数据库相关内容。作为初学者,掌握这部分内容就可以快速上手使用FastAPI,处理各种日常问题。 第二篇是进阶篇,主要围绕与FastAPI相关的高级技能展开,包括异常处理、功能扩展、安全认证、性能、测试等相关内容。 第三篇是实战篇,主要从案例的角度对FastAPI在典型应用场景中的落地进行分享,包括短链应用、websocket、基于公众号的挂号系统等应用场景。 第四篇是部署篇,这部分重点介绍如何实现FastAPI的自动化部署,这数据高阶人员技能。本篇提供了三种自动化部署方式。
本书以新版的华为网络技术职业认证 HCIA-Datacom(考试代码为H12-811)为基础,以 eNSP 模拟器为仿真平台,从行业的实际出发组织全部内容,全书共 19 章,主要内容包括 eNSP 的安装和使用,华为 VRP 系统,IP 地址的配置,静态路由,OSPF,交换机的基本配置,VLAN、Trunk 和 Hybrid,STP,实现 VLAN 间的通信,Eth-Trunk,ACL 的原理与配置,AAA 的原理与配置,NAT,网络服务与应用,WLAN,广域网技术,网络管理与运维,IPv6,网络编程与自动化。 本书既可以作为华为 ICT 学院的配套实验教材,用来增强学生的实际动手能力,也可以作为计算机网络相关专业的实验指导书,还可以作为相关企业的培训教材,同时对于从事网络管理和运维的技术人员来说,也是一本很实用的技术参书。
内容简介这是一本能指导零计算机基础的读者轻松理解计算机软硬件和操作系统工作原理,从而自己动手从0到1编写出一个操作系统的著作。作者在操作系统领域深度耕耘20余载,不仅一直奋斗在百度等企业一线,而且一直致力于操作系统的教育和布道,希望能帮助和指导越来越多的人,尤其是青少年,能从学生时代开始学习操作系统,能从底层原理真正理解操作系统,改变我国基础软件受制于人的现状。本书不仅是作者悟透操作系统本质、厚积薄发的成果,而且是他将复杂的操作系统原理化繁为简、举重若轻,成功指导自己9岁的孩子从0到1编写出一个操作系统的过程的全面复盘和复现。本书驱散了操作系统的迷雾,让操作系统不再神秘和高不可攀,让每一个怀揣操作系统梦的中国人都能理解并实现自己的操作系统。全书一共14章,逻辑上分为上下两篇。上篇(第1~5
《ADS信号完整性仿真与实战 第2版》主要是以ADS软件为依托,结合信号完整性和电源完整性的基础理论以及实际案例,完整地介绍了使用ADS进行信号完整性以及电源完整性仿真的流程和方法,最终以实际的案例呈现给读者,具体内容包括信号完整性基本概念、ADS基本概念及使用、PCB材料和层叠设计、传输线及端接、过孔及过孔仿真、串扰案例、S参数及其仿真应用、IBIS与SPICE模型、HDMI仿真、DDR4/DDR5仿真、高速串行总线仿真、PCB板级仿真SIPro、PCB板级仿真PIPro等。 《ADS信号完整性仿真与实战 第2版》内容翔实,深入浅出,结合实际案例的应用进行讲解,实用性强,非常适合作为信号完整性以及ADS仿真入门教程,也可以作为资深仿真工程师的工具书,还可以作为大学电子、电路、通信、电磁场等专业的教学实验教材。
由人力资源和社会保障部职业技能鉴定中心在全国统一组织实施的全国计算机信息高新技术考试是面向广大社会劳动者举办的计算机职业技能考试,考试采用国际通行的专项职业技能鉴定方式,测定应试者的计算机应用操作能力,以适应社会发展和科技进步的需要。 《微型计算机安装调试与维修Core及Athlon CPU,WindowsXP/Vista/7试题汇编(微机系统维修员级)》包含了全国计算机信息高新技术微型计算机安装调试与维修微机系统维修员级考试的全部试题,经国家职业技能鉴定专家委员会计算机专业委员会审定,考生考试时所做题目将从中*抽取。本书既可供正式考试使用,也可供考生考前练习之用,是参加全国计算机信息高新技术考试微型计算机安装调试与维修微机系统维修员级考试的考生人手一册的技术资料。《微型计算机安装调试与维修Core及AthlonCPU,WindowsX
通告: 本书第11页,第六行链接已经失效,替换为: http://pan.baidu.com/s/1cFrl2e 密码:ezs2 本书介绍了Linux设备驱动开发理论、框架与实例,详细说明了自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和I/O映射以及异步通知、阻塞I/O、非阻塞I/O等Linux设备驱动理论,以及字符设备、块设备、tty设备、I2c设备、LCD设备、音频设备、USB设备、网络设备、PCI设备等Linux设备驱动架构中各个复杂数据结构和函数的关系,并讲解了Linux驱动开发的大量实例,使读者能够独立开发各类Linux设备驱动。
业务架构是跨系统的业务蓝图,应用架构、数据架构、技术架构是解决方案的不同方面。多年来,业界已在业务架构、应用架构、数据架构、技术架构方面积累了大量经验。近几年,数字化转型更是呼唤 懂行人 打通四种架构,确保技术支撑业务、业务支撑战略。本书的主要内容即在于此。首先,解读战略、业务架构、应用架构、数据架构、技术架构五者的对应岗位、产物、脉络关系。然后,结合大案例,详探下列实战法: 战略驱动的业务架构设计; 业务驱动的应用架构设计; 业务驱动的数据架构设计; 业务和技术趋势双轮驱动的技术架构设计。再后,分享业界较为稀缺的《业务架构书》《技术方案书》优秀模板。后,分享ToG/ToB解决方案规划方法体系。
本书由浅入深、循序渐进地讲解Windows 11的使用方法,以及一些高级的管理和应用技巧,以便读者能够更加深入地使用Windows 11。 本书以Windows 11的相关管理任务为主线,内容由浅入深,包括体验全新的Windows 11,拥有属于自己的Windows 11,Windows 11的基本设置,打造属于自己的Windows 11,文件与文件夹的高效设置,精通Windows 11文件系统,Windows 11软硬件管理,Windows 11多媒体管理与应用,Windows 11共享与远程操作,认识Microsoft Edge浏览器,体验精彩的Windows 11云,Hyper-V虚拟化,让Windows 11 飞 起来,Windows 11的系统重置、备份与还原,Windows 11故障解决方案等。 本书适合计算机初学者、计算机办公人员学习参考,对计算机管理员来说也有一定的参考价值。
本书基于Windows 10和Windows Server 2016编写,深入解析Windows操作系统的系统架构、进程、线程、内存管理等知识,旨在帮助读者了解Windows 10和Windows Server 2016操作系统内部工作原理,使之在针对Windows平台开发应用程序时,可以更好地理解不同设计机制间的关系。 本书先介绍Windows的基本概念和工具以及Windows的架构和主要组件,然后详细介绍进程和作业、内存管理、I/O系统等内容,*后介绍Windows内置的安全机制以及用于阻止滥用的各种缓解措施。 本书辅以大量实验,并给出了具体步骤,可供读者自行尝试,让他们通过内核调试器、Sysinternals工具和专为本书内容开发的其他工具一窥Windows的工作原理,进而能够将这些知识应用于改进应用程序设计、调试以及系统性能和支持。 本书适合希望了解Windows 10和Windows Server 2016操作系统内部工作原理的开发者、系统管理员及安全研
在Windows系统中没有什么比内核更强大了,但是如何编写内核驱动程序来利用这种强大能力呢?这本书为读者描述如何编写Windows系统的软件内核驱动程序。这些驱动程序不涉及硬件,而是处理系统本身:进程、线程、模块、注册表等等。内核代码可用于监视重要事件,防止在需要时发生某些事件。读者可以通过编写各种过滤器来拦截驱动程序中感兴趣的调用。
操作系统目前已成为我国 卡脖子 的关键技术之一,这对操作系统的教材建设提出了新的要求。首先,教材需要体现操作系统的核心原理与设计,帮助读者构筑系统性的认识;其次,教材需要反映国际研究前沿,帮助读者开拓新思路;*后,教材需要反映工业界实践,不可陷入纸上谈兵的陷阱。 作为操作系统教材的新尝试,本书融合了作者的教学经验与工业实践经验,以三个 面向 为导向,即面向经典基础理论与方法,面向国际前沿研究,面向*新工业界实践,深入浅出地介绍操作系统的理论、架构、设计方法与具体实现。本书将原理与实现解耦,从具体问题导出抽象概念,然后分析实现方法。全书内容以ARM架构为主,x86架构为辅;以微内核架构为主,同时兼顾宏内核与外核等架构。 除纸质版教材外,本书还配有网络章节、在线社区和课程实验。与本书配套的微内